我的場景中有一個播放器和一個平臺。場景是二維的。
以下是平臺的組件:

以下是播放器的組件:
[
]
要移動播放器 - 我使用SimpleMove()方法:
CharacterController controller;
public float speed = 3.0F;
void Start()
{
controller = GetComponent<CharacterController>();
}
void Update()
{
float movement = Input.GetAxis("Horizontal");
Vector2 movementVector = new Vector2(movement, 0f);
controller.SimpleMove(movementVector * speed);
}
uj5u.com熱心網友回復:
恐怕您要實作的目標不會按預期作業。Character Controller 實際上是為 3D 設計的,你期望它與 2D 碰撞器發生碰撞,這些碰撞器作業方式不同,最重要的是不兼容
Character Controller 為其物件帶來 3D 膠囊對撞機 - 請參閱https://docs.unity3d.com/Manual/class-CharacterController.html
您可以嘗試添加一些 2D 對撞機,并最終將 RigiBody2D 添加到您的物件。角色控制器也適用于不使用物理的情況(碰撞除外),因此如果您的 2D 游戲也是這種情況,那么創建自己的角色控制器也可能是非常直接的選擇
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/405088.html
標籤:
上一篇:生成與地形平行的物體
下一篇:加載新場景時如何保留物件參考
