Визуализация 4D-объектов в OpenGL

Знаете ли вы какую-либо активно развивающуюся библиотеку C/C++, которая может взять кучу (предпочтительно большое количество) четырехмерных вершин, спроецировать их обратно в трехмерное пространство относительно некоторой произвольной матрицы проекции "4D камера" и вывести обычные трехмерные вершины что я мог бы подать в OpenGL для визуализации с аппаратным ускорением? Мне также понадобится возможность выполнять стандартные преобразования в 4D пространстве (перемещение, вращение по всем 4 осям и равномерное масштабирование).

2 ответа

Следующее - плохой ответ (так как я ни в коем случае не эксперт по этой теме), но я решил быстро осмотреться и придумал этот тезис: http://steve.hollasch.net/thesis/

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

Профессор Эндрю Хэнсон (Университет Индианы) разработал графическую библиотеку для визуализации 4D-геометрии. Это называется GL4D. Он разработан, чтобы имитировать ощущение OpenGL (хотя я не уверен, действительно ли он построен поверх OpenGL). Это GPU-ускорение. Он поддерживает проекцию, нарезку, удаление скрытой поверхности, освещение на каждый воксель и полупрозрачное затенение.

Вот публикация, которая объясняет GL4D: бумага GL4D

Вот ссылка на исходный код: GL4D Source Code

И вот видео демонстрация GL4D: демонстрация видео GL4D

Другие вопросы по тегам