Unity改变物体的Transform.position无效没有变化(CharacterController)的解决办法

问题:

        用脚本改变一个物体的transform.position,但是物体在场景中的位置并没有变化。(被改动的物体有CharacterController插件)

原因:

        猜测是CharacterController的问题,但是具体原因还没有去深究。。。

解决办法:

        我发现这样改position可以行得通:

target_transform.gameObject.GetComponent<CharacterController>().enabled = false;  //神奇
target_transform.position = spawnPosition;
target_transform.gameObject.GetComponent<CharacterController>().enabled = true;

就是先禁用那个组件改了位置再启用。

我也知道这样不太好。。。

(运行的时候可能会遇到奇怪的bug要注意!)

猜你喜欢

转载自blog.csdn.net/HowToPause/article/details/127851963
今日推荐