jueves, 17 de enero de 2008

OGRE (IV): ¿Cómo empezar?

Cómo se ha comentado, OGRE da mucho juego, ya que permite la integración con OpenGL y DirectX. Además, se pueden desarrollar aplicaciones tanto para Windows como para Linux y MacOS X. Por ello, se presentan varios tutoriales sobre cómo integrar OGRE con entornos de desarrollo como Visual Studio o Eclipse en distintas plataformas.

OGRE Render Window

Continuar leyendo...
Integración con Visual C++ Express 2005 en Windows XP

Paso 1: Instalar Visual C++ Express 2005

Para instalarlo el primer paso es descargar el programa. Se puede hacer desde aquí:

http://www.microsoft.com/spanish/msdn/vstudio/express/default.mspx

Aunque Visual C++ 2005 en su versión Express es gratuito su uso, se debe registrar la copia de forma gratuita si se quiere seguir usándola pasados 30 días. Además es necesario actualizarlo con el Service Pack 1 (VS80sp1-KB926748-X86-INTL.exe) que se puede descargar desde aquí:

http://www.microsoft.com/downloads/details.aspx?FamilyId=
7B0B0339-613A-46E6-AB4D-080D4D4A8C4E&displaylang=es


Paso 2: Instalar Microsoft Platform SDK.

El siguiente paso es instalar el Microsoft Platform SDK, que es el kit de desarrollo de aplicaciones para Windows. Se puede descargar desde aquí:

http://www.microsoft.com/downloads/details.aspx?FamilyId=
A55B6B43-E24F-4EA3-A93E-40C0EC4F68E5&displaylang=en


Paso 3: Actualizar los directorios de Visual C++

Se pueden encontrar las listas de directorios de Visual C++ siguiendo la siguiente ruta de menús: Herramientas -> Opciones -> Proyectos y soluciones -> Directorios de VC++. Allí se debe añadir los siguientes:

Archivos ejecutables: C:\Archivos de programa\Microsoft Platform SDK\Bin
Archivos de inclusión: C:\Archivos de programa\Microsoft Platform SDK\Include
Archivos de inclusión: C:\Archivos de programa\Microsoft Platform SDK\Include\mfc
Archivos de biblioteca: C:\Archivos de programa\Microsoft Platform SDK\Lib

Paso 4: Actualizar el fichero ‘corewin_express.vsprops’

Hay que editar el fichero corewin_express.vsprops. Éste se encuentra en C:\Archivos de programa\Microsoft Visual Studio 8\VC\VCProjectDefaults. En el fichero se debe sustituir la siguiente cadena de texto

AdditionalDependencies="kernel32.lib"

por

AdditionalDependencies="kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib"

Paso 5: Habilitar el asistente de creación de aplicaciones

En Visual C++ Express, el asistente de aplicaciones Windows Win32 está deshabilitado. Para habilitarlo se necesita editar el archivo ‘AppSettings.htm’:

C:\Archivos de programa\Microsoft Visual Studio 8\VC\VCWizards\AppWiz\Generic\Application\html\3082\


Con el editor de texto se debe comentar las líneas de la 441 a la 444, poniendo // al principio de las estas:

// WIN_APP.disabled = true;
// WIN_APP_LABEL.disabled = true;

// DLL_APP.disabled = true;

// DLL_APP_LABEL.disabled = true;

Paso 6: Instalar el Directx SDK

Para instalarlo primero hay que descárgaselo de la siguiente dirección:

http://www.microsoft.com/downloads/details.aspx?FamilyId=
4B78A58A-E672-4B83-A28E-72B5E93BD60A&displaylang=en


Los directorios del Directx SDK deben estar en lo alto de las listas de librería e inclusión respectivamente, sino, podrían producirse errores durante la compilación. Al tener instalado ya Visual Studio esto debería hacerse automáticamente, pero no está de más comprobarlo:

Archivos de biblioteca: C:\Archivos de programa\Microsoft DirectX SDK\Lib\x86
Archivos de inclusión: C:\Archivos de programa\Microsoft DirectX SDK\Include

Paso 7: Instalar el OGRE SDK

Para instalarlo basta con descargar el OGRE SDK preparado para Visual C 2005

http://downloads.sourceforge.net/ogre/OgreSDKSetup1.4.5_VC80.exe

Paso 8: Instalar el Asistente de creación de aplicaciones OGRE

Se necesita descargar el siguiente archivo y descomprimir su contenido:

http://downloads.sourceforge.net/ogreconglo/ogresdkwizard80_Eihort_v1_4_2.zip

Para instalarlo sólo hay que hacer doble clic sobre el archivo ‘VC8_Express_Setup’, se ejecutará el script y saldrá un mensaje que confirmará que se ha instalado sin problemas.

Paso 9: Comprobar la correcta integración

Para comprobar que todo está correcto basta con utilizar el asistente que se acaba de instalar. En Visual C++, Archivo -> Nuevo -> Proyecto -> OGRE SDK Aplication se crea un nuevo proyecto de prueba y se compila. Al ejecutarse aparecerá una ventana con opciones de configuración. Tras elegir las que se consideren oportunas aparecerá una ventana con la cabeza de un ogro renderizada. Este hecho indica que la instalación ha sido exitosa.

OGRE Engine Rendering Setup Window

OGRE Render Window


Integración con Eclipse 1.3.0 en Ubuntu 7.10

En este tutorial se utilizará EasyEclipse C++ 1.3.0 y la versión estable de OGRE 1.4.3. Posteriormente se explicará como configurar un proyecto Eclipse en Linux, incluyendo las librerías OGRE y CEGUI para la creación de una aplicación básica de OGRE. Existe la posibilidad de compilar el código fuente de las librerías, pero, como las últimas versiones se encuentran ya empaquetadas para Ubuntu, se hará uso de ellas

Paso 1: Instalar CEGUI

Instalar primero CEGUI 0.5.0, mediante el paquete libcegui-mk2-dev y sus dependencias.

Paso 2: Instalar OGRE

Instalar OGRE 1.4.3 mediante el paquete libogre-dev y sus dependencias.

Paso 3: Instalar EasyEclipse C++

Descargar EasyEclipse C++ 1.3.0. Descomprimirlo y ejecutarlo.

Paso 4: Crear un nuevo proyecto de Eclipse

Crear un nuevo proyecto C++ y ahí seleccionar Makefile -> "Hello World C++".

Paso 5: Seleccionar generación de Makesfiles automáticamente

Una vez creado el nuevo proyecto, pulsar con el botón derecho del ratón sobre el nombre del proyecto y seleccionar "Properties". En el menú C/C++ Build marcar "Generate Makefiles automatically".

Paso 6: Actualizar los directorios

En el submenú Settings, seleccionar la pestaña "Tool settings".

En GCC C++ Compiler: En el apartado Directories añadir las rutas "/usr/include/CEGUI", "/usr/include/OGRE" y "/usr/include/OGRE/GLX". En Miscellaneous, en la casilla flags hay que poner "-c -fmessage-length=0 -fexceptions -fident".

En GCC C++ Linker: En Libraries hay que añadir "CEGUIBase", "OgreMain" y "CEGUIOgreRenderer".

Con esto se tiene configurado el entorno Eclipse para desarrollar aplicaciones con OGRE y CEGUI. Hay que tener en cuenta que OGRE necesita encontrar en el directorio donde se ejecuta la aplicación los ficheros de configuración "resources.cfg" y "plugins.cfg". Para más información sobre estos ficheros y problemas en la instalación se puede consultar la wiki oficial de OGRE.


33 comentarios:

Andrey dijo...

Maravilloso.

Esperando ansiosamente la siguiente parte ;)

Alberto dijo...

Conseguí hacerlo funcionar en windows sin ningun problema. Estaré atento a la siguiente entrada del blog :)

Andrey dijo...

Cierto, se me olvidó decir que uso Ubuntu.

Andrey dijo...

Hola de nuevo.

Hasta el paso 6 todo bien (relativamente hablando). Ahí ya me he perdido.

Aunque es una tontería, no encuentro el submenú Settings, y por consecuente tampoco Tool Settings.

Saludos.

Andrey dijo...

Lo encontré. Menuda tontería, jeje. Lo he puesto todo según tus recomendaciones, pero da un Warning:

"Severity and Description Path Resource Location Creation Time Id
Error launching external scanner info generator (g++ -E -P -v -dD /home/andrey/workspace/.metadata/.plugins/org.eclipse.cdt.make.core/specs.cpp) asd Unknown 1201118559376 5"

Hago caso omiso?

Anónimo dijo...

Me quede en el Paso 2: Instalar Microsoft Platform SDK pork nose como instalar esta plataforma, pork se nesecita internet despues de descargar el archivo PSDK-x86...

Como hago????

Ramiro dijo...

Hola, tengo el VC 9, como puedo hacer con el Ogre3d? Ya tengo instalada la SDK de Windows y la de DirectX, tambien el Ogre3D. Pero al tener el VC 9 no me deja utilizar los archivos que pusiste al final para crear el wizard.

davirro dijo...

Despues de todo no puedo ejecutar el .js ,¿que se necesita ¿jscript? de donde lo saco?

TaMuDo dijo...

The setup doesn't run when I double-click the '.js' setup file.

try adding this to the js extension under run. (In 'Folder Options' in File Explorer.)

C:\WINDOWS\System32\WScript.exe "%1" %*

(If this don't work you must specify the target script language with the flag //E:jscript like C:\WINDOWS\System32\wscript.exe //E:jscript "%1" %* )

or from the run box

C:\WINDOWS\System32\WScript.exe locationofsetupjs

(If this don't work you must specify the target script language with the flag //E:jscript like C:\WINDOWS\System32\WScript.exe //E:jscript locationofsetupjs )

(Note: If WScript fails, try using CScript)

Para más info:
http://www.ogre3d.org/wiki/index.php/The_Complete_Blanks_Guide_To_Using_The_OGRE_SDK_AppWizard

david dijo...

Gracias! aunque no lo consegui, el .js ha funcionado correctamente para vc 2008 expres pero me sigue sin salir el wizard, creo que la clave esta en esto ,pero no lo entiendo muy bien:

Visual Studio Express:
1) Edit the OgreSDKAppWizard80.vsz -> change "ABSOLUTE_PATH" to where you have unzipped this Ogre-wizard.
2) Copy the three "OgreSDKAppWizard80.*" files over to your [Visual Studio]/VC/Express/VCProjects folder.

TaMuDo dijo...

sorry, creo que el wizard sólo funcionaba para el VS 2005. Pero lo mismo más adelante sacan versión apra el 2008

david dijo...

Lo estoy intentando con el 2005 expres bajo winxp y tampoco, sigo todos los pasos pero nada, el .js dice que la instalacion fue correcta pero sigue sin salirme el ogre en nuevo/proyecto.No se que puede ser

david dijo...

no se que he tocado pero ya funciona XXDD

Smaug dijo...

He seguido todos los pasos, pero no me llega a compilar el ejemplo. Tras varias intentonas y un par de busquedas, he encontrado que poniendo esto en el codigo se soluciona :
#pragma comment(lib,"user32.lib")

Y asi ha sido, se os ocurre el porqué de tener que poner esto??
Un saludo!

ogre dijo...

excelente tu ayuda!!! pero....
porfavor!!! no entiendo q pasa !! cuando compilo un demo me dice q no encuentra windows.h!!! colaborenme!!

ogre dijo...

Muchas gracias amigo.. me sacaste de un gran problema!!! ya llevaba 1 semana tratando de instalar OGRE..

Millertaker Blog dijo...

Hola en http://www.microsoft.com/downloads/details.aspx?FamilyId=
A55B6B43-E24F-4EA3-A93E-40C0EC4F68E5&displaylang=en
no me permite realizar la descarga o la instalcion en line de forma completa hay algun oto link donde pueda descargarla?

TaMuDo dijo...

Puedes utilizar la versión más reciente del Platform SDK si la otra te da problemas. No te puedo asegurar que funcione correctamente ya que aun no la he probado. Suerte!

Windows SDK for Windows Server 2008

Millertaker Blog dijo...

Hola ya consegui realizar todos los pasos pero el proyecto no me compila me bota el sg error: 1>------ Operación Generar iniciada: proyecto: MiPrimerJuego, configuración: Debug Win32 ------
1>Compilando...
1>MiPrimerJuego.cpp
1>c:\ogresdk\include\win32\ogretimerimp.h(35) : fatal error C1083: No se puede abrir el archivo incluir: 'windows.h': No such file or directory
1>El registro de generación se guardó en el "file://c:\Documents and Settings\Miller\Mis documentos\Visual Studio 2005\Projects\MiPrimerJuego\MiPrimerJuego\obj\Debug\BuildLog.htm"
1>MiPrimerJuego - 1 errores, 0 advertencias

Sera que hay algun problema con las aplicaciones WIN 32?

TaMuDo dijo...

Puede que el problema sea debido a que te has saltado alguno de los pasos. En la wiki de OGRE advierten lo del error al compilar de "windows.h". Para solucionarlo cerciórate de que has seguido correctamente cada paso. Para un poco más de información te paso un enlace del foro de stratos donde se trata un error parecido -> Foro de stratos

Millertaker Blog dijo...

Vale revisare mis pasos y te comentare, depronto si comenti algun error por la ansiedad de instalar el Ogre jejeje

Millertaker Blog dijo...
Este comentario ha sido eliminado por el autor.
Millertaker Blog dijo...

Hola TaMudo ya pude solucionar le problema de windwos.h gracias a tu foro, pero ahora me surge otro problema cuando trato de generar la solucion solo genera el .exe una ves y despues siempre me muestra este error

1>------ Operación Volver a generar todo iniciada: proyecto: proyecto, configuración: Debug Win32 ------
1>Eliminando archivos intermedios y de resultados para el proyecto 'proyecto', configuración 'Debug|Win32'
1>Compilando...
1>proyecto.cpp
1>Compilando recursos...
1>Compilando manifiesto en los recursos...
1>Vinculando...
1>LINK : no se encontró bin\Debug\proyecto.exe o no lo generó el último vínculo incremental; ejecutando vínculo completo
1>Incrustando manifiesto...
1>El registro de generación se guardó en el "file://c:\Documents and Settings\Miller\Mis documentos\Visual Studio 2005\Projects\proyecto\proyecto\obj\Debug\BuildLog.htm"
1>proyecto - 0 errores, 0 advertencias
========== Volver a generar todo: 1 correctos, 0 incorrectos, 0 omitidos ==========

Lo extraño es que si examino el direcorio de C:\OgreSDK\bin\debug puedo ver la aplicacion .exe alli aun no he profudizado en el WIki de ogre pero es esto normal?, cuando trato de ejecutar las aplicaciones localizadas en este directorio me bota una exepcion 0xc0150002

mmm ya estoy algo desesperado la instalcion de este motor si que me ha dado lios :´(

TaMuDo dijo...

Si claro, esto es lo normal. Para ejecutar la aplicación debes de darle a un botón con una flechita verde que pone "Iniciar depuración". Te da error al ejecutar directamente el .exe porque necesita de dlls para poder ejecutarse correctamente (cuando lo haces a través de VS este las enlaza automáticamente).

Venga, que aprendas mucho!

Millertaker Blog dijo...

Hola TaMuDo, bueno la verdad no me queda muy claro como compilar y ejecutar la aplicacion en Visual Express, cuales de DLL debo poner para poder hacerlo. No se estan referenciando estas cuando pusimos

Herramientas -> Opciones -> Proyectos y soluciones -> Directorios de VC++.

para

C:\OgreSDK\bin
C:\OgreSDK\lib

Sera que me falta algo mas?, trate de mirar la exepcion 0xc0150002 pero nose a que se pueda deber... tambien trate de ejecutar como dices los ejemplos que vienen en la OgreSDK y me boto la misma expecion.


Gracias por la ayuda

Millertaker Blog dijo...

Hola TaMudo, ya encontre la solucion solo necesitaba instalar el SP1 de visual express, seguro tenia una version anterior!!

Gracias OGRE esta de lo mejor :D

TaMuDo dijo...

Me alegro que te vaya bien! Perdona que no te contestara antes. Me fui de acampada y no he vuelto hasta ahora, pero ya veo que te las apañas muy bien. Espero que disfrutes del ogro!

Mucha suerte

Clar dijo...

Bueno de evrdad felicitaciones por esta exlente guia, soy neuvo en esto y me ayudara. Mi problema es que cuando pongo instalar el PSDK cuando llega al archivo PSDK.HXQ se queda prado y no se descarga y leugo em da error. Espero que me encuentres una solucion.

Congratulations!

Zeratul dijo...

hola estroy instalando el ogre y visual c++ express 2005 siguiendo todos los pasos
y aparece el error de no encuentra windows.h , he actualizado los directorios en herramientas, opciones, ..., vcprojects como dijiste... pero me doy cuenta de que no existen esas rutas cuando las sigo con el explorador de windows.
al instalar todos los pasos he seguido los links q estan puestos en tu pagina.
de antemano muchas gracias por la respuesta.

TaMuDo dijo...

Hola Zeratul, hace un año que escribí esta guía y no puedo asegurarte que los links correspondan con los que instalé en su día. De todos modos cerciórate de que la ruta pones en el Visual estudio sea dónde has instalado el Platform SDK. Fíjate también un poco más arriba, porque hay un par de enlaces en un comentario mio que corresponden a problemas con "windows.h"

Espero que te sea de ayuda. A ver si me pongo al día y actualizo un poco el blog que lo tengo algo abandonado.

Un saludo

LINK A STRATOS

WIKI OGRE

velociraptor dijo...

tengo visual express 2008 la ultima version los errores que me salen son:
--------------------------------
Paso 4: No encuentro el archivo de configuracioon para editarlo "corewin_express.vsprops" porloque no se donde poner la linea AdditionalDependencies="kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib"
------------
Paso 5 otro error:
en el archivo AppSettings.htm no coincide con lo que dices, pero en la linea 357 encontre y maque comentarios:
function InitDocument(document)
{
if("true" == window.external.FindSymbol("CONSOLE_TYPE_ONLY"))
{
//WIN_APP.disabled = true;
//DLL_APP.disabled = true;
//LIB_APP.disabled = true;
}
setDirection();
CONSOLE_APP.focus();
window.external.Load(document);
InitControls();
}
-------------
Paso 8: al Instalar el wizzar de ogre descarge el archivo lo descomprimi y al intentar ejecutar el scrip me sale ERROR : NO PUEDO ENCONTRAR EL VISUAL C++ , SI ESTA INSTALADO , pero en ingles.
AYUDAAAAA TENGO que aprender este espectacular software, mi correo es ruben0011 en hotmail ayudenme maestros de maestros

Jose dijo...

Hola tengo un problama ya segui cada uno de los pasos y cuando llego al ultimo para probar que funciona ogre creo el proyecto y despues compilo pero me da un error me dice que la libreria window.h que sera , ahy algo que no me quedo muy claro cuando se instala OGRE SDK queda en C:/OGREsdk , y quedan las variables de entorno creada OGRE_HOME pero no se si se le debe decir al Visual Studio C++ 2005 donde se encuentra???

Anónimo dijo...

Hola etoy comenzando nuevo en esto, tengo el vs 2005, ya instale el ogre y el wizard, puedo crear un proyecto ogre, pero cuando compilo me da este error "Error 1 fatal error C1083: No se puede abrir el archivo incluir: 'ogre.h': No such file or directory c:\documents and settings\usuario\mis documentos\visual studio 2005\projects\project5\project5\include\baseapplication.h 25"
ya no se que mas hacer. Me ayudan??
Gracias