Я работаю над проектом Unity, где мне нужно повернуть объект, используя либо мышь, либо контроллер. Тем не менее, я столкнулся с проблемой: объект продолжает вращаться с мышью, даже когда кнопка левой мыши не нажимается, но только тогда, когда методы ввода мыши и контроллера включены одновременно. < /P>
Вот базовый обзор кода:
вращение мыши: объект должен вращаться при перемещении мыши, но только когда нажата левая кнопка мыши. < Br/> Вращение контроллера: объект также должен вращаться, когда перемещается правая аналоговая палка контроллера.
Проблема:
Объект вращается непреднамеренно с мышью, когда активные методы ввода мыши и контроллера. < /li>
Объект должен вращаться только с Мышь, когда нажата кнопка левой мыши.private void Update()
{
if (!isInspecting || objectInspect == null) return;
RotateWithController();
RotateObject();
}
private void RotateObject()
{
if (Input.GetMouseButton(0))
{
Vector2 mouseDelta = Mouse.current.delta.ReadValue();
if (mouseDelta != Vector2.zero)
{
objectInspect.transform.Rotate(new Vector3(-mouseDelta.y, mouseDelta.x, 0) * Time.deltaTime * rotationSpeed, Space.World);
}
}
}
private void RotateWithController()
{
Vector2 rotationInput = rotateItem.ReadValue();
if (rotationInput != Vector2.zero)
{
objectInspect.transform.Rotate(new Vector3(-rotationInput.y, rotationInput.x, 0) * Time.deltaTime * rotationSpeed * 8f, Space.World);
}
}
Подробнее здесь: https://stackoverflow.com/questions/794 ... tive-unity
Объект продолжает вращаться с мышью, даже если код для вращения не является активным единством ⇐ C#
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Объект продолжает вращаться с мышью, даже если код для вращения не является активным единством
Anonymous » » в форуме C# - 0 Ответы
- 13 Просмотры
-
Последнее сообщение Anonymous
-