Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > разработка игр, графический дизайн и моделирование > Gamedev - cоздание игр: Unity, OpenGL, DirectX
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 30.10.2017, 12:44   #1
SerEngine
Форумчанин
 
Регистрация: 28.10.2017
Сообщений: 101
Восклицание OpenGL преобразование матриц

Скиньте ссылки на статью или книгу где обьясняется как преобразовать глобальную матрицу в локальную или наоборот. Я в инете искал но нормальных обьяснений не нашел, показывают как перемножать матрицы. Мне нужно что-бы всё было подробно что на что влияет.
SerEngine вне форума Ответить с цитированием
Старый 30.10.2017, 12:57   #2
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,695
По умолчанию

http://www.opengl-tutorial.org/begin...al-3-matrices/
p51x вне форума Ответить с цитированием
Старый 10.11.2017, 16:43   #3
coremission
Форумчанин
 
Аватар для coremission
 
Регистрация: 09.11.2017
Сообщений: 121
По умолчанию

А что такое локальная и глобальная матрицы?)
Профессионально программирую видео-игры. Пишу бекстейдж-блог о разработке игр CoreMission.net.
Разрабатываю календарь выхода игр.
coremission вне форума Ответить с цитированием
Старый 12.11.2017, 22:20   #4
SerEngine
Форумчанин
 
Регистрация: 28.10.2017
Сообщений: 101
По умолчанию

Под глобальными я подразумеваю координаты и под локальными тоже.
SerEngine вне форума Ответить с цитированием
Старый 14.11.2017, 12:59   #5
coremission
Форумчанин
 
Аватар для coremission
 
Регистрация: 09.11.2017
Сообщений: 121
По умолчанию

Я могу посоветовать только англоязычные источники:
- книгу 3D Math Primer for Graphics and Game Development, 2nd Edition. В сети гуляет пдф, доступно про матрицы и все остальное.
- видео Linear algebra essentials (часть 1, часть 2)
Профессионально программирую видео-игры. Пишу бекстейдж-блог о разработке игр CoreMission.net.
Разрабатываю календарь выхода игр.
coremission вне форума Ответить с цитированием
Старый 16.11.2017, 18:43   #6
SerEngine
Форумчанин
 
Регистрация: 28.10.2017
Сообщений: 101
По умолчанию

Где можно с тобой регулярно общаться?
SerEngine вне форума Ответить с цитированием
Старый 16.11.2017, 21:10   #7
coremission
Форумчанин
 
Аватар для coremission
 
Регистрация: 09.11.2017
Сообщений: 121
По умолчанию

Да вот тут же)
Профессионально программирую видео-игры. Пишу бекстейдж-блог о разработке игр CoreMission.net.
Разрабатываю календарь выхода игр.
coremission вне форума Ответить с цитированием
Старый 16.11.2017, 21:58   #8
Pavia
Лис
Старожил
 
Аватар для Pavia
 
Регистрация: 18.09.2015
Сообщений: 2,409
По умолчанию

Цитата:
Сообщение от coremission Посмотреть сообщение
А что такое локальная и глобальная матрицы?)
Каждая система координат определяется 3 векторами. Следовательно мы можем записать эти вектора в виде матрицы.

Глобальная матрица будет
G=(1 0 0 ; 0 1 0 ; 0 0 1)
Переход от одной матрицы к другой всегда можно записать в виде.
G*M=L

Так как G это матрица инцидентности
G=I
G*M=I*M=M

Откуда следует что матрица перехода из глобальной в локальную систему координат есть матрица локальной системы координат.
А для перехода от локальной к глобальной есть обратная к этой матрицы.

Мантуров О.В., Матвеев Н.М. Курс высшей математики Линейная алгебра. Аналитическая геометрия. Дифференциальное исчисление функций одной переменной 1986


Цитата:
Сообщение от SerEngine Посмотреть сообщение
Мне нужно что-бы всё было подробно что на что влияет.
Ф.Хилл OpenGL. Программирование компьютерной графики
Роджерс Д., Адамс Дж.-Математические основы машинной графики-Мир (2001)

С точки зрения разработчиков OpenGL нет глобальной и локальной матрицы.
Есть только матрица перехода из локальной в видову. Поэтому такие понятия вы должны реализовать сами.

Они математику данной области с 1 версии стандарта не меняли .
https://www.khronos.org/registry/Ope...l/glspec20.pdf
И как следствие так как в одной матрицы у них всё по намешено то и камеру вам придётся реализовывать самостоятельно.

Но вообще вы неправильно цель ставите. Вам нужен класс камеры. С возможностью её перемещать, вращать. И возможность переключаться между камерами.

Как сделать камеру нигде толком не описано. Поэтому как я уже говорил смотрите исходники движков. ogre 3D или Unity и и др.

От туда в свой движок вы можете взять имена функций и параметры передаваемые в них.
А реализацию сделать на основе выше указанного материала.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
У дзен программиста программа делает то что он хотел, а не то что он написал .

Последний раз редактировалось Pavia; 16.11.2017 в 22:04.
Pavia вне форума Ответить с цитированием
Старый 17.11.2017, 07:59   #9
SerEngine
Форумчанин
 
Регистрация: 28.10.2017
Сообщений: 101
По умолчанию

Спасибо
SerEngine вне форума Ответить с цитированием
Старый 17.11.2017, 08:01   #10
SerEngine
Форумчанин
 
Регистрация: 28.10.2017
Сообщений: 101
По умолчанию

Но по сути глобальные координаты есть всегда.
Если знаешь глобальные то и локальные не проблема вычислить.
SerEngine вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Преобразование и построение матриц Jenyyy Паскаль, Turbo Pascal, PascalABC.NET 1 07.11.2014 18:47
преобразование и построение матриц Слава Кандратьев Общие вопросы C/C++ 6 06.11.2012 04:46
Преобразование матриц wOOp Помощь студентам 2 31.03.2012 22:35
Преобразование матриц на языке Си tanek Помощь студентам 0 25.04.2009 20:24
Преобразование матриц bpystep Помощь студентам 8 23.03.2009 12:54