2016-06-10 2 views
0

В настоящее время я работаю над проектом Unity VR, и у меня есть проблема с функциями просмотра. В качестве примера я буду использовать объект Google VR DemoScene с именем Cube. Существует телепорт скрипт с приложением некоторого взора кода в конце:Unity 3D Google Cardboard (VR) gaze функции без EventTrigger

public void OnGazeEnter() { 
    SetGazedAt(true); 
    } 

    public void OnGazeExit() { 
    SetGazedAt(false); 
    } 

    public void OnGazeTrigger() { 
    TeleportRandomly(); 
    } 

Однако этот фрагмент кажется бесполезным и все смотреть события обрабатываются компонентом EventTrigger прикрепленным к объекту Cube.

Мой вопрос: как вы справляетесь с событиями просмотра (OnGazeEnter, OnGazeExit, OnGazeTrigger) только с этим кодом? Было бы проще не добавлять компонент EventTrigger все время.

+0

Вчера я написал о трех типах Raycasts здесь. Он должен помочь вам: http://answers.unity3d.com/answers/1200449/view.html С другой стороны, мне интересно, что произойдет, если вы удалите этот код, который вы считаете бесполезным. Я имею в виду, может быть, компилятор даст вам некоторые предупреждения или советы по ошибкам. – chelder

ответ

0

Они не бесполезны, просто не очень хорошо документированы способы их использования. Мне потребовалось некоторое время, чтобы понять, как это сделать.

Если вы хотите использовать их, то вам нужно удалить компонент EvenTrigger, затем выберите главную камеру и добавьте компонент под названием «GVRGaze», и теперь эти события запускаются с помощью кода (OnGazeEnter, OnGazeExit, OnGazeTrigger)

Вы можете использовать маску для фильтрации слоев, если хотите, это очень полезно.

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

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