一般而言,遊戲專案中要製作一把槍,通常會在槍口處建立一個Empty子物件,取得該物件的Transform,
然後在該處Instantiate子彈預製物件,再利用transform.translate等方法予以子彈位移。
Unity的物件以Z軸為正前方,亦為向量transform.Forward之指向。
然而有天我利用transform.translate使子彈位移時,子彈卻沒有往Z軸方向前進。
寫法亦十分單純:
void Update () { transform.Translate (transform.forward * Time.deltaTime * speed); }
我仍不清楚是何處設置錯誤,不過我嘗試Translate方法的第二個引數,也就是座標系統
void Update () { transform.Translate (transform.forward * Time.deltaTime * speed, Space.World); }
子彈此時卻順利地往Z軸前進了。
沒有留言:
張貼留言