Сообщение от Данил
pax, добавь в аську, я тебя немного по достаю.
|
Эм, ты у меня в контактах.
По порядку:
1. Каждый объект сцены имеет компонент Transform, который отвечает за ориентацию объекта в пространстве.
2. Получить компонент Transform в скрипте можно следующими способами:
- просто свойство transform
- тоже самое this.transform
- GetComponent<Transform>()
3. Vector3 - это набор из трех координат (x,y,z). Используется для описания положения, направления или вращения (по каждой из осей).
4. Вектора можно складывать, вычитать:
Vector3 pos1 = new Vector3(1,2,3);
Vector3 pos2 = new Vector3(3,2,1);
Vector3 pos3 = pos1 + pos2; // (4,4,4)
5. В общем Vector3 этот вектор, который проходят в школе. Можно выполнять такие операции как скалярное произведение, векторное произведение, умножение вектора на число, длина вектора (расстояние между двумя точками можно определить как (pos2 - pos1).magnitude или Vector3.Distance(pos1,pos2))
6. Кватернионы это боле сложная структоура - комплексный вектор. О них просто надо думать как о вращении.
7. trnasform.rotation - вращение объекта заданное кватернионом.
8. transform.eulerAngles - вращение заданное вектором в градусах.
9. transform.position - глобальная позиция
10. transform.rotation - глобальное вращение
11. transform.localRotation - локальное вращение
12. transform.localEulerAngles - локальные углы поворота в градусах.
13. transfrom.localPosition - локальная позиция.
14. пользоваться углами Эйлера сложно, т.к. часто они не превышают 180 или 360 градусов и меняются.
15. пользоваться надо кватернионами.
16. Вращать объект так же можно через
transform.Rotate()
17. Перемещать объект можно через
transfrom.Translate()
18. 16 и 17 аналогичны блицевским командам и принимают последним параметром пространство (Space.Self или Space.World). Честно скажу, что ими не пользовался ни разу.
19. transfrom.localScale - масштаб объекта (обычно Vector3(1,1,1)).