SNAIL ENGINE: КРОССПЛАТФОРМЕННЫЙ МОДУЛЬ ГРАФИЧЕСКОГО РАСШИРЕНИЯ > Полезные советы
Тысяча полезных мелочей    

SNAIL ENGINE: КРОССПЛАТФОРМЕННЫЙ МОДУЛЬ ГРАФИЧЕСКОГО РАСШИРЕНИЯ

SNAIL ENGINE: КРОССПЛАТФОРМЕННЫЙ МОДУЛЬ ГРАФИЧЕСКОГО РАСШИРЕНИЯ

Рябинин К.В. Полотнянщиков И.С. Статья в формате PDF 254 KB

На сегодняшний день очень многие компьютерные программы используют мультимедийные возможности вычислительных систем - отображение трёхмерной графики и воспроизведение звука. Для работы с графикой используются готовые библиотеки визуализации. Одним из самых популярных стандартов таких библиотек является OpenGL. Однако библиотеки данного стандарта предоставляют лишь низкоуровневый доступ к графическому оборудованию, поэтому в сложных системах использовать их напрямую неудобно. Необходимо создавать прослойку между основной программой и библиотекой OpenGL. Такую прослойку принято называть модулем графического расширения.

В рамках описываемой работы был создан модуль графического расширения, который получил название Snail Engine. Он представляет собой объектно-ориентированную надстройку над библиотекой стандарта OpenGL. Так как трёхмерная сцена представляет собой набор объектов, принадлежащих различным классам, объектно-ориентированный подход наиболее адекватно подходит для организации модуля графического расширения.

Основное назначение модуля - облегчить труд программиста, разpaбатывающего крупное мультимедийное приложение. Для этого Snail Engine предоставляет возможность управления трёхмерной сценой на уровне геометрических примитивов более высокого уровня, чем OpenGL. Базовыми понятиями в Snail Engine являются трёхмерные объекты с их свойствами, такими как материал и положение в прострaнcтве, а также визуальные эффекты; в то время как в OpenGL - точки, многоугольники и матрицы преобразования. Кроме того, Snail Engine имеет встроенные функции загрузки моделей и текстур из внешних файлов (поддерживаются различные популярные форматы: для трёхмерных моделей - 3ds и md2, а для двумерных текстур bmp, png и др).

Модуль графического расширения написан на языке C++ с соблюдением требований платформенной независимости и может быть собран под любую платформу, для которой реализован OpenGL. На данный момент модуль тестировался под управлением операционных систем GNU / Linux и Windows.

Чтобы повысить производительность при работе со сложными специальными эффектами (нестандартное освещение, системы частиц и т.п.) в состав Snail Engine включено средство использования микропрограмм - шейдеров - на языке GLSL. Шейдеры позволяют ускорить обсчёт трёхмерной сцены за счёт переноса части вычислений на графический процессор. Кроме того, они делают мультимедийное приложение более структурированным, так как эффекты, описанные шейдерами, находятся за пределами основного программного кода этого приложения. Шейдеры могут быть легко изменены и изменения вступят в силу без перекомпиляции основной программы.

С применением шейдеров в работе реализован ряд нестандартных моделей освещения: модели Орена-Наяра, Кука-Торренса и Миннарта (физически точно учитывают отражение от различных типов поверхностей - камня, металла и земли соответственно), а также модель имитации подповерхностного рассеивания (моделирует частичную прозрачность материала) и неточечного источника света (источником является целый отрезок).

Для расширения мультимедийных возможностей модуля в него включены также средства воспроизведения звука, опирающиеся на библиотеку стандарта OpenAL и компрессор-декомпрессор Ogg Vorbis.

В Snail Engine реализована поддержка отображения трёхмерной сцены в стереорежиме при помощи шлема виртуальной реальности eMagin Z800. Таким образом, любое приложение, имеющее в основе данный модуль, будет совместимо с этим шлемом.

На базе Snail Engine был создан виртуальный интеpaктивный исторический музей, «экспонаты» для которого были получены на трёхмерном сканере Roland LPX-600. Это приложение является показательным примером использования модуля для решения реальной прикладной задачи.

В дальнейшем планируется использовать Snail Engine для визуализации задач имитационного моделирования и искусственного интеллекта (когнитивных игр).



ГЕОГРАФИЯ УДМУРТИИ (учебник для 8-9 классов)

ГЕОГРАФИЯ УДМУРТИИ (учебник для 8-9 классов) Статья в формате PDF 127 KB...

08 06 2026 23:55:57

СОСТАВ КОСТНОГО МОЗГА И СОДЕРЖАНИЕ В НЕМ ЭРИТРОКЛАЗИЧЕСКИХ КЛАСТЕРОВ ПРИ ПИРОГЕНАЛОВОЙ ЛИХОРАДКЕ

СОСТАВ КОСТНОГО МОЗГА И СОДЕРЖАНИЕ В НЕМ ЭРИТРОКЛАЗИЧЕСКИХ КЛАСТЕРОВ ПРИ ПИРОГЕНАЛОВОЙ ЛИХОРАДКЕ Проведено исследование хаpaктера образования эритроклазических костномозговых кластеров при лихорадке у лабораторных животных. Установлено, что лихорадка сопровождается увеличением клеточности костного мозга, активацией эритроклазического кластерообразования нейтрофильными миелокариоцитами и макрофагами, сопровождающегося усилением экзоцитарного лизиса эритроцитов в кластерах, то есть увеличением цитолитической активности данных миелокариоцитов. ...

07 06 2026 0:51:50

«ВЕЛИКАЯ ДЕПРЕССИЯ» – СОВРЕМЕННЫЙ ВЗГЛЯД

«ВЕЛИКАЯ ДЕПРЕССИЯ» – СОВРЕМЕННЫЙ ВЗГЛЯД Статья в формате PDF 268 KB...

06 06 2026 22:20:48

ЭКОЛОГИЧЕСКАЯ БЕЗОПАСНОСТЬ И КОНСТИТУЦИЯ РФ

ЭКОЛОГИЧЕСКАЯ БЕЗОПАСНОСТЬ И КОНСТИТУЦИЯ РФ Статья в формате PDF 149 KB...

01 06 2026 9:37:19

Фенологическая хаpaктеристика Ивановской области

Фенологическая хаpaктеристика Ивановской области Статья в формате PDF 267 KB...

31 05 2026 14:44:44

ПОЛОВЫЕ ГОРМОНЫ И БРОНХИАЛЬНАЯ АСТМА У ЖЕНЩИН

ПОЛОВЫЕ ГОРМОНЫ И БРОНХИАЛЬНАЯ АСТМА У ЖЕНЩИН Статья в формате PDF 125 KB...

28 05 2026 15:50:23

ЕДИНЫЙ ГОСУДАРСТВЕННЫЙ ЭКЗАМЕН ПО ФИЗИКЕ В ТОМСКЕ. АНАЛИЗ И РЕЗУЛЬТАТЫ

ЕДИНЫЙ ГОСУДАРСТВЕННЫЙ ЭКЗАМЕН ПО ФИЗИКЕ В ТОМСКЕ. АНАЛИЗ И РЕЗУЛЬТАТЫ В работе анализируются результаты единого государственного экзамена по физике на примере региональной, а именно, томской выборки по результатам 2003 г. Проведено сравнение единого экзамена по физике и математике, а также вузовского и школьного тура ЕГЭ. Изучается решаемость конкретных заданий частей «А», «В», «С». Результаты исследования должны помочь учителям средних общеобразовательных школ в планировании учебного материала, построении новых методик обучения и, как следствие, в ликвидации пробелов в знаниях учащихся. ...

20 05 2026 2:10:57

К КИНЕТИКЕ ПРОЦЕССОВ РОСТА, РАЗМНОЖЕНИЯ И ГИБЕЛИ МИКРООРГАНИЗМОВ

К КИНЕТИКЕ ПРОЦЕССОВ РОСТА, РАЗМНОЖЕНИЯ И ГИБЕЛИ МИКРООРГАНИЗМОВ Рассмотрен вариант синхронного деления клеток. Предложены кинетические уравнения, описывающие рост, размножение и гибель микроорганизмов с учетом как естественной cмepтности, так и внутривидовой борьбы. Рассматривается квазистационарный метод решения уравнения для определения плотности функции распределения микроорганизмов по возрастам. Предложен явный вид коэффициента диффузии в прострaнcтве масс. Получено аналитическое решение в квазистационарном приближении для плотности функции распределения микроорганизмов по возрастам для случая, когда рост клетки пропорционален ее массе (объему). ...

18 05 2026 1:56:24

ОПТИМИЗАЦИОННАЯ МОДЕЛЬ НАЛОГООБЛОЖЕНИЯ

ОПТИМИЗАЦИОННАЯ МОДЕЛЬ НАЛОГООБЛОЖЕНИЯ Статья в формате PDF 99 KB...

16 05 2026 17:36:22

СИСТЕМА МЕХАНИЗИРОВАННОЙ ОЧИСТКИ МУСОРОПРОВОДОВ

СИСТЕМА МЕХАНИЗИРОВАННОЙ ОЧИСТКИ МУСОРОПРОВОДОВ Статья в формате PDF 110 KB...

13 05 2026 10:59:41

ВОЗМОЖНОСТИ МОДЕЛИРОВАНИЯ ЭКВАТОРИАЛЬНОЙ ЭЛЕКТРОСТРУИ И ЕЁ СЛЕДСТВИЙ

ВОЗМОЖНОСТИ МОДЕЛИРОВАНИЯ ЭКВАТОРИАЛЬНОЙ ЭЛЕКТРОСТРУИ И ЕЁ СЛЕДСТВИЙ Для исследования вариаций параметров живых существ, обитающих в биосфере в разных широтных регионах, в частности экваториальных, построена модель экваториального электроджета, основанная на численном решении дифференциальных уравнений второй степени для потенциала, вызванного прострaнcтвенным зарядом. ...

07 05 2026 5:42:40

ЭФФЕКТИВНЫЙ СПОСОБ БОРЬБЫ С «ПРЕДТРОМБОТИЧЕСКИМИ СОСТОЯНИЯМИ» ПРИ ЦЕРЕБРОФАЦИАЛЬНОЙ ТРАВМЕ У БОЛЬНЫХ С ГНОЙНЫМИ СИНУИТАМИ

В работе представлены данные по усовершенствованию методов коррекции нарушений гемостаза у больных с гнойными синуситами при черепно-мозговой травме. Показано, что метод внутрипазушной гепаринотерапии, как компонент комплексного лечения пациентов с гнойными синуситами в остром периоде церебро-фациальной травмы, позволяет эффективно коррегировать гиперкоагуляционные нарушения гемостаза и осуществлять профилактику связанного с этим нарушения синдрома ДВС. ...

05 05 2026 5:54:48

Еще:
Поддержать себя -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 ::