*   >> Lectura Educación Artículos >> science >> programación

Haciendo un juego 3D con Ogre - Apertura de una Window

es una forma muy común de generar una semilla aleatoria.

 bool OgreEngineManager :: inicio ( std const :: pluginFileName cuerda, const nombrearchivoconfig std :: string, const LogFileName std :: string) {//semilla del srand generador de números aleatorios ((sin firmar) Tiempo (NULL)); 

Aquí vamos a crear un nuevo objeto de raíz . Este va a ser el primer paso en la inicialización del motor de Ogre. El pluginFileName es el nombre del archivo de texto que contiene los nombres de los plugins Ogre que se utilizarán.

El nombrearchivoconfig es el nombre de un archivo que Ogre utilizará para guardar los detalles acerca de la resolución de procesador y la pantalla. El LogFileName es el nombre de un archivo de registro que Ogre escribirá a

 root.reset (nueva raíz (pluginFileName, nombrearchivoconfig, LogFileName));. 

Este código hace que Ogre para mostrar un cuadro de diálogo con el opciones de gráficos. .

Si el jugador se cancela fuera del cuadro de diálogo volvemos falsa, lo que hará que la aplicación para salir

 si return false (Configurar ()!); 

se especifica el número por defecto de mipmaps. Puede encontrar más información sobre mipmaps aquí

 TextureManager :: getSingleton () setDefaultNumMipmaps 

(5);..

Llamamos a los SetupInputDevices funcionan para inicializar OIS (Sistema de entrada orientada a objetos), que es un biblioteca externa que se ha convertido en el estándar de facto para el acceso a los dispositivos de entrada en Ogre

 SetupInputDevices ();. 

Los recursos Ogre se cargan. Las muestras Ogre cargan sus recursos de un archivo de texto, pero prefieren mantener estos valores en el código fuente (que es una cosa menos de que puede ser modificado por el usuario final, por lo que es una cosa menos de que salga mal).

Para esta demo no vamos a cargar en realidad ningún recurso, pero esto será importante más adelante

 SetupResources ();. 

El OgreEngineManager necesita recibir notificaciones de dos eventos. Ya que extiende la clase FrameListener, La función OgreEngineManagers frameStarted se llama una vez por cuadro. Y extendiendo la clase WindowEventListener nos notifica del cierre de la ventana con la función windowClosed.

Sin embargo, estas funciones no se activan de forma automática - primero tenemos que registrar el OgreEngineManager con los objetos apropiados

 Raíz> addFrameListener (this);. WindowEventUtilities :: addWindowEventListener (ventana, este);. 

Finalme

Page   <<  [1] [2] [3] [4] [5] [6] >>
Copyright © 2008 - 2016 Lectura Educación Artículos,https://lectura.nmjjxx.com All rights reserved.