Timed Gazing Part II
CODE
Assets -> GoogleVR -> Scripts-> UI -> GvrReticlePointerImpl.cs
/*這邊只寫出新加入的部分*/
using UnityEngine.UI;
public class GvrReticlePointerImpl : GvrBasePointer {
public GameObject loadBar;
public float gazeTiming = 0;
/*中略*/
public override void OnStart () {
loadBar = GameObject.Find("LoadingBar"); /*這裡的LoadingBar改成image的名字*/
base.OnStart();
}
/*中略*/
public override void OnPointerHover(RaycastResult rayastResult, Ray ray, bool isInteractive) {
if(isInteractive) {
gazeTiming += Time.deltaTime;
loadBar.GetComponent<Image>().fillAmount = gazeTiming / 2; /*gazeTiming = 2(秒)時圓填滿*/
}
SetPointerTarget(rayastResult.worldPosition, isInteractive);
}
public override void OnPointerExit(GameObject previousObject) {
gazeTiming = 0;
if(loadBar) loadBar.GetComponent<Image>().fillAmount = 0F;
/*中略*/
}
}
DEMO
把Fill Amount調回0,看看效果