2016-02-24 2 views
0

У меня есть большой слайдер в Unity, который управляет текущей позицией анимированной модели.Как остановить движение камеры при взаимодействии с пользовательским интерфейсом в единстве?

Когда я перетаскиваю ползунок, потому что он реагирует на щелчок и перетаскивание правой кнопки мыши, он также перемещает камеру.

Как остановить это, поэтому при перетаскивании элементов пользовательского интерфейса он не мешает работе с камерой?

Большое спасибо

+0

Вы столкнулись с самой большой болью в заднице в Единстве. это самый большой F-up от Unity ... и это что-то говорит. Кроме того, пожалуйста, «проголосуйте» за мой ответ на другой странице, поскольку у него не так много голосов, что дает мне слезы! также обратите внимание на ссылку, содержащуюся в видеоуроке «BoredMormon». Ожидайте потратить несколько дней на освоение этой проблемы. возможно, воспользуйся моим «быстрым грязным» решением, чтобы сначала начать тебя, но он не всегда работает. извините за печальные новости – Fattie

+0

ah great, я с нетерпением жду этого. –

+0

Мне было интересно, не мог ли я получить его так, чтобы когда-либо он знал, что ползунок перетаскивается, он просто отключает сценарий камеры, чтобы он двигался? –

ответ

0

Там есть относительно простое решение для этого;

if(!EventSystem.current.IsPointerOverGameObject()) 
    ... 

Это возвращает true, когда курсор мыши находится над элементом пользовательского интерфейса, и, следовательно, если вы включите выше, если заявление в контроллере камеры, прежде чем это логическое движение/вращение, только ползунок будет двигаться.

Надеюсь, это вам помогло.

Смежные вопросы