Тема: MonkeyBehaviour
Показать сообщение отдельно
Старый 19.08.2016, 15:36   #9
Жека
Дэвелопер
 
Регистрация: 04.09.2005
Адрес: Красноярск
Сообщений: 1,376
Написано 491 полезных сообщений
(для 886 пользователей)
Ответ: MonkeyBehaviour

К знатокам юнити и прочих движков.

Как лучше считать глобальную позицию и масштаб объектов?

Например, хочу сделать свойства localPosition и position.
Local возвращает просто вектор, а не-local делает проход по всем родителям и вычисляет позицию с учётом родительских позиций, масштабов, поворотов.

Так обычно делают или нет?

UPD: второй вариант - пересчитывать трансформы дочерних элементов при изменении свойств в родителе.
Для манки проблематично юзать такой подход, т.к. здесь все структуры - это классы, и нельзя запретить
изменение переменных внутри структуры.
То есть:

Если в юнити написать
transform.position.x = 200;
мы получим ошибку при компиляции.
За счёт этого можно перехватывать назначение переменной transform.position (а не поля "x" в структуре Vector) - и делать необходимые пересчёты.
В манки так сделать нельзя из-за ограничений языка.

Надо глянуть в сторону продвинутого Monkey2.

Последний раз редактировалось Жека, 20.08.2016 в 09:46.
(Offline)
 
Ответить с цитированием