В движок Unity встроен метод ScreenToWorldPoint()
, который координаты точки на экране конвертирует в координаты соответствующей точки на карте(сцене/мире). Есть ли в Unity обратный метод, который координаты точки на карте превращает в координаты точки на экране.
У меню есть метод:
public void ShowHint(Vector2 pos, string typeOfHint)
{
rect.localPosition = pos;//Тут, судя по всему нужный мне метод
}
rect
- это RectTreansform
некой Image
-подсказки, которая должна появляться в месте, где находится объект с координатами pos
(который точно попадает в обзор камеры).
Camera.WorldToScreenPoint
Camera.WorldToViewportPoint
static public Vector2 WorldToCanvasPosition (GameObject obj, Canvas canvas) {
Vector2 ViewPos = Camera.main.WorldToViewportPoint(obj.transform.Position);
ViewPos -= new Vector2(0.5f, 0.5f);
Vector2 CanvasSize = canvas.gameObject.GetComponent<RectTransform>().sizeDelta;
return new Vector2(ViewPos.x*CanvasSize.x, ViewPos.y*CanvasSize.y);
}
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Опыт программирования небольшой, помогите, пожалуйста, разобратьсяИмеется интерфейс IPinHelper с методом PinFavoriteItem:
Стала падать программаВ ней реализовано так: ((Range)worksheet