我有一个游戏对象,它可以直接向前移动,并可以使用以下功能向左,向右,向上和向下转动:
void moveTowardsPoint(Vector3 targetPoint)
{
//forward movement
var movementSpeed = Time.deltaTime * speed;
transform.position += transform.forward * movementSpeed;
//rotation
Vector3 dir = targetPoint - transform.position;
Quaternion targetRotation = Quaternion.LookRotation(dir);
var turnSpeed = Time.deltaTime * 2f;
transform.rotation = Quaternion.Lerp(transform.rotation, targetRotation, turnSpeed);
}
我想让这个物体向左或向右旋转成比例。要转20°,我也要滚动20°(相对于起始角度的角度)
如果我可以设置滚动限制,它实际上会变得更好,它将使我们说30°,然后滚动15°。
下面是这种行为的俯视图: