Comenzando Irrlicht

Ahora es necesario que el compilador ubique irrlicht.h e irrlicht.lib, para eso se va a herramientas->opciones->Proyectos y Soluciones->Archivos de Inclusión, se agrega el path de librerías Irrlicht (c:\Irrlicth\include\ por ejemplo) y en Archivos de Biblioteca los binarios (c:\Irrlicth\lib\win32-visualstudio\ por ejemplo).

Screen VSE

Cuarto agregamos el nuevo archivo de código fuente (explorador de soluciones->Archivos Codigo Fuente->Visual C++->código->Archivo C++ (.cpp) ) con el nombre que sea y es hora de empezar a codear.

Screen VSE

//Sección de Inclusión
#include <irrlicht.h>

using namespace irr;

using namespace core;
using namespace scene;
using namespace video;
using namespace io;
using namespace gui;

#pragma comment(lib, "Irrlicht.lib")

Irllicht.h contiene todas las inclusiones necesarias para utilizar el SDK (inclusive librerías del sistema), por lo que en cada proyecto bastara incluir esta librería. Por su parte Irrlicht.lib permite enlazar con irrlicht.dll, que el es la librería dinámica que debe estar presente a la hora de ejecutar las aplicaciones bien sea en /Windows/system32/ (poco recomendado) o en el directorio donde se encuentra la aplicación (recomendado).

Irrlicht está dividido en diferentes nombres de espacio a manera de organizar las diferentes clases, constantes y funciones (bueno funciones sueltas no tiene hasta donde he podido observar), la principal es irr que contiene a todos los otros nombres de espacio:

  • irr::core contiene las clases básicas como vectores, planos, arreglos, listas y tipos propios de datos.
  • irr::scene todo lo relacionado con escenas y modelos, las facilidades para cargar modelos, octress, billboards, etc. Hay un nombre de espacio dentro de este irr::scene::quake3 que trata todo acerca de escenas bsp tomado y adaptado del código liberado de quake de hace unos años.
  • irr::video contiene todas las clases relacionadas con el render 2d y 3d mediante acceso a los drivers de video.
  • irr::io conjunto de interfaces y clases para el acceso a archivos, principalmente con las funcionalidades para cargar modelos y acceder a scripts xml.
  • irr::gui son las clases del sistema de interfaz gráfica de usuario que viene incorporada en irrlicht.

El uso de los nombres de espacio es a voluntad, aún así si no se incluyen es muy engorroso escribir a cada paso cosas como irr::video::IVideoDriver en vez de referirse directamente a iVideoDriver . En este ejemplo se incluyen todos pero solo se usan unos pocos.

1 2 3

Compartir esta entrada

DiggReddit
  • http://www.blueraven.com.mx Xbalanqué

    Pues la información ha sido de mucha utilidad, no se diga el archivode muestra; de verdad muchas gracias, me he estado quebrando todo el día la cabeza con el programa y por fin empiezo a ver claro de que se trata. Ahora estoy intentando agregarle las colisiones a la cámara.

  • Mr.x

    pero entonces ..sirve para hacer un juego o no…porque es en esta web diccen que es super facil:

    http://www.devmaster.net/engines/

    la verdad me llama la atencion..pero no se si un novato en progracion puede lograr algo con Irrlicht.
    porque darbasic pro me frustro con todos lo aditamentos que quieren que compres para lograr la experencia completa…

  • http://black-byte.com/ jotatsu

    irrlicht es sencillo pero aun así requiere conocimientos de programación. La diferencia con otros motores (ogre por ejemplo) es que no se necesita tener tan avanzados conocimientos (plantillas, patrones, etc). Aún así como muchos motores open algunas características están en desarrollo, es decir, no completamente implementadas.

  • Mr.zombie

    Esto tutorial esta bueno..pero se te olvido poner COMO COMPILAR???
    y la parte donde debes configuar el IDE necesita ser un poco mas claro..para los novatos.
    por cierto ..que libros recomendarias para empezar ..gracias

  • Pingback: Comenzando con Irrlicht « K A L A N()

  • Dérsir

    Tengo un problema y no sé ya dónde buscar :( Hago todo tal cual lo explicas, genero la solución con Visual C++ 2005 Express y según parece no hay problemas. De hecho, pone “1 correctos, 0 incorrectos, 0 omitidos”. Me genera un ejecutable, navego hasta su ruta, lo ejecuto y…no sale nada. Tengo en su misma ruta el archivo “irrlicht.dll” de “Win32-VisualStudio”, no lanza mensajes de error, simplemente no hace nada. Si lo ejecuto desde consola de comandos simplemente vuelve a mostrarme el prompt en la línea siguiente, como si el programa estuviera vacío. Tengo configuradas correctamente las rutas en Visual C++, ¿qué puede estar fallando? Gracias :)

  • http://black-byte.com/ jotatsu

    Saludos, intenta compilar alguno de los ejemplos del SDK a ver si obtienes el mismo resultado.

  • Versu

    Gracias por el tutorial. ¿No tendrás algo mas por casualidad? ¿La siguiente parte? Por cierto, en la versión 1.7.1 cuando se intenta compilar tu “hola mundo” con GCC da error en la creación del device, IrrlichtDevice *device, donde pones dimension2d debe ser u32 en vez de s32.
    También sería interesante que explicaras como creaste el modelo, el .x y otros tipos o algo mas sobre esto.
    Saludos!!