Блог программиста
Математика Unity (Урок 17): Quaternion.
19.12.2017Математика Unity

Кватернионы используются для представления вращений.
В Unity все вращения представлены в виде кватернионов. Их использование решает проблему "шарнирного замка" (gimbal lock).

Вникать во внутреннее устройство кватернионов нам нет нужды, мы можем просто их использовать :)
И для начала разберемся как получить кватернион из привычных векторов и углов.

Читать далее...
Кастомизация редактора Unity. Пользовательские атрибуты
25.07.2017Кастомизация редактора

В прошлом уроке мы рассмотрели проверку вводимых данных через скрипт пользовательского редактора.
Но этот скрипт для одного конкретного компонента.
А если у нас много компонентов, для которых нужны однотипные проверки?
Для этого создаются атрибуты.

Читать далее...
Кастомизация редактора Unity. Проверка данных в редакторе
12.06.2017Кастомизация редактора

В прошлой статье мы рассмотрели проверку вводимых данных через свойства класса.
Но в случае с публичными свойствами, значения переменных можно изменить из любого класса, а это не всегда хорошо.
Чтобы этого избежать, можно сделать свойства приватными или убрать вовсе, но в этом случае и редактор потеряет к ним доступ и посыплет ошибками.

Читать далее...
Кастомизация редактора Unity. Проверка данных через свойства
12.05.2017Кастомизация редактора

Все вводимые в инспекторе данные надо проверять на корректность.
И Unity это делает. В частности проверяет тип вводимых данных с типом переменной, которой они будут присвоены.
Например в поле типа int нельзя ввести текст или десятичное число.
А если нам нужны дополнительные проверки?

Читать далее...
Кастомизация редактора Unity. Атрибуты
31.03.2017Кастомизация редактора

Кастомизация испектора в Unity.
В этой статье мы рассмотрим самый простой способ кастомизации инспектора - атрибуты.

Читать далее...
Математика Unity (Урок 16). Vector Переменные.
03.10.2013Математика Unity

Компоненты

Значение компонентов вектора можно получить двумя способами.
Первый способ — через переменные компонентов.
Пример:
Vector3 v = new Vector3(1, 2, 3);
//Получаем значение компонента x
float x = v.x;

Читать далее...
Математика Unity (Урок 15). Vector Отражение, расстояние, проекция и угол.
14.09.2013Математика Unity

Отражение

Функция отражения векторов в Unity (C#):
Vector3.Reflect(Vector3 inDirection, Vector3 inNormal)    //Отражение

Данная функция возвращает вектор, значение компонентов которого равны отражению вектора inDirection в плоскости с нормалью inNormal.

Читать далее...
Математика Unity (Урок 14). Vector Умножение.
10.09.2013Математика Unity

Перемножение компонентов

Функция перемножения компонентов векторов в Unity (C#):
Vector[X].Scale(Vector[X] a, Vector[X] b)    //Перемножение компонентов

Читать далее...
Математика Unity (Урок 13). Vector Интерполяции.
08.09.2013Математика Unity

С этого урока будут рассматриваться вектора. Но так как в Unity три класса векторов (Vector2, Vector3, Vector4), условное обозначение «общего» класса: Vector[X].
Т.е. если функция есть не только в одном классе, то буду писать Vector[X].Функция.
В коде «общий» класс использоваться не будет.

Читать далее...
Математика Unity (Урок 12). Mathf Константы.
06.09.2013Математика Unity

Константы

В классе Mathf есть несколько констант:

Число Пи

float Mathf.PI = 3.14159274f;	//Число Пи

Используется для расчёта по формулам с числом Пи.

Читать далее...