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 для визуализации задач имитационного моделирования и искусственного интеллекта (когнитивных игр).



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

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

22 05 2026 23:49:17

PROFESSIONAL SOCIAL GROWING OF PERSONS IN SYSTEM OF CONSUMERS' COOPERATIVE SOCIETY

PROFESSIONAL SOCIAL GROWING OF PERSONS IN SYSTEM OF CONSUMERS' COOPERATIVE SOCIETY Статья в формате PDF 221 KB...

17 05 2026 17:46:39

ПЕРСПЕКТИВЫ ПОЛУЧЕНИЯ БЕЛКА ИЗ ПШЕНИЦЫ

ПЕРСПЕКТИВЫ ПОЛУЧЕНИЯ БЕЛКА ИЗ ПШЕНИЦЫ Статья в формате PDF 262 KB...

16 05 2026 22:52:37

ПРОЦЕССЫ ИЗМЕНЕНИЯ ТЕХНИЧЕСКОГО СОСТОЯНИЯ БЫТОВОЙ ТЕХНИКИ

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

15 05 2026 5:43:40

КРАСОТА КАК СОЦИАЛЬНЫЙ КОНСТРУКТ

КРАСОТА КАК СОЦИАЛЬНЫЙ КОНСТРУКТ Статья в формате PDF 339 KB...

11 05 2026 3:11:44

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

ОРГАНОГЕНЕЗ НАДПОЧЕЧНИКОВ ЧЕЛОВЕКА В ЗРЕЛОМ И ИНВОЛЮТИВНОМ ПЕРИОДАХ ОНТОГЕНЕЗА В УСЛОВИЯХ ВОЗДЕЙСТВИЯ СЕРОСОДЕРЖАЩИХ ПОЛЛЮТАНТОВ Методом рентген-компьютерной томографии изучены надпочечники 227 мужчин и 184 женщин - работников Астpaxaнского Газопереpaбатывающего завода (АГПЗ). Результаты томографии были разделены по 5 стажевым группам: I (1 - 3 года), II (4 - 7 лет), III (8 - 10 лет), IV (11 - 15 лет), V (более 15 лет). Установлено, что как форма, так и линейные размеры надпочечников человека проявляют изменчивость и пoлoвoй диморфизм в условиях воздействия серосодержащих поллютантов. Выявлено преимущественное уменьшение субъектов с L-формами надпочечников по мере увеличения рабочего стажа. Также с увеличением рабочего стажа имеется снижение линейных размеров, что говорит о низкой организации изучаемого органа по мере негативного воздействия серосодержащих поллютантов. ...

10 05 2026 16:56:58

ЭЛЕМЕНТЫ ТЕОРИИ ПРУЖИННЫХ ТРАНСПОРТЕРОВ

ЭЛЕМЕНТЫ ТЕОРИИ ПРУЖИННЫХ ТРАНСПОРТЕРОВ Статья в формате PDF 114 KB...

08 05 2026 17:12:55

ПОВЕДЕНИЕ И ФРАКЦИОНИРОВАНИЕ ЗОЛОТА В РАСПЛАВАХ

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

02 05 2026 15:55:36

ЭКОЛОГИЧНАЯ ДРЕНАЖНАЯ ТЕХНИКА

ЭКОЛОГИЧНАЯ ДРЕНАЖНАЯ ТЕХНИКА Статья в формате PDF 266 KB...

30 04 2026 16:43:36

PROBLEMS OF BIOCHEMICAL INDICATION OF STATUS OF FISHES OF NORTH BASIN

PROBLEMS OF BIOCHEMICAL INDICATION OF STATUS OF FISHES OF NORTH BASIN Статья в формате PDF 127 KB...

26 04 2026 2:23:27

ЭКОЛОГИЧЕСКАЯ КУЛЬТУРА НАСЕЛЕНИЯ – ОСНОВА БЕЗОПАСНОЙ ЭКСПЛУАТАЦИИ ТРАНСПОРТА. АВТОМОБИЛЬ ‒ НЕ РОСКОШЬ

ЭКОЛОГИЧЕСКАЯ КУЛЬТУРА НАСЕЛЕНИЯ – ОСНОВА БЕЗОПАСНОЙ ЭКСПЛУАТАЦИИ ТРАНСПОРТА. АВТОМОБИЛЬ ‒ НЕ РОСКОШЬ Противоречия между природой и человеком могут быть преодолены лишь повышением экологической грамотности специалистов и экологической культуры населения до такого уровня, когда и производственная деятельность специалистов и поведение в быту человека будут способствовать рациональному природопользованию и гармоничному развитию человеческой цивилизации и окружа­ющей природной среды. ...

21 04 2026 16:21:44

ИСТОРИЯ РАЗВИТИЯ ИСТИННЫХ УЧИТЕЛЕЙ

ИСТОРИЯ РАЗВИТИЯ ИСТИННЫХ УЧИТЕЛЕЙ Статья в формате PDF 104 KB...

19 04 2026 20:44:48

ОЗОНОТЕРАПИЯ В ГНОЙНОЙ ХИРУРГИИ

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

16 04 2026 8:24:27

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