I am new to unity and VR. I have been using google cardboard SDK to create VR apps in unity and am stuck at gazetimer. I want to trigger an action only if the user looks at any object for 3secs but have not been able to do so. Please help
how to add gaze input timer to trigger an action after gazing for 3secs?
5.6k views Asked by sayal adhikari At
2
There are 2 answers
0
On
Please see a similar question and answer here Use Gaze Input duration to select UI text in Google Cardboard
In summary, create a script to time the gaze, by cumulatively adding Time.deltaTime
on each frame when the object is gazed at. When gaze time hits a pre-specified duration, trigger the button's OnClick
event.
On the object, activate the script's gaze timing functions using event triggers Pointer Enter
and Pointer Exit
. See screenshot:
VR Camera usually contains a main camera and eye cameras (right and left). Since Main camera's center point will always be the center of the eyes of the user's point of view, you could use
Raycast
from itstransform.position
to itstransform.forward
and check whether it hits your object. Then simply add a timer which will call the action after it reaches the duration you have set.For example:
Hope you get the idea.