##### Какой default у Vector3?
В Unity, Vector3 является структурой, поэтому по умолчанию все его компоненты (x, y, и z) будут равны 0. Таким образом, default(Vector3) или new Vector3() создаст вектор с координатами (0, 0, 0).
##### Создает ли аллокацию: if( someVector3 == default)
В данном случае проверка someVector3 == default не создает аллокации памяти. Сравнение вектора с default(Vector3) (который представляет собой вектор (0, 0, 0)) осуществляется без создания дополнительных объектов в куче.
Операторы сравнения для структур, таких как Vector3, обычно реализованы таким образом, чтобы избегать аллокаций. В случае с Vector3, оператор == сравнивает компоненты x, y и z двух векторов на равенство, что не требует дополнительной аллокации памяти.
##### Почему инициализация Vector3 является очень быстрой операцией, и мне не стоит беспокоиться о ней при проектировании моего приложения?
Инициализация Vector3 является быстрой операцией, потому что Vector3 - это структура, которая содержит только три значения с плавающей точкой (float) - координаты x, y и z. Создание нового объекта Vector3 и инициализация его значений не требует много вычислительных ресурсов или сложных алгоритмов, поэтому эта операция выполняется очень быстро.
В любом случае, инициализация Vector3 является очень быстрой операцией, и вам не стоит беспокоиться о ней при проектировании вашего приложения.