void Start() { for (int i = 0; i < lookDownElements.Length; i++) { LookDownElement el = lookDownElements[i]; Color c = el.text.color; c.a = el.currentAlpha * currentMenuAlpha; el.text.color = c; el.initialScale = el.iconTransform.localScale; el.iconTransform.localScale = el.initialScale + 0.2f * el.currentAlpha * el.initialScale; Color col = el.plane.material.color; col.a = currentMenuAlpha; el.plane.material.color = col; } menu = GetComponent <FixedMenu>(); }
void Start() { menu = GetComponent <FixedMenu>(); vrHead = GameObject.Find("Player").transform.Find("Head"); for (int i = 0; i < lookDownElements.Length; i++) { LookDownElement el = lookDownElements[i]; Color c = el.text.color; c.a = el.currentAlpha * currentMenuAlpha; el.text.color = c; el.initialScale = el.iconTransform.localScale; el.iconTransform.localScale = el.initialScale + 0.2f * el.currentAlpha * el.initialScale; Color col = el.plane.material.color; col.a = currentMenuAlpha; el.plane.material.color = col; } }
void Update() { if (vrHead.rotation.eulerAngles.x > 22 && vrHead.rotation.eulerAngles.x < 90) { targetMenuAlpha = 1; } else { targetMenuAlpha = 0; } bool updateAll = false; if (currentMenuAlpha != targetMenuAlpha) { float menuSpringSpeed = 0.2f; if (targetMenuAlpha < currentMenuAlpha) { menuSpringSpeed = 0.1f; } currentMenuAlpha = Smoothing.SpringSmooth(currentMenuAlpha, targetMenuAlpha, ref alphaMenuSpeed, menuSpringSpeed, Time.deltaTime); if (Mathf.Abs(currentMenuAlpha - targetMenuAlpha) < 0.005f) { currentMenuAlpha = targetMenuAlpha; } updateAll = true; } if (currentMenuAlpha == 0) { menu.Reset(); } for (int i = 0; i < lookDownElements.Length; i++) { LookDownElement el = lookDownElements[i]; // TODO: add the check for if el's target (to be implemented) is the reticle's target if (el.target.IsTarget) { el.targetAlpha = 1; } else { el.targetAlpha = 0; } if (el.currentAlpha != el.targetAlpha || updateAll) { float springSpeed = 0.2f; if (el.targetAlpha < el.currentAlpha) { springSpeed = 0.1f; } // gradual change in alpha for the fading effect el.currentAlpha = Smoothing.SpringSmooth(el.currentAlpha, el.targetAlpha, ref el.alphaSpeed, springSpeed, Time.deltaTime); // if current is basically the target alpha, just set it to the target if (Mathf.Abs(el.currentAlpha - el.targetAlpha) < 0.005f) { el.currentAlpha = el.targetAlpha; } // text mesh's colour Color c = el.text.color; c.a = el.currentAlpha * currentMenuAlpha; el.text.color = c; // scale icon and translate text up el.iconTransform.localScale = el.initialScale + 0.2f * el.currentAlpha * el.initialScale; el.textTransform.localPosition = el.currentAlpha * el.endTextPosition + (1 - el.currentAlpha) * el.initialTextPosition; } // makes icon show when you look down Color col = el.plane.material.color; col.a = currentMenuAlpha; el.plane.material.color = col; } }
void Update() { if (VRInput.Instance != null) { if (VRInput.Instance.Pitch < -15) { if (Toaster.Instance != null) { Toaster.Instance.ClearToast(); } } if (VRInput.Instance.Pitch < -22) { targetMenuAlpha = 1; if (Toaster.Instance != null) { Toaster.Instance.ClearToast(); } } else { targetMenuAlpha = 0; } } bool updateAll = false; if (currentMenuAlpha != targetMenuAlpha) { float menuSpringSpeed = 0.2f; if (targetMenuAlpha < currentMenuAlpha) { menuSpringSpeed = 0.1f; } currentMenuAlpha = Smoothing.SpringSmooth(currentMenuAlpha, targetMenuAlpha, ref alphaMenuSpeed, menuSpringSpeed, Time.deltaTime); if (Mathf.Abs(currentMenuAlpha - targetMenuAlpha) < 0.005f) { currentMenuAlpha = targetMenuAlpha; } updateAll = true; } if (currentMenuAlpha == 0) { menu.Reset(); } for (int i = 0; i < lookDownElements.Length; i++) { LookDownElement el = lookDownElements[i]; if (el.target.IsTarget) { el.targetAlpha = 1; } else { el.targetAlpha = 0; } if (el.currentAlpha != el.targetAlpha || updateAll) { float springSpeed = 0.2f; if (el.targetAlpha < el.currentAlpha) { springSpeed = 0.1f; } el.currentAlpha = Smoothing.SpringSmooth(el.currentAlpha, el.targetAlpha, ref el.alphaSpeed, springSpeed, Time.deltaTime); if (Mathf.Abs(el.currentAlpha - el.targetAlpha) < 0.005f) { el.currentAlpha = el.targetAlpha; } Color c = el.text.color; c.a = el.currentAlpha * currentMenuAlpha; el.text.color = c; el.iconTransform.localScale = el.initialScale + 0.2f * el.currentAlpha * el.initialScale; el.textTransform.localPosition = el.currentAlpha * el.endTextPosition + (1 - el.currentAlpha) * el.initialTextPosition; } Color col = el.plane.material.color; col.a = currentMenuAlpha; el.plane.material.color = col; } }