Página principal | Módulos | Lista de componentes | Miembros de las clases | Ejemplos

Consejos acerca de cómo usar LooverLib y uso de LOV_Entity2dManager (entidades)
[General]

Ciertos métodos de LooverLib como LOV_Render::SetTransform() poseen una gran cantidad de parámetros y son bastante aparatosos de usar directamente en un proyecto a la hora de dibujar cada objeto gráfico.

Por ejemplo, para dibujar un simple fondo podríamos necesitar:

LOV_Matrix mMatrix;
Render->SetTransform        (0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 1, mS->GetWidth (), mS->GetHeight (), &mMatrix);
Render->SetRainbow          (LOV_OPAQUE, 255, 255, 255, 255, 0, 0, 0, 255, 0, 0);
Render->BlitSurface         (mS);

Lo que debemos tener en cuenta es que LooverLib da la posibilidad de gestionar un nivel de abstracción más bajo que el de una librería de juegos, para que de este modo el usuario tenga un mayor control sobre cualquier elemento 2d.

Así mismo LooverLib está altamente enfocado a la posibilidad del uso de una herramienta más intuitiva y con la que se puede gestionar estos métodos automáticamente y de manera muy sencilla. Nos referimos al uso de LOV_Entity2dManager, que se encarga de gestionar las entidades. Pero, ¿qué es una entidad?

Una entidad es la abstracción superior de cualquier objeto de un juego. Gracias a esta abstracción se simplifica en gran medida la programación de aplicaciones multimedia. Por ejemplo, el personaje de un juego puede definirse como una entidad con una estructura que contiene un puntero a la imagen, su posición, escalado, cantidad de tinte, rotación, cantidad de fade, filtro, etc.

Es decir, una entidad contiene no solo el gráfico (en nuestro caso un objeto LOV_Surface ó LOV_Animation) sino también todos los atributos que hacen que aparezca en pantalla de una forma u otra.

De esta forma separamos lo que es el gráfico en sí, de sus atributos. Podemos tener solamente una imagen y sin embargo una multitud de entidades con diferentes parámetros pero que comparten ese gráfico. Por ejemplo, para dibujar las balas lanzadas por una metralleta, cada una de ellas podría ser una entidad, compartiendo el dibujo de la bala, pero pudiendo tener distinta posición, rotación, color, etc.

Se aconseja por tanto, que para el uso de superficies, scrolls, animaciones, fuentes y primitivas, se utilice LOV_Entity2dManager a no ser que el usuario quiera acceder a un nivel de abstracción menor (por ejemplo para programar su propio manager de entidades).

Nota: la mayor parte de los ejemplos que acompañan a LooverLib usan intensivamente entidades.


Generado el Tue Feb 1 19:57:15 2005 para LooverLib por  doxygen 1.3.9.1
pixel art games