Irrlicht (графический движок)
Irrlicht 3D Engine | |||
---|---|---|---|
| |||
Тип | Графический движок | ||
Разработчик | Nikolaus Gebhardt et al. | ||
Написана на | C++ | ||
Операционные системы | Microsoft Windows, Linux, Mac OS X | ||
Первый выпуск | 2002[1] | ||
Последняя версия | 1.8.0 (8 ноября 2012 года) | ||
Репозиторий | sourceforge.net/p/irrlic… | ||
| |||
Лицензия | Лицензия zlib | ||
Сайт | Irrlicht 3D Homepage | ||
Медиафайлы на Викискладе |
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
- C++ — встроенная поддержка.
- .NET-языки (C#, Visual Basic .NET) - с помощью .NET враппера Irrlicht Lime
- Java — с помощью библиотеки jirr или Bindenlicht
- Python — pyirrlicht (http://pir.sourceforge.net), также осуществляет поддержку для других языков и компиляторов (FASM, TinyCC, FreeBASIC)
- Ruby — с помощью библиотеки IrrRuby.
- PureBasic — с помощью IrrlichtWrapper[2]
- Delphi — версия, портированная одним из энтузиастов:[3]
Разработчику
Irrlicht лучше всего подходит для начинающих разработчиков игр по нескольким причинам:
- простота в изучении и использовании (прозрачная архитектура движка)
- небольшой, но, тем не менее, вполне достаточный набор возможностей
- совместимость с такими инструментами, как 3D, звуковые, графические и редакторы спецэффектов
- нет необходимости в компиляции и сборке движка из исходников
- бесплатность и открытость движка (любая поддержка — бесплатна и квалифицирована)
- практическая применяемость движка (в отличие от инструментов вроде «Конструктор 3D игр», значительно ограничивающих свободу действий разработчика)
Примечания
Ссылки
- Официальный сайт
- Русскоязычное зеркало официального сайта: уроки, статьи, форум
- Русскоязычное сообщество Irrlicht, статьи примеры программ на сайте GameDev.ru
Это заготовка статьи об игровом движке. Помогите Википедии, дополнив её. |