OGRE
![]() | |
![]() ![]() | |
Tipus | Motor de gràfics en 3D |
---|---|
Versió estable | 1.7.3 (Cthugha) / 8 de maig de 2011 |
Llicència | MIT[1] |
Característiques tècniques | |
Sistema operatiu | Microsoft Windows, Linux, macOS, Android i iOS ![]() |
Plataforma | Multiplataforma |
Escrit en | C++ |
Format de fitxer de lectura | |
Format de fitxer d'escriptura | |
Equip | |
Desenvolupador(s) | L'equip d'OGRE |
Fonts de codi | |
Més informació | |
Lloc web | http://www.ogre3d.org/ |
Stack Exchange | Etiqueta ![]() |
SourceForge | ogre ![]() |
Guia d'usuari | Guia d'usuari ![]() |
| |
OGRE (Object-Oriented Graphics Rendering Engine) és un motor de renderització de 3D flexible orientat a escenes (en comptes de motor de videojoc) escrit en C++ i dissenyat per fer més fàcil i intuïtiu per als desenvolupadors d'aplicacions que utilitzen per produir acceleració per maquinari de gràfics 3D. La biblioteca de classes resumeix els detalls de l'ús de les biblioteques de sistema subjacents, com el Direct3D i OpenGL i proporciona una interfície basada en objectes del món i altres classes d'alt nivell.
L'OGRE té una comunitat molt activa, i és el projecte del mes de SourceForge en el març del 2005.[2] S'ha utilitzat en alguns videojocs comercials, com ara Ankh, Torchlight i Garshasp.
La versió 1.0.0 ("Azathoth") es publicà el febrer de 2005. L'actual versió en la sèrie 1.x.y és la 1.7.3 ("Cthugha"), publicat el 8 de maig de 2011. Publicat sota els termes de la llicència MIT[1] i anteriorment amb una modificació de la GNU Lesser General Public License (LGPL), el motor és programari lliure. La modificació d'aquesta llicència permet als usuaris enllaçar estàticament la biblioteca en els mateixos termes com a enllaç dinàmic, a través d'una distinció feta per la LGPL.
Com indica el seu nom, OGRE és "només" un motor de renderització. Com també, el seu propòsit principal és proporcionar una solució general per a la representació de gràfics. Tot i que també ve amb altres instal·lacions (les classes vector i matriu, la gestió de memòria, etc.), es consideren complementaris. No és una solució tot-en-un en termes del desenvolupament de videojoc o simulació, ja que no es proporciona suport d'àudio o la física, per exemple.
Generalment, això es considera com el principal inconvenient de l'OGRE, però també podria ser vist com una característica del motor. L'elecció de l'OGRE com a motor gràfic permet als desenvolupadors la llibertat d'usar qualsevol tipus de física, d'entrada de maquinari, l'àudio i altres biblioteques que permeten que l'equip de desenvolupament de l'OGRE se centri en els gràfics en comptes de distribuir els seus esforços entre diversos sistemes. OGRE dona suport explícitament per a les llibreries d'OIS, SDL i CEGUI i inclou un toolkit de Cg.
Com que en la versió 1.7.0 d'Ogre es comercialitza sota els termes de la MIT License.[1] Les primeres versions de l'OGRE van ser publicades en una llicència dual (un amb la LGPL, i l'altra anomenada OGRE Unrestricted License (OUL)), perquè sigui possible ser elegit per al desenvolupament de videoconsoles, ja que la majoria dels editors no els agraden els termes de la llicència copyleft.
Prestacions
[modifica]![](http://178.128.105.246/content-http-upload.wikimedia.org/wikipedia/commons/thumb/5/55/OGRE_screenshot_01.png/220px-OGRE_screenshot_01.png)
L'OGRE té un disseny orientat a objectes amb una arquitectura de connectors que permet l'afegiment fàcil de noves característiques, per la qual cosa és altament modular.
L'OGRE és un motor basat en gràfics d'escenes, amb suport per a una àmplia varietat d'administradors d'escenes, sobretot d'octrees, BSP i administració d'escenes paisatge de paginació, juntament amb un administrador d'escenes en fase beta basat en portals que és en desenvolupament.
L'OGRE és totalment multiplataforma, amb suport per a l'OpenGL i Direct3D. Es pot fer renderització del mateix contingut en diferents plataformes sense que el creador de contingut hagi de tenir en compte les diferents capacitats de cada plataforma. Això redueix la complexitat de la implementació d'un videojoc en diversos sistemes. Actualment existeixen binaris precompilats per a Linux, Mac OS X, i totes les versions importants de Windows.
L'OGRE també suporta programes de Vértexs i Fragments juntament amb shaders personalitzats escrits en GLSL, HLSL, Cg i assemblador.
L'administrador d'escenes de paisatges té suport per a nivell de detall progressiu, que pot ser creat de manera automàtica o manual.
El motor d'animació té suport complet per al "skinning", a través de diverses postures completes.
L'OGRE també té un administrador composició amb llenguatge script i postprocessament de vídeo a pantalla completa per a efectes com el HDR, blooming, saturació, brillantor, blurring i soroll. També hi ha un sistema de partícules amb renderització extensible i efectors i emissors personalitzables.
Les biblioteques també disposen de depuració de memòria i recursos de càrrega dels arxius.
Hi ha eines exportadors de contingut per la majoria de modelejadors de 3D incloent-hi el 3D Studio Max, Maya, Blender, LightWave, Milkshape, Sketchup i més.
Una llista completa de les característiques proporcionades per l'OGRE, es pot trobar en el lloc web d'OGRE3d.[3]
Esdeveniment del Google Summer of Code
[modifica]OGRE va obtenir sis entrades per a la Google Summer of Code del 2006 per millorar el motor existent i afegir noves funcions. Aquestes entrades van ser les següents:
- Eina per a la solució tot-en-un per als artistes
- RmOgreExporter (v2), FxOgreExporter
- Instàncies, Representació de multituds
- Estenent, Testeig i documentació pel Sistema de Mapeig d'Ombres
- Administrador d'Escenes
- Núvols de fons
En els anys següents, molts altres projectes del Google Summer of Code s'han realitzat pel motor Ogre.[4]
Noms de versions
[modifica]Els noms de la branca de versions és, Hastur per 0.15.x, Azathoth per 1.0.x, Dagon per 1.1.x i 1.2.x, Eihort per 1.3.x i 1.4.x, Shoggoth per 1.5.x i 1.6.x, porten el nom dels membres d'una antiga raça de déus temibles anomena els Grans Antics de la mitologia Cthulhu de H. P. Lovecraft.
Història de publicacions
[modifica]Una breu història d'OGRE, i les seves fites:
- Al voltant del 1999
- Sinbad s'adona que el seu projecte de 'DIMClass', un projecte per fer fàcil d'utilitzar la llibreria orientada a objectes de Direct3D, s'ha tornat tan abstracta que realment no només està basada en Direct3D. Comença la planificació d'una biblioteca més ambiciosa que podria ser activa i de plataforma independent.
- 25 de febrer de 2000
- Es registra el projecte a Sourceforge, es posa com a nom OGRE. No s'inicia el desenvolupament a causa d'altres compromisos, però es produeix amb molta reflexió.
- Febrer de 2005
- Es comercialitza l'Ogre v1.0.0 "Azathoth" - revisió de recursos de sistema, tampons de maquinari píxel, HDR, CEGUI, exportador XSI
- Març del 2005
- Ogre és el 'Projecte del Mes' a Sourceforge
- 4 de novembre 2005
- Es publica l'Ankh com a primer producte comercial utilitzant l'Ogre
- 7 de maig de 2006
- Es publica oficial l'Ogre 1.2 "Dagon"
- 25 de març de 2007
- Es publica oficial l'Ogre 1.4 "Eihort"
- 28 d'agost de 2008
- Es publica oficial l'Ogre 1.6 "Shoggoth" (Actualment en versió estable 1.6.5)
- 28 de febrer de 2010
- Es publica oficial l'Ogre 1.7 "Cthugha" (Actualment en versió estable 1.7.3)
Versions d'OGRE i embolcalls
[modifica]Hi ha una sèrie de "bindings" d'OGRE en altres llenguatges i frameworks incloent-hi el Perl, PureBasic, Python-Ogre per a Python, Ogre.rb per al Ruby, Ogre4j per al Java i OgreDotNet, GMOGRE per al Game Maker i MOGRE per al .NET.
Hi ha també alguns editors de nivells de programari lliure per a l'Ogre, com l'Ogitor[5]
Videojocs utilitzant l'OGRE
[modifica]Videojocs de codi obert
[modifica]- Awakened
- Facade Arxivat 2012-02-15 a Wayback Machine.
- Rigs of Rods
- Summoning Wars
- Trinity Reign
- Walabers Trampoline Arxivat 2010-11-30 a Wayback Machine.
- WorldForge Client de 3D d'Ember
- The Burrow
Videojocs amb llicències de propietat
[modifica]- Ankh
- Ankh: Heart of Osiris
- Earth Eternal
- Garshasp: The Monster Slayer
- Jack Keane
- Motorm4x
- Next Life
- Nimbus
- Pacific Storm
- Raindrop
- Roblox
- Snakeworlds
- The Dead Linger (TDL)
- Torchlight
- Venetica
- Zero Gear
- Zombie Driver
Referències
[modifica]- ↑ 1,0 1,1 1,2 OGRE3d.org
- ↑ «SourceForge: Project of the Month».
- ↑ OGRE3d.org
- ↑ «OGRE’s Latest Release Features Google Summer of Code Projects».
- ↑ «Ogitor home site». Arxivat de l'original el 2011-12-27. [Consulta: 7 gener 2012].
Bibliografia
[modifica]- Felix Kerger, OGRE 3D 1.7 Beginner's Guide, Packt Publishing, 2010 - ISBN 1849512485
- Gregory Junker, Pro OGRE 3D programming, Apress, 2006, ISBN 1590597109
Enllaços externs
[modifica]- Lloc web oficial d'OGRE 3D (anglès)
- Blog de Steve Streeting, creador d'OGRE 3D (anglès)
- Perquè Ogre3D dona ganes d'usar-lo? Arxivat 2012-01-14 a Wayback Machine. (anglès)
- Àlbum de Flickr Arxivat 2012-02-29 a Wayback Machine. amb moltes imatges de projectes d'Ogre (anglès)