我在Unity中创建了一个简单的射击游戏,我想更改播放器(FPSController)的位置。我只能在Prefab中更改位置,但这对我没有用。 如果我在调用“ InstantiatePlayer()”之类的函数来尝试更改位置时,播放器将在0.1秒后传送回原来的位置。
public void InstantiatePlayer()
{
GameObject temp = Instantiate(PlayingplayerPref);
temp.transform.position = new Vector3(31, 6, 7);
}
答案 0 :(得分:1)
vgro的解决方案还可以,但是与其创建一个新的四元数,不如使用Quaternion.identity,在这里并没有太大的区别,但这是一个好习惯
答案 1 :(得分:0)
您可以在实例化时指定位置。
Instantiate(Object PlayingplayerPref, Vector3 position, Quaternion rotation);
如果您不想指定旋转度,只需将四元数设置为(0,0,0,0),这样您就可以了
Instantiate(PlayingplayerPref, position, new Quaternion(0,0,0,0);
希望这会有所帮助:)