Форум программистов, компьютерный форум, киберфорум
Unity, Unity3D
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.94/64: Рейтинг темы: голосов - 64, средняя оценка - 4.94
1 / 1 / 1
Регистрация: 11.05.2018
Сообщений: 15

Как работает Transform.forward?

11.05.2018, 22:36. Показов 13136. Ответов 3

Студворк — интернет-сервис помощи студентам
Я знаю как работать с Transform.forward и какой вектор он возвращает, поэтому писать это не нужно!!! Мне интересно именно то, как движок возвращает этот вектор. Какими умножениями косинусов, синусов углов он получает данный вектор?

И если не сложно напишите пожалуйста и про Transform.up и Transform.right.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
11.05.2018, 22:36
Ответы с готовыми решениями:

Unity: Объясните мне, как работает функция transform. Что такое Vector3?
Кто нибудь, Объясните мне как работает функция transform что такое Vector3 и как в 2D игре при нажатии кнопки заставить объект...

HTA+IE6 — не работает history.back(forward,go)
Есть HTA приложение, содержащее фрейм с HTML файлом, при переходе по ссылке на другой файл и проверке там history.length в IE 5 выдает 1, а...

Text-transform: uppercase не работает
Есть <input type="text" placeholder="введите ваше имя" id="name"> В css пишу: #name::first-letter { text-transform: uppercase;...

3
 Аватар для Cr0c
753 / 600 / 204
Регистрация: 06.08.2015
Сообщений: 2,432
12.05.2018, 08:52
C#
1
2
3
public Vector3 forward { get { return transform.rotation*Vector3.forward;} }
public Vector3 right { get { return transform.rotation*Vector3.right;} }
public Vector3 up { get { return transform.rotation*Vector3.up;} }
1
1 / 1 / 1
Регистрация: 11.05.2018
Сообщений: 15
12.05.2018, 13:26  [ТС]
Цитата Сообщение от Cr0c Посмотреть сообщение
public Vector3 forward { get { return transform.rotation*Vector3.forward;} }
public Vector3 right { get { return transform.rotation*Vector3.right;} }
public Vector3 up { get { return transform.rotation*Vector3.up;} }
Да я уже скачал исходные коды Unity, сейчас изучаю. В моём движке есть только векторный поворот, и я ищу теперь как и Вектор преобразовать Кватернион
0
 Аватар для karrbonn
231 / 64 / 0
Регистрация: 08.01.2019
Сообщений: 391
Записей в блоге: 25
30.09.2019, 16:06
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
        public Vec3 GetForward()
        {
            Vec3 result;
            result.cI = 1f - (this.CX * this.CX + this.Cx * this.Cx) * 2f;
            result.ci = (this.Cx * this.CY + this.Cw * this.CX) * 2f;
            result.cJ = (this.Cw * this.Cx - this.CX * this.CY) * 2f;
            return result;
        }
 
        public Vec3 GetUp()
        {
            Vec3 result;
            result.cI = (this.CX * this.CY + this.Cx * this.Cw) * 2f;
            result.ci = (this.Cx * this.CX - this.Cw * this.CY) * 2f;
            result.cJ = 1f - (this.Cw * this.Cw + this.CX * this.CX) * 2f;
            return result;
        }
 
        public static Quat FromDirectionZAxisUp(Vec3 direction)
        {
            float arg_48_0 = MathFunctions.ATan(direction.Y, direction.X);
            float x = MathFunctions.Sqrt(direction.X * direction.X + direction.Y * direction.Y);
            float num = MathFunctions.ATan(direction.Z, x);
            float expr_4F = -arg_48_0 * 0.5f;
            float num2 = -MathFunctions.Sin(expr_4F);
            float num3 = MathFunctions.Cos(expr_4F);
            float expr_64 = num * 0.5f;
            float num4 = -MathFunctions.Sin(expr_64);
            float num5 = MathFunctions.Cos(expr_64);
            return new Quat(-num2 * num4, num3 * num4, num2 * num5, num3 * num5);
        }
 
        public Quat GetNormalize()
        {
            float num = MathFunctions.Sqrt(this.Cw * this.Cw + this.CX * this.CX + this.Cx * this.Cx + this.CY * this.CY);
            Quat result;
            if (num != 0f) {
                float num2 = 1f / num;
                result.Cw = this.Cw * num2;
                result.CX = this.CX * num2;
                result.Cx = this.Cx * num2;
                result.CY = this.CY * num2;
            }
            else {
                result.Cw = this.Cw;
                result.CX = this.CX;
                result.Cx = this.Cx;
                result.CY = this.CY;
            }
            return result;
        }
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
30.09.2019, 16:06
Помогаю со студенческими работами здесь

Transform и pivot, не работает на MSSQL Server 2000
У меня есть запрос такое на Access-е: PARAMETERS !! DateTime, !! DateTime; TRANSFORM Sum(Disktopres.) AS SELECT Presexptypes. FROM...

Не работает -webkit-transform именно на хостинге dekem
Файловый менеджер хостинга dekem не хочет работать с -webkit-transform, хотя на другом хостинге все прекрасно работало. Использую...

Round меняет transform: scale, а ещё animate.css не работает внизу страницы
http://neorix.ru/ В общем внизу в блоке "Портфолио" при наведении мышкой блок меняет размер, но при этом у рядом стоящих блоков...

Как использовать директиву forward?
Если не трудно, оставьте пример проги, в которой используется директива forward. Содержание не важно - главное, как использовать forward

Как выполнить несколько transform?
Приветствую! Вот если el.style = "transform: rotate(-90deg)"; el.style = "transform: translate(15px,40px)"; то выполняется одна, ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru