У меня есть этот скрипт, который заставляет куб перемещаться и вращаться как плоскость, но я хочу, чтобы он вращался относительно его текущего вращения.
int movementSpeed = 2;
public float rotspeed = 3f;
public Rigidbody force;
void FixedUpdate()
{
force.AddForce (transform.forward * Time.deltaTime * movementSpeed, ForceMode.VelocityChange);
if (Input.GetKey("d"))
{
force.AddTorque(0, rotspeed, 0, ForceMode.VelocityChange);
}
if (Input.GetKey("a"))
{
force.AddTorque(0, rotspeed*-1, 0, ForceMode.VelocityChange);
}
if (Input.GetKey("w"))
{
force.AddTorque(rotspeed, 0, 0, ForceMode.VelocityChange);
}
if (Input.GetKey("s"))
{
force.AddTorque(rotspeed * -1 , 0, 0, ForceMode.VelocityChange);
}
}
Если бы я повернул свою плоскость вверх, и затем нажмите «a» или «d», я бы хотел повернуть его только влево или вправо, но вместо этого он пытается повернуть, как если бы я был в вертикальном положении.