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

Inicialización
[General]

Lo primero que se ha de inicializar es la librería en sí. El parámetro LOV_RELEASE_MODE indica que se utiliza la librería en un proyecto acabado. Por el contrario es recomendable utilizar LOV_DEBUG_MODE durante el desarrollo del proyecto, de esta forma se creara un fichero llamado debug.log con información detallada acerca de la ejecución del proceso.

// Inicializamos la libreria
LooverLib::Init (LOV_DEBUG_MODE); 

El siguiente paso es inicializar la ventana y el render. Para ello, existen dos métodos, la diferencia entre ambos radica en dejar o no que LooverLib se encargue de crear la ventana de la aplicación y de inicializar el render. Es decir, la librería da la opción de utilizar o no la clase LOV_Window para crear la ventana y el Init de la clase LOV_Render para inicializar Direct3D.

De esta forma, si deseas desentenderte de crear una ventana de windows, gestionar los mensajes e inicializar Direct3D, solo tienes que usar los métodos que proporciona LooverLib. Por ejemplo, para crear una ventana a 640x480x32 con el vsync desactivado en modo ventana:

LOV_Window              Window;
LOV_Render              Render;
if (!Window             .Init ("Prueba", 640, 480, 32, 0, 0))   return 0;
if (!Render             .Init (&Window))                        return 0;

Si por el contrario tu aplicación necesita un control total sobre la ventana y la inicialización de Direct3D y solo deseas usar LooverLib para el dibujo 2d, bastará con que a la hora de inicializar el render de LooverLib pases como parámetros los dos punteros principales de Direct3D (puntero a D3D y puntero al device).

LOV_Render              Render;
if (!Render             .Init (mDirect3D, mDevice))             return 0;           

El siguiente paso es inicializar aquellos administradores que vayamos a necesitar en nuestro proyecto. Basta con inicializar sólo aquellos que realmente tengamos intención de usar.

LOV_ImageManager        ImageManager; 
LOV_SurfaceManager      SurfaceManager;
LOV_AnimationManager    AnimationManager;
LOV_FontManager         FontManager;
LOV_Entity2dManager     Entity2dManager;

if (!ImageManager       .Init ())                               return 0;
if (!SurfaceManager     .Init (&ImageManager, &Render))         return 0;
if (!AnimationManager   .Init (&ImageManager, &SurfaceManager)) return 0;
if (!FontManager        .Init (&ImageManager, &SurfaceManager)) return 0;   
if (!Entity2dManager    .Init (&Render))                        return 0;

Por último, una vez terminada la ejecución principal del programa (o a mitad del mismo si fuera necesario) es recomendable liberar la memoria usada por los administradores.

Entity2dManager     .End();
FontManager         .End();
AnimationManager    .End();
SurfaceManager      .End();
ImageManager        .End();

Render              .End();
Window              .End();

Y finalmente, liberar la propia librería

LooverLib::End ();

Ejemplos:


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