private IEnumerator UpdatePosition(GameObject item) { Camera fpsCamera = CameraManager.GetPovCameras.First(); Renderer itemRenderer = item.GetComponent <Renderer>(); while (isUpdate) { Bounds itemBounds = itemRenderer.bounds; Vector3 itemNDCMin = fpsCamera.WorldToViewportPoint(itemBounds.min); Vector3 itemNDCMax = fpsCamera.WorldToViewportPoint(itemBounds.max); float left = Mathf.Min(itemNDCMin.x, itemNDCMax.x); float right = Mathf.Max(itemNDCMin.x, itemNDCMax.x); float bottom = Mathf.Min(itemNDCMin.y, itemNDCMax.y); float top = Mathf.Max(itemNDCMin.y, itemNDCMax.y); float x = GetCoordWithBound(left, right, fpsCamera.pixelWidth, DescriptionInputField.GetComponent <RectTransform>().rect.width); float y = GetCoordWithBound(bottom, top, fpsCamera.pixelHeight, 0); Root.transform.position = new Vector3(x, y, 0); yield return(null); } }
public IMN18CPage DescriptionOfMinorWork(string description) { DescriptionInputField.Clear(); DescriptionInputField.SendKeys(description); return(this); }