[請益] Unity如何使用string指定GameObject

作者: kons (kons)   2020-12-13 03:26:02
假設我想做火球術的特效,所以做了一個火球,設成prefab,
然後施放法術的腳本設了GameObject fireball,然後把火球的prefab拉進去,
當我使用法術的時候,就生成火球。
然而,我每一個法術都有自己的特效,所以希望在放特效時,
可以從法術類別裡的物件找到特效ID or 文字,丟到生成動畫的function,
於是
Instantiate(effectName, transfrom.position, Quaternion.identity);
effectName要生成的物件,一定要填我GameObject的名字,不能填string字串,
但我又不想每個法術寫一個施放的function,
所以,請問該怎麼處理比較好呢?謝謝。
作者: lovecold (小豬頭)   2020-12-13 10:52:00
Resources.Load
作者: oopFoo (3d)   2020-12-13 11:52:00
是這個嗎 Type.getType()
作者: SecondRun (雨夜琴聲)   2020-12-13 12:27:00
Resources要高級點就讀表然後用entity組出來
作者: aegis123321 (PE)   2020-12-13 15:31:00
其實不建議用字串 這樣改名的時候反而害到自己不想用update的話可以了解一下coroutine
作者: kingroy (手殘總比腦殘好)   2020-12-13 16:47:00
如果要物理運算建議都在FixedUpdate裡做把函數統一放在一個update或fixedupdate裡其實是好事執行的先後順序可以控制到
作者: ZooseWu (N5)   2020-12-13 20:19:00
便宜行事就是Resources.Load 不過聽說效能不佳
作者: SecondRun (雨夜琴聲)   2020-12-13 23:02:00
很新手的話可以先不用管效能問題啦XD真的會lag的話應該都是做了什麼不得了的事

Links booklink

Contact Us: admin [ a t ] ucptt.com