Irrlicht (графический движок)

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск
Irrlicht 3D Engine
Irrlicht screenshot01.png
Тип

Графический движок

Разработчик

Nikolaus Gebhardt et al.

Написана на

C++

Операционная система

Microsoft Windows, Linux, Mac OS X, Xbox

Последняя версия

1.8.1 (20 ноября 2013 года)

Лицензия

Лицензия zlib

Сайт

http://irrlicht.sourceforge.net/

Скриншот из демонстрационного бенчмарка графического движка Irrlicht Engine, на котором представлена реализация технологии «Parallax mapping» для текстурирования стен, пола и потолка комнаты. В динамике тени между кирпичами изменяются динамически в зависимости от положения источника света. Освещение попиксельное.
Скриншот из аналогичного бенчмарка, демонстрирующий аналогичные технологические возможности.

Irrlicht (Irrlicht Engine) — трёхмерный графический движок, который является бесплатным свободным программным продуктом и распространяется на условиях лицензии zlib.

«Irrlicht» использует возможности OpenGL, DirectX и нескольких собственных рендереров. Пользователю предоставляются различные функциональные возможности по загрузке и управлению трёхмерными (3D) объектами (сцены, модели и т. п.), немногими спецэффектами и графическим интерфейсом пользователя. Рекомендуется для ознакомления с процессом разработки игр (Gamedev — «игростроительная индустрия»; «разработка игр») и создания несложных игр и демосцен (Irrlicht поддерживает форматы популярных игр и движков, в частности модели quake 2, quake 3, карты уровней и др.). Не требует подключения сторонних модулей для реализации высокоуровневых функций (есть простейшая физика, GUI (графический интерфейс пользователя) и т. д.). Существует три официальных дополнения для Irrlicht: IrrKlang (аудиобиблиотека), IrrXML (загрузка и обработка XML-файлов), IrrEdit (редактор сцен). Для использования расширенных функций физики существует физический движок ChronoEngine (по причине того, что в Irrlicht встроена примитивная физическая система).

Одна из важных особенностей Irrlicht его кроссплатформенность — то есть способность работать на различных платформах. Платформонезависимая прослойка обеспечивает лёгкую портируемость (то есть перенос движка) на различные не поддерживаемые официально платформы, в частности существуют порты под android, iPhone и пр.

Базовая структура[править | править вики-текст]

Движок содержит следующие пространства имен (они же модули):

  • core — предоставляет классы общего назначения так как vectors, planes, arrays, lists и т. п.
  • gui — содержит полезные классы для упрощения создания графического интерфейса пользователя GUI.
  • io — содержит интерфейсы для ввода-вывода, они позволяют выполнять: чтение и запись файлов, доступ к zip архивам, xml файлам,
  • scene — в этом модуле сосредоточено управление сценой: загрузка мешей (Mesh), специальные узлы сцены (так как octrees и billboards)
  • video — в этом модуле содержатся классы для доступа к видеодрайверу. Весь 2d и 3d рендринг происходит здесь.

Доступные языки для использования irrlicht[править | править вики-текст]

Преимущества[править | править вики-текст]

Irrlicht подходит для начинающих разработчиков игр по нескольким причинам:

  • простота в изучении и использовании (прозрачная архитектура движка)
  • небольшой, но, тем не менее, вполне достаточный набор возможностей
  • совместимость с такими инструментами, как 3D-редакторы, звуковые, графические и редакторы спецэффектов
  • нет необходимости в компиляции и сборке движка из исходников
  • бесплатность и открытость движка
  • практическая применяемость движка (в отличие от инструментов вроде «Конструктор 3D игр», значительно ограничивающих свободу действий разработчика)

Примечания[править | править вики-текст]

Ссылки[править | править вики-текст]