刚体和对撞机无法正常工作

问题描述 投票:0回答:0

我正在用“地球引力”的机制制作一条蛇。当我添加一个“幸存者”时,他掉进了这个星球。 -启用了碰撞器 -截图中的CollisionDetection

公开课 SurvivorMovement

public override void MoveToTarget(Rigidbody target)
{
Vector3 direction = target.position- transform.position;
_rigidbody.MovePosition(_rigidbody.position + _multiplier * _speedMovement * Time.deltaTime * direction);
_rigidbody.velocity= Vector3.zero; //prohibit overclocking
}

公共类 ControllerSurvivorMovement

public void Move()
{
for (int i = 1; i < _survivorMovements.Count; i++)
{
Rigidbody preveuPosition = _survivorMovements[i - 1].Rigidbody;
_survivorMovements[i].MoveToTarget(preveuPosition);
}
}

公开课 ArtificialGravityAttractor

public void Attract(Rigidbody bodyAttracted, Transform body)
{
Vector3 normalizePositionBody = NormalizePositionBodyOnAttractor(body);

Vector3 forceGravity = normalizePositionBody * _powerGravity;

bodyAttracted.AddForce(forceGravity);

Quaternion targetRotation = Quaternion.FromToRotation(body.up, normalizePositionBody) * body.rotation;
bodyAttracted.rotation = Quaternion.Slerp(body.rotation, targetRotation, _speedRotation * Time.deltaTime);
}

enter image description here enter image description here

我尝试将 Rigidbody 更改为 Transform,更改锚点,减少重力。

c# unity3d
© www.soinside.com 2019 - 2024. All rights reserved.