descargar la demo y el código fuente
VOLVER A EL INDICE TUTORIAL
En el último tutorial hemos añadido un modelo 3D a la pantalla. Sin embargo, como no había luces creados, tuvimos que desactivar la iluminación en el modelo completo, de lo contrario habría aparecido negro. En este tutorial vamos a añadir una luz a la escena
ApplicationManager.h /ApplicationManager.cpp
El ApplicationManager gana dos nuevas variables:. La luz 1 y cartelera. La luz es un punto en la escena que es una fuente de luz.
No es directamente visible en sí - la luz sólo es visible en la superficie de un modelo 3D. Por lo que podemos ver donde la luz está en la escena vamos a crear un cartel, que es un rectángulo plano que siempre se enfrenta a la cámara, y concedemos la luz como un niño de la cartelera.
Al conectar la luz como un hijo de la cartelera de la luz se moverá donde quiera que los movimientos de la cartelera. Este tipo de matriz de fijación /niño es bastante común en motores 3D, ya que permite a un grupo de objetos a ser modificado a la vez.
Usted puede usar esto para adjuntar una espada de una mano los jugadores, por ejemplo, y luego la espada le pegan con el jugador mientras se movía alrededor.
En la función de inicio hacemos una pequeña modificación a la llamada a las addCameraSceneNodeFPS función. El modelo Ninja 3D es bastante pequeña, y la cámara se mueve demasiado rápido en relación con el modelo. Así que aquí hemos anulado algunos de los parámetros por defecto para frenar la cámara hacia abajo.
añadir el modelo 3D ninja para la escena usando el mismo código que en el último tutorial.
La única diferencia es que ahora ya no desactivamos la iluminación.
A continuación, cree una nueva cartelera llamando a la función ISceneManager addBillboardSceneNode. Una vez más nos sobreescribir algunos de los parámetros por defecto para hacer la valla un poco más pequeño, y más en línea con el tamaño del modelo ninjas 3D.
Nos llaman la función setMaterialType y suministramos la bandera EMT_TRANSPARENT_ADD_COLOR para indicar que los colores en la textura asignado a la cartelera se añadirá a la escena, que hace que las partes negras de la textura transparente.
La función setMaterialTexture continuación, se utiliza para asignar una textura. El primer parámetro define la capa de la textura. Suministramos 0 porque estamos asignando esto como la primera (y única) textura. El segundo parámetro es l