miércoles, 22 de junio de 2011

22 pasos para iniciar OpenFrameworks

Hola, he creado este blog para escribir mis notas acerca del framework "OpenFrameworks" el cual se trata de un conjunto de Apis, frameworks y/o bibliotecas de código para desarrollar aplicaciones gráficas interactivas. Actualmente este framework posee una gama de bibliotecas como OpenGL para gráficos 2d y 3d, OpenCV para procesamiento de imagen y video digital, entre otros. Hago énfasis en estos dos ya que actualmente son los que me interesa trabajar.
Yo soy novato con este framework y me interesa aprenderlo por diferentes razones los cuales me privo de comentarlos, pero por otro lado principalmente me interesa todo lo que tenga que ver con la conexión entre la ingeniería, la programación, el código y el arte, y creo que OpenFrameworks puede ser una excelente herramienta para desarrollar tal fin.
La página web de OpenFrameworks es: http://www.openframeworks.cc/ ahí encontraremos diferentes ejemplos reales, documentación, wiki, foros, comunidad y la sección de descarga del framework para diferentes plataformas (windows, mac y linux) y para diferentes IDES de desarrollo (VS 2008, VS 2010, CodeBlocks y XCode de mac).
También existe otra herramienta que tiene los mismos objetivos llamada CINDER: http://libcinder.org/ por si a alguien le interesa mas que OpenFrameworks.

La idea con estas notas es conservar todas las experiencias con OpenFrameworks desde el inicio, colocando los problemas y obstáculos que se tengan durante el transcurso del tiempo, con un proyecto determinado y/o con el compilador de C++ el cual (no puedo desconocer) siempre tiene sus trabas, además siempre es mejor compartir estas experiencias con los demás desarrolladores, artistas y a fines para lograr nuevas y mejores experiencias y soluciones. Pero principalmente quiero anotar todo lo que haga con esta herramienta ya que muchas veces se me olvidan muchos detalles en el inicio, en el durante y en el después de la ejecución de un proyecto.

Quiero iniciar la secuencias de notas explicando y explicándome como instalar OpenFrameworks para windows con VS 2010 (el cual se puede descargar de la página: http://www.microsoft.com/visualstudio/en-us/products/2010-editions/express), pero la idea es también saber instalar OpenFrameworks en linux, sobre todo en Ubuntu ya que últimamente estoy trabajando desde esta plataforma. Cuando sepa o haya experimentado este caso, inmediatamente lo anotaré, a no ser que alguien se me anticipe y si es así quedaré totalmente agradecido.

1. Descargar el instalador de Visual C++ Express versión 2010
2. Instalar el IDE (aquí hay un ejemplo para la versión 2008 el cual es la misma cosa para la version 2010: http://www.openframeworks.cc/setup/vs-2008 )
3. Descargar OpenFrameworks de la página: http://www.openframeworks.cc/download el link que dice "visual studio 2010 FAT" (FAT quiere decir que incluira todos los Addons los cuales son complementos que tiene implementado el framework)
4. Descomprimir en cualquier parte donde desee

En este momento el framework ya quedó instalado, no hay que hacer nada mas...
En la carpeta "apps" están todos los ejemplos comentados para tener un mejor entendimiento acerca del framework, pero aquí es donde hay que crear todos los proyectos propio (personalmente yo cree una carpeta llamada "myApps" dentro de la carpeta "apps" para llevar un orden lógico)
5. Después de abrir el IDE, crear un nuevo proyecto vacío dentro de la carpeta "myApps" y desactivar el "checkbox" que dice "Crear directorios para la solución", esto permite tener una mejor integración con los headers del framework.
6. click en Aceptar

Vincular el proyecto OpenFramewoks compilado:

7. Click derecho en la solucion del panel "Explorador de soluciones" > Agregar > Proyecto existente
8. Nos muestra una ventana de exploración y buscamos el proyecto OpenFrameworks compilado en la siguiente ruta: "libs\openframeworksCompiled\project\vs2010\" y seleccionamos el archivo "openframeworksLib"
9. Click en Abrir

Automáticamente agrega el proyecto en la solución creada, esto permite que podamos acceder a los archivos .h o cabeceras del frameworks e incluirlos en nuestro proyecto #include.

Configuración del proyecto:

Antes de configurar las propiedades del proyecto hay que crear el archivo main.cpp, el cual es el archivo de entrada en la ejecución de la aplicación.

10. Seleccionar el proyecto propio
11. Click en Proyecto > Propiedades
Nos muestra un cuadro de propiedades
12. Seleccionar Propiedades de configuración > C/C++ > General > Directorios de inclusión adicionales >
Nos muestra un cuadro de dialogo
13. En la lista ingresamos las rutas de los headers del frameworks:
..\..\..\..\libs\openFrameworks
..\..\..\..\libs\openFrameworks\graphics
..\..\..\..\libs\openFrameworks\app
..\..\..\..\libs\openFrameworks\sound
..\..\..\..\libs\openFrameworks\utils
..\..\..\..\libs\openFrameworks\communication
..\..\..\..\libs\openFrameworks\video
..\..\..\..\libs\openFrameworks\events
..\..\..\..\libs\glut\include
..\..\..\..\libs\rtAudio\include
..\..\..\..\libs\quicktime\include
..\..\..\..\libs\freetype\include
..\..\..\..\libs\freetype\include\freetype2
..\..\..\..\libs\freeImage\include
..\..\..\..\libs\fmodex\include
..\..\..\..\libs\videoInput\include
..\..\..\..\libs\glee\include
..\..\..\..\libs\glu\include
..\..\..\..\libs\poco\include
..\..\..\addons

14. Click en Aceptar
15. Seleccionamos C/C++ > Preprocesador > Definiciones de preprocesador >
Muestra un cuadro de dialogo donde tenemos que ingresar en el campo de texto lo siguiente:
WIN32
_DEBUG
_CONSOLE
POCO_STATIC

16. Click en Aceptar
17. Seleccionamos Vinculador > General > Directorio de bibliotecas adicionales >
Muestra un cuadro de dialogo con un campo de texto donde hay que colocar las rutas de las bibliotecas estaticas del framework:
..\..\..\libs\glut\lib\vs2010
..\..\..\libs\rtAudio\lib\vs2010
..\..\..\libs\FreeImage\lib\vs2010
..\..\..\libs\freetype\lib\vs2010
..\..\..\libs\quicktime\lib\vs2010
..\..\..\libs\fmodex\lib\vs2010
..\..\..\libs\videoInput\lib\vs2010
..\..\..\libs\glee\lib\vs2010
..\..\..\libs\glu\lib\vs2010
..\..\..\libs\openFrameworksCompiled\lib\vs2010
..\..\..\libs\poco\lib\vs2010

18. Click en Aceptar
19. Seleccionar Viculador > Entrada > Dependencias adicionales >
Muestra un cuadro de dialogo en el que hay colocar los nombres de la bibliotecas estaticas avincular:

openframeworksLibDebug.lib
OpenGL32.lib
GLu32.lib
kernel32.lib
setupapi.lib
glut32.lib
rtAudioD.lib
videoInput.lib
libfreetype.lib
FreeImage.lib
qtmlClient.lib
dsound.lib
user32.lib
gdi32.lib
winspool.lib
comdlg32.lib
advapi32.lib
shell32.lib
ole32.lib
oleaut32.lib
uuid.lib
GLee.lib
fmodex_vc.lib
glu32.lib
PocoFoundationmtd.lib
PocoNetmtd.lib
PocoUtilmtd.lib
PocoXMLmtd.lib

20. Click en Aceptar
21. Seleccionar Vinculador > Entrada > Omitir bibliotecas predeterminadas específicas >
Muestra un cuadro dialogo donde hay que colocar lo siguiente:
atlthunk.lib
LIBC.lib
LIBCMT

22. click en Aceptar

Son 22 pasos los cuales explican como se puede iniciar un proyecto de OpenFrameworks con Visual C++ 2010. Mañana escribiré sobre la nueva experiencia que tenga programando OpenFrameworks.

Espero que sea de su agrado, si se encuentra con cualquier dificultad al realizar este proceso, lo podemos discutir en este mismo post.
Gracias
Andrés Camilo
23 Junio de 2011

1 comentario:

  1. muy interesante, pero me gustaria algun manual para trabajar con el IDE (Code :: Blocks), muchas gracias!

    ResponderEliminar