OGRE
OGRE (Object-Oriented Graphics Rendering Engine) — объектно-ориентированный графический движок с открытым исходным кодом, написанный на C++. Автором OGRE является Стив Стриитинг (англ. Steve Streeting).
OGRE (Object-Oriented Graphics Rendering Engine) | |
---|---|
Тип | Графический движок |
Разработчик | The OGRE Team |
Написана на | C++ |
Операционная система | Кроссплатформенное программное обеспечение |
Первый выпуск | февраль 2005 года |
Последняя версия | |
Читаемые форматы файлов | OGRE Mesh (binary)[d] |
Создаваемые форматы файлов | OGRE Mesh (binary)[d] |
Состояние | Активное |
Лицензия | MIT License |
Сайт | ogre3d.org |
Медиафайлы на Викискладе |
Работу над движком Стив начал в 2001 году, после того, как его посетила идея о создании хорошо слаженного, кроссплатформенного движка с удобным дизайном и архитектурой.
Политика OGREПравить
OGRE сам по себе не является игровым движком и по заявлению автора никогда таковым не будет. OGRE был, есть и будет графическим движком для рендеринга трехмерной графики. Большую популярность движок получил за счет своей гибкости, что позволяет «скрещивать» его со многими другими библиотеками (физика — ODE, Newton, PhysX, Bullet; звук, сеть, графический интерфейс и т. д.).
Причина, по которой OGRE не может стать полноценным игровым движком, описывается автором приблизительно так: Не все, кому может быть необходим 3D-движок, будут использовать его для создания игр, поэтому, вы можете использовать OGRE для создания игр, симуляторов, бизнес-приложений и т. д. В OGRE нет встроенной поддержки сети, звука и многих других функций. Но, с помощью усилий многих профессионалов, появились библиотеки, портированные под OGRE. Например, для реализации физики в приложениях, использующих данный движок, портированы такие библиотеки, как PhysX SDK (движок) (NxOgre), Newton Game Dynamics (OgreNewt), Bullet Physics Library (OgreBullet), Open Dynamics Engine (OgreODE).
Для реализации графического интерфейса пользователя (англ. GUI - Graphic User Interface) могут применяться как стандартные (недостаточно хорошо реализованные, и, по словам разработчиков, в будущем, возможно, будут исключены) функции графического интерфейса OGRE, так и импортироваться сторонние библиотеки: OpenGUI, MyGUI, CEGUI.
OGRE является свободным программным обеспечением, распространяемым под лицензиями LGPL/MIT и имеет очень активное сообщество.
ВозможностиПравить
Разработчиком движка заявлена поддержка следующих возможностей[2]:
- поддержка платформ Windows, Linux, macOS, Android и iOS;
- скриптовая система управления материалами (мультитекстурирование, мультипроходное смешивание);
- загрузка текстур в формате PNG, JPEG, TGA, BMP, PVRTC и DDS, также поддержка сжатых текстур (DXT/S3TC);
- экспортеры для основных коммерческих и свободных пакетов 3D моделирования[3];
- система управления ресурсами;
- поддержка Direct3D, Vulkan, Metal (англ.) (рус., OpenGL (включая OpenGL ES) и WebGL (через Emscripten);
- поддержка шейдеров, написанных на ассемблере или языках высокого уровня: Cg, HLSL или GLSL;
- сложная скелетная анимация (анимация тела), анимация гибких форм, морфинг (анимация лица), анимация пути (камера, перемещение).
История версийПравить
Этот раздел имеет чрезмерный объём или содержит маловажные подробности неэнциклопедичного характера. |
- Около 1999 — Синбад осознает, что его проект 'DIMClass', предназначенный для упрощения объектно-ориентированного взаимодействия с Direct3D, стал настолько абстрагированным, что может больше не базироваться на Direct3D. Начинается планирование более амбициозной платформо- и API-независимой библиотеки.
- 25 февраля 2000г — На Sourceforge зарегистрирован проект OGRE.
- Февраль 2005г — Выпущена версия Ogre v1.0.0 "Azathoth" Final - переработана система ресурсов, аппаратные пиксельные буферы, HDR, CEGui, XSI exporter
- Март 2005г — Ogre становится проектом месяца на Sourceforge
- 4 ноября 2005г — Ankh становится первой коммерческой игрой, выпущенной с использованием Ogre
- 7 мая 2006г — Официальный релиз Ogre 1.2 "Dagon"
- 25 марта 2007г — Официальный релиз Ogre 1.4 "Eihort"
- 28 августа 2008г — Официальный релиз Ogre 1.6 "Shoggoth" (текущая стабильная версия 1.6.5)
- 28 февраля 2010г — Официальный релиз Ogre 1.7 "Cthugha" (текущая стабильная версия 1.7.4)
- 28 мая 2012г — Официальный релиз Ogre 1.8 "Byatis"
- 24 ноября 2013г — Официальный релиз Ogre 1.9 "Ghadamon"
- 31 декабря 2017 — Официальный релиз Ogre 1.10
- 20 декабря 2018 — Официальный релиз Ogre 1.11
- 30 апреля 2019 — Официальный релиз Ogre 1.12[4]
- 13 августа 2021 — Официальный релиз Ogre 13[4]
Ogre-NextПравить
Начиная с 2019 года, разработку OGRE было решено вести в рамках двух отдельных проектов[5]. Развитие кода предыдущих версий ведется в рамках проекта Ogre (также называемого Ogre v1), который сосредоточен на обеспечении обратной совместимости с предыдущими версиями для поддержки имеющихся проектов на движке. Внедрении же новейших методов рендеринга трехмерной графики производится в проекте Ogre-Next (также называемом Ogre v2). В этой новой версии движка разработчики заявляют[6]:
- Новую подсистему рендеринга, способную обеспечить обработку десятков тысяч объектов в кадре;
- Новую систему управления материалами (High Level Material System) для обеспечения задаваемого пользователем физически корректного рендеринга;
- Встроенную поддержку VR.
В то же время, документация к Ogre-Next является гораздо менее проработанной, чем для оригинального Ogre. Кроме того, в новой версии движка была прекращена поддержка ряда устаревших платформ (например, систем Android младше 7.0) и программных интерфейсов трехмерной графики (например, Direct3D 9, OpenGL 1.x и 2.x)[7]. Также планируется, но не реализована поддержка OpenGL ES и WebGL[7].
OGRE портыПравить
Существуют порты Ogre3D под другие языки программирования
Проекты использующие движокПравить
В разделе не хватает ссылок на источники (см. рекомендации по поиску). |
С открытым исходным кодомПравить
ПроприетарныеПравить
- Ankh (англ.) (рус.[19], Ankh: Heart of Osiris (англ.) (рус. и Ankh: Battle of the Gods (англ.) (рус.[20]
- Black Sails: The Ghost Ship (англ.) (рус.[20]
- Earth Eternal (англ.) (рус.
- Garshasp: The Monster Slayer (англ.) (рус.[19] и Garshasp: Temple of the Dragon[20]
- Jack Keane (англ.) (рус.[19]
- Kenshi[20]
- MotorM4X: Offroad Extreme[20]
- Next Life (англ.) (рус.
- Pacific Storm (англ.) (рус.[20]
- Rebel Galaxy (англ.) (рус. и Rebel Galaxy Outlaw (англ.) (рус.[20]
- Savage: The Battle for Newerth (англ.) (рус. и Savage 2: A Tortured Soul
- Snakeworlds[21]
- So Blonde (англ.) (рус. и So Blonde: Back to the Island (англ.) (рус.
- The Book of Unwritten Tales[19]
- Torchlight[19] и Torchlight II[12]
- Venetica[19]
- Void Destroyer (англ.) (рус.[20]
- Warside[20]
- Zero gear[19]
- Zombie Driver (англ.) (рус.[19]
См. такжеПравить
- Irrlicht — графический движок, использующий возможности OpenGL и DirectX, написанный на C++
- GLScene — OpenGL-ориентированный графический движок для Delphi, Free Pascal и C++.
- OpenSceneGraph — многоплатформенный OpenGL-ориентированный графический движок на C++
- OpenSpace3D — свободный конструктор, для создания веб-приложений и игр без программирования на базе движка OGRE.
- PureBasic — процедурный язык программирования, содержащий враппер движка OGRE в стандартной библиотеке.
ПримечанияПравить
- ↑ Release 13.6.3 — 2023.
- ↑ Features · OGRE (англ.). Дата обращения: 7 февраля 2023.
- ↑ OGRE Exporters · OGRE Wiki (англ.). Дата обращения: 7 февраля 2023.
- ↑ 1 2 Tags · OGRECave/ogre (англ.). GitHub. Дата обращения: 18 сентября 2021. Архивировано 18 сентября 2021 года.
- ↑ Ogre Ecosystem Roundup #3 · OGRE (англ.). Дата обращения: 7 февраля 2023.
- ↑ What version to choose? · OGRE (англ.). Дата обращения: 7 февраля 2023.
- ↑ 1 2 Ogre 2.1 FAQ · OGRE Wiki (англ.). Дата обращения: 7 февраля 2023.
- ↑ ZelconGames/Facade · GitHub (англ.). Дата обращения: 7 февраля 2023.
- ↑ kblaschke/Iris2 · GitHub (англ.). Дата обращения: 7 февраля 2023.
- ↑ Compile · OpenDungeons Wiki (англ.). Дата обращения: 7 февраля 2023.
- ↑ Orxonox (англ.). Дата обращения: 7 февраля 2023.
- ↑ 1 2 3 Showcase · OGRE (англ.). Дата обращения: 7 февраля 2023.
- ↑ sirikata/sirikata · GitHub (англ.). Дата обращения: 7 февраля 2023.
- ↑ eventhorizon5/skyscraper · GitHub (англ.). Дата обращения: 7 февраля 2023.
- ↑ SummoningWars/summoning-wars · GitHub (англ.). Дата обращения: 7 февраля 2023.
- ↑ SuperRacing download · SourceForge.net (англ.). Дата обращения: 7 февраля 2023.
- ↑ Trinity Reign download · SourceForge.net (англ.). Дата обращения: 7 февраля 2023.
- ↑ Ember client · Worldforge - the Free MMORPG project (англ.). Дата обращения: 7 февраля 2023.
- ↑ 1 2 3 4 5 6 7 8 Projects · OGRE (англ.). Дата обращения: 7 февраля 2023.
- ↑ 1 2 3 4 5 6 7 8 9 Engine · OGRE · Technologies · SteamDB (неопр.). Дата обращения: 7 февраля 2023.
- ↑ Snake Game On Spheres (англ.). Дата обращения: 3 июля 2011. Архивировано из оригинала 18 июня 2012 года.
СсылкиПравить
- Официальный сайт (англ.)
- Неофициальный русскоязычный сайт (рус.)
- Блог Стива Стритинга, основателя OGRE 3D (англ.)
- Обзор и описание движка его пользователями на сайте DevMaster.net (англ.)
- Emma3D, an internet-based media framework using OGRE (англ.)
- Блог об Ogre (рус.)
- Использование Ogre в веб-разработке (рус.)
- Цикл статей посвященных OGRE3D (рус.)
- Список игр, использующих OGRE, на сайте SteamDB