我有2个AI游戏对象,它们都是胶囊。考虑到第一个胶囊AI命名为X而第二个胶囊AI命名为Y,我试图让Y离开X(逃离他),而X追逐Y(跟随他)。我不知道该怎么做,我很感激方向。
我试着去做这里所写的内容,但即使他们有胶囊对撞机,他们都穿过墙壁,我试图这样做:
http://forum.unity3d.com/threads/getting-objects-to-move-away-from-my-users-gameobject.142468/
但它们只向一个方向移动并穿过墙壁。
Vector3 position = transform.position;
Vector3 targetPosition = target.transform.position;
Vector3 direction = position - targetPosition;
transform.position += direction * 2.0f * Time.deltaTime;`
答案 0 :(得分:1)
您正在使用transform.Translate移动它们。移动变换意味着“无论环境如何,都将对象置于给定位置”。如果您希望它们进行交互,您需要使用CharacterController组件及其方法或刚体组件并强制移动它。