Рендер
|
|
serg-kkz | Дата: Воскресенье, 06.11.2016, 00:21 | Сообщение # 1 |
Генерал-полковник
Группа: Модераторы
Сообщений: 803
Награды: 3
Репутация: 18
Статус: Offline
| Есть вот такое такое расстояние 1 000 000 000 000 000 000 км - 1 квинтиллион. Если отлететь от мирового центра на это расстояние, камерой которая располагаться в шаре диаметром 1 391 400 км - солнце, и включить режим каркас. То мы увидим шар, однако при движение все начнет мерцать, и в итоге пропадет. Эта проблема связанна с точностью float, которое используется при расчетах рендера.
Однако, в интерфейсе OpenGL для камеры есть параметр, относительного каких координат отрисовывать сцену. Так вот как в панде можно сместить этот центр координат?
ООП -
|
|
| |
ninth | Дата: Понедельник, 07.11.2016, 08:32 | Сообщение # 2 |
Admin
Группа: Администраторы
Сообщений: 1582
Награды: 5
Репутация: 46
Статус: Offline
| Как это делается в OpenGL? Точнее как этот параметр называется? Я просто никогда не сталкивался с данной задачей, а вообще как по мне эта идея не очень, в смысле использовать столь большие цифры.
|
|
| |
serg-kkz | Дата: Понедельник, 07.11.2016, 13:48 | Сообщение # 3 |
Генерал-полковник
Группа: Модераторы
Сообщений: 803
Награды: 3
Репутация: 18
Статус: Offline
| Это при масштабе 1ед - 1км еще ). Идея эта используется в Space engine, там есть трабл для координат самой камеры, но он обходиться с помочь чисел с фиксированной точкой с точностью 128 бит. Про OpenGL, есть статьи как эта, да и автор Space engine ссылается на такой метод отрисовки мира.
Я так понял нужно с матрицой модели химичить.
ООП -
Сообщение отредактировал serg-kkz - Понедельник, 07.11.2016, 14:15 |
|
| |
serg-kkz | Дата: Вторник, 08.11.2016, 01:46 | Сообщение # 4 |
Генерал-полковник
Группа: Модераторы
Сообщений: 803
Награды: 3
Репутация: 18
Статус: Offline
| Вот здесь проясняться как это достигается, интересно как в панде можно так манипулировать матрицами.
ООП -
Сообщение отредактировал serg-kkz - Вторник, 08.11.2016, 02:53 |
|
| |
ninth | Дата: Вторник, 08.11.2016, 08:20 | Сообщение # 5 |
Admin
Группа: Администраторы
Сообщений: 1582
Награды: 5
Репутация: 46
Статус: Offline
| В данном случае скорее всего надо писать собственный класс специальной линзы для камеры, а возможно и сам класс камеры расширять. На сях, т.к. реалтайм операции с матрицами на питоне будут медленными.
|
|
| |
serg-kkz | Дата: Вторник, 08.11.2016, 17:14 | Сообщение # 6 |
Генерал-полковник
Группа: Модераторы
Сообщений: 803
Награды: 3
Репутация: 18
Статус: Offline
| Хм, заглянул в эти классы. И не нашел ни чего что походило бы на учебники по OpenGL. Видимо из за поддержки других графических API, есть ещё прослойки кода принадлежащие панде. И таких слоев наверно куча, и надо в каждом разбираться. Вот был бы голый OpenGL в этих фалах, можно было бы что то сообразить.
ООП -
|
|
| |
ninth | Дата: Вторник, 08.11.2016, 22:55 | Сообщение # 7 |
Admin
Группа: Администраторы
Сообщений: 1582
Награды: 5
Репутация: 46
Статус: Offline
| Насколько могу судить, непосредственно к графическому АПИ привязки нет, вся "магия" в матрицах трансформации.
|
|
| |
serg-kkz | Дата: Вторник, 08.11.2016, 23:26 | Сообщение # 8 |
Генерал-полковник
Группа: Модераторы
Сообщений: 803
Награды: 3
Репутация: 18
Статус: Offline
| Я про другое, дело что панда очень любит странные имена в своих классах, вспомнить даже векторы, сразу и не поймешь. Вот и здесь нужно голову ломать. Я тут ломал голову как в панде можно заюзать VBO, оказывается это и есть GeomVertexArray. Вот и пойми.
ООП -
|
|
| |