Irrlicht (графический движок) (Irrlicht (ijgsncyvtnw ;fn'kt))

Перейти к навигации Перейти к поиску
Irrlicht 3D Engine
Логотип программы Irrlicht 3D Engine
Скриншот программы Irrlicht 3D Engine
Скриншот из демонстрационного бенчмарка графического движка Irrlicht Engine, на котором представлена реализация технологии «Parallax mapping» для текстурирования стен, пола и потолка комнаты. В динамике тени между кирпичами изменяются динамически в зависимости от положения источника света. Освещение попиксельное.
Тип Графический движок
Разработчик Nikolaus Gebhardt et al.
Написана на C++
Операционные системы Microsoft Windows, Linux, macOS, AmigaOS 4, Xbox
Первый выпуск 2002[1]
Последняя версия 1.8.5 (1 ноября 2021 года)
Репозиторий sourceforge.net/p/irrlic…
Лицензия Лицензия zlib
Сайт irrlicht.sourceforge.net
Логотип Викисклада Медиафайлы на Викискладе
Скриншот из аналогичного бенчмарка, демонстрирующий аналогичные технологические возможности.

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

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

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

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

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

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

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

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

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

  • C++ — встроенная поддержка.
  • .NET-языки (C#, Visual Basic .NET) — с помощью .NET враппера Irrlicht Lime
  • Java — с помощью библиотеки jirr или Bindenlicht
  • Python — pyIrrlicht, также осуществляет поддержку для других языков: fasm, TinyCC, FreeBASIC.
  • Ruby — с помощью библиотеки IrrRuby.
  • PureBasic — с помощью IrrlichtWrapper[2]
  • Delphi — версия, портированная одним из энтузиастов:[3]
  • GML — версия движка, для игрового конструктора GameMaker под названием GMI.

Игры, использующие движок[править | править код]

  • Minetest — игра-песочница с открытым исходным кодом, аналог популярной игры Minecraft. Имеет большое число модов и расширений.

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

  1. Authors
  2. PureArea ShowCase — Detail Ansicht. Дата обращения: 8 ноября 2007. Архивировано 17 августа 2014 года.
  3. Irrlicht Engine wiki — Delphi. Дата обращения: 3 июня 2009. Архивировано из оригинала 14 июня 2008 года.

Ссылки[править | править код]