Diferencia entre revisiones de «Ogre»

(Etiqueta: no tiene enlaces internos)
(Etiqueta: no tiene enlaces internos)
Línea 1: Línea 1:
{{Software|nombre=Ogre|logo=Ogre_17_logo.gif|fecha de creación=|versiones=Última versión 1.7.0 (Cthugha)|sitio web=[http://www.ogre3d.org/ Sitio web oficial] }}
+
{{Software|nombre=Ogre|logo=Ogre_17_logo.gif|fecha de creación=|versiones=Última versión 1.7.0 (Cthugha)|sitio web=[http://www.ogre3d.org/ Sitio web oficial]}}
  
 
'''
 
'''
Línea 5: Línea 5:
 
'''
 
'''
  
OGRE  (acrónimo del inglés Object-Oriented Graphics Rendering Engine) es un motor de renderizado Gráfico orientado a objetos, escrito en el lenguaje de programación [http://www.ecured.cu/index.php/C%2B%2B C++].
+
OGRE  (acrónimo del inglés Object-Oriented Graphics Rendering Engine) es un motor de renderizado Gráfico orientado a objetos, escrito en el lenguaje de programación [[C++]].
  
 
Sus bibliotecas evitan la dificultad de la utilización de capas inferiores de librerías gráficas como OpenGL y Direct3D, y además, proveen una interfaz basada en objetos del mundo y otras clases de alto nivel.
 
Sus bibliotecas evitan la dificultad de la utilización de capas inferiores de librerías gráficas como OpenGL y Direct3D, y además, proveen una interfaz basada en objetos del mundo y otras clases de alto nivel.
Línea 11: Línea 11:
 
El motor es software libre, licenciado bajo MIT y con una comunidad muy activa. Incluso ha sido utilizado en algunos videojuegos comerciales, como por ejemplo Ankh y Earth Eternal.
 
El motor es software libre, licenciado bajo MIT y con una comunidad muy activa. Incluso ha sido utilizado en algunos videojuegos comerciales, como por ejemplo Ankh y Earth Eternal.
  
 +
 +
== '''Estructura de Ogre''' ==
 +
 +
 +
La idea de engine 3D es proveer una manera fácil y rápida de dibujar las cosas en pantalla, ahorrandose todos los pasos de cofiguración de APIs de más bajo nivel como DirectX o OpenGL. Gracias a la estructura de Ogre, esto es muy sencillo.
 +
 +
Para comenzar, existen 3 elementos básicos y fundamentales en Ogre. Los SceneManagers, los SceneNodes y las Entitys.
 +
 +
Las Entitys representan todas las cosas que pueden dibujarse en la pantalla. Ya sea un auto o un robot o lo que sea, todas esas cosas son Entitys. No son entidades por ejemplo las luces, las camaras, etc.
 +
 +
Podemos ver a las Entitys como la abstracción que representa a un objeto pantalla.
 +
 +
Algo que cabe mencionar es que la la orientación y la ubicación de la Entity no son características de ella. Esas características son manejadas en otra estructura, los SceneNodes, que están especialmente diseñados para realizar estas tareas.
 +
 +
Por lo tanto, la única forma de modificar las características espaciales de una Entity es agregándolo a un SceneNode.
 +
 +
La clase Entity es muy grande y compleja y los detalles de cada uno de sus metodos pueden revisarlos en la documentación de Ogre o en los tutoriales.
 +
 +
Los SceneNodes son los que se encargan de las características de las Entitys. Los SceneNodes no son una cosa que se dibuje en pantalla, sino que lo único que hace es ser una especie de contenedor de Entidades y otras cosas útiles como cámaras o luces.
 +
 +
Los SceneNodes tambien ser padres de otros Scenenodes, con lo que se puede formar una jerarquía de nodos. Cabe mencionar que las posiciones de los SceneNodes son relativas a las de sus padres. De esta forma, si un nodo llamado NodoB, que tiene la posicion (3,0,0) y su padre, llamado NodoA que es el nodo raiz y que por lo tanto tiene sus coordenadas en escala absoluta, tiene la posición (2,0,0), la ubicación absoluta del NodoB será la (5,0,0)
 +
 +
Por último, los SceneManagers son los encargados de seguirle la pista a todas las cosas que se dibujan en la pantalla. Pueden verse tambien como el encargado de todo lo que tenga que ver on el dibujo del mundo. Poseen el nodo raíz de la jerarquía de SceneNodes, de forma que a partir de él se puede llegar a cualquier Entity en la pantalla.
 +
 +
Los SceneManagers son los encargados de el dibujo del terreno, por lo que en él se pueden especificar las características del mundo que se dibujara. Por ejemplo, si se va a realizar un juego de interiores, el SceneManager para ellos es distino que el para un juego de exteriores.
 +
 +
Desde el punto de vista de los patrones en Ing. de Software, los SceneManagers son fábricas de todos los elementos de una escena.
  
 
==Enlaces externos==
 
==Enlaces externos==
 
   
 
   
[http://www.ogre3d.org/ Sitio web oficial]  
+
[http://www.ogre3d.org/ Sitio web oficial]<br>
 
[http://www.ogre3d.org/wiki Ogre Wiki]  
 
[http://www.ogre3d.org/wiki Ogre Wiki]  
  
 
[[Category:Ciencias_informáticas]]
 
[[Category:Ciencias_informáticas]]

Revisión del 08:09 22 sep 2010

Ogre
Ogre

Versiones:
Última versión 1.7.0 (Cthugha)
Sitio Web:
Sitio web oficial



Ogre

OGRE (acrónimo del inglés Object-Oriented Graphics Rendering Engine) es un motor de renderizado Gráfico orientado a objetos, escrito en el lenguaje de programación C++.

Sus bibliotecas evitan la dificultad de la utilización de capas inferiores de librerías gráficas como OpenGL y Direct3D, y además, proveen una interfaz basada en objetos del mundo y otras clases de alto nivel.

El motor es software libre, licenciado bajo MIT y con una comunidad muy activa. Incluso ha sido utilizado en algunos videojuegos comerciales, como por ejemplo Ankh y Earth Eternal.


Estructura de Ogre

La idea de engine 3D es proveer una manera fácil y rápida de dibujar las cosas en pantalla, ahorrandose todos los pasos de cofiguración de APIs de más bajo nivel como DirectX o OpenGL. Gracias a la estructura de Ogre, esto es muy sencillo.

Para comenzar, existen 3 elementos básicos y fundamentales en Ogre. Los SceneManagers, los SceneNodes y las Entitys.

Las Entitys representan todas las cosas que pueden dibujarse en la pantalla. Ya sea un auto o un robot o lo que sea, todas esas cosas son Entitys. No son entidades por ejemplo las luces, las camaras, etc.

Podemos ver a las Entitys como la abstracción que representa a un objeto pantalla.

Algo que cabe mencionar es que la la orientación y la ubicación de la Entity no son características de ella. Esas características son manejadas en otra estructura, los SceneNodes, que están especialmente diseñados para realizar estas tareas.

Por lo tanto, la única forma de modificar las características espaciales de una Entity es agregándolo a un SceneNode.

La clase Entity es muy grande y compleja y los detalles de cada uno de sus metodos pueden revisarlos en la documentación de Ogre o en los tutoriales.

Los SceneNodes son los que se encargan de las características de las Entitys. Los SceneNodes no son una cosa que se dibuje en pantalla, sino que lo único que hace es ser una especie de contenedor de Entidades y otras cosas útiles como cámaras o luces.

Los SceneNodes tambien ser padres de otros Scenenodes, con lo que se puede formar una jerarquía de nodos. Cabe mencionar que las posiciones de los SceneNodes son relativas a las de sus padres. De esta forma, si un nodo llamado NodoB, que tiene la posicion (3,0,0) y su padre, llamado NodoA que es el nodo raiz y que por lo tanto tiene sus coordenadas en escala absoluta, tiene la posición (2,0,0), la ubicación absoluta del NodoB será la (5,0,0)

Por último, los SceneManagers son los encargados de seguirle la pista a todas las cosas que se dibujan en la pantalla. Pueden verse tambien como el encargado de todo lo que tenga que ver on el dibujo del mundo. Poseen el nodo raíz de la jerarquía de SceneNodes, de forma que a partir de él se puede llegar a cualquier Entity en la pantalla.

Los SceneManagers son los encargados de el dibujo del terreno, por lo que en él se pueden especificar las características del mundo que se dibujara. Por ejemplo, si se va a realizar un juego de interiores, el SceneManager para ellos es distino que el para un juego de exteriores.

Desde el punto de vista de los patrones en Ing. de Software, los SceneManagers son fábricas de todos los elementos de una escena.

Enlaces externos

Sitio web oficial
Ogre Wiki