Antes de iniciar a trabajar con un nuevo proyecto, seguir este enlace:
Si es en windows con vs2010: http://notasof.blogspot.com/2011/06/22-pasos-para-iniciar-openframeworks.html
Si es en Ubuntu con codeblocks: http://notasof.blogspot.com/2011/06/9-pasos-para-configurar-openframeworks.html
Programando main.cpp:
#include
#include
#include"testApp.h"
int main()
{
ofAppGlutWindow window; //define un objeto ofAppGlutWindow
ofSetupOpenGL(&window, 800, 600, OF_WINDOW); //establece el modo de visualización
ofRunApp(new testApp());//arranca la aplicación
}
OF_WINDOW = es una constante entera que le indica a OpenGL arrancar la aplicación en modo ventana.
OF_FULLSCREEN = es una constante entera que le indica a OpenGL arrancar la aplicación en modo pantalla completa.
Programación de testApp.h y testApp.cpp:
primero hay que agregar una nueva clase, al realizar esta acción configuramos el nombre de la clase con el wizard que nos facilita el IDE y automáticamente nos crea los archivos de cabecera y de código, en este caso como se la clase se llama "testApp" entonces crea los archivos "testApp.h" y "testApp.cpp", teniendo la siguiente estructura:
archivo testApp.h:
#pragma once
class testApp
{
public:
testApp(void);
~testApp(void);
};
lo primero que se debe hacer es codificar la siguiente condición:
#idndef _TEST_APP
#define _TEST_APP
...
#endif
quedaría de la siguiente manera:
#idndef _TEST_APP
#define _TEST_APP
#include
#pragma once
class testApp
{
public:
testApp(void);
~testApp(void);
};
Notar que se hizo una inclusión del archivo de cabecera "ofMain.h" para poder utilizar el framework
Adicionalmente a esto, esta clase debe ir heredada de la clase interna del framework "ofBaseApp"
quedaría de la siguiente manera:
#idndef _TEST_APP
#define _TEST_APP
#include
#pragma once
class testApp: public ofBaseApp
{
public:
testApp(void);
~testApp(void);
};
Para poder iniciar a programar OpenFrameworks como tal hay que tener en cuenta estos métodos:
Setup: Método para establecer los valores y las condiciones iniciales de la aplicación.
Update: Método para actualizar constantemente la aplicación durante su ejecución.
Draw: Método para "dibujar" los elementos gráficos que hay en el escenario de la aplicación.
Quedaría de la siguiente manera con la definición de los métodos anteriores:
#idndef _TEST_APP
#define _TEST_APP
#include
#pragma once
class testApp: public ofBaseApp
{
public:
testApp(void);
~testApp(void);
void setup(void);
void update(void);
void draw(void);
};
Programación testApp.cpp:
Cuando el IDE crea el archivo muestra la siguiente estructura inicial:
#include "testApp.h"
testApp::testApp(void){}
testApp::~testApp(void){}
aquí se programan todos los método que tenga la clase (coloco esto por si alguien es newbie en c++ con poo).
Escribimos lo siguiente:
#include "testApp.h"
testApp::testApp(void){}
testApp::~testApp(void){}
void testApp::setup(void){}
void testApp::update(void){}
void testApp::draw(void){}
definir el siguiente objeto en el archivo testApp.h con cualquier tipo de encapsulamiento, en este caso se colocara como privado:
private:
ofSoundPlayer test_sound;
En testApp.cpp programar lo siguiente:
void testApp::setup(void)
{
test_sound.loadSound([direccion o ruta donde este el sonido]);
test_sound.play();
}
void testApp::update(void)
{
ofSoundUpdate();//Actualiza todos los sonidos
}
compilar y ejecutar...
NOTA:
tener en cuenta configurar las directivas de salida
tener en cuenta configurar el debug para poder acceder a archivos de la carpeta data
Este proyecto se quedará aquí por el momento.
Espero que sea de su agrado y cualquier problema lo discutiremos en este mismo post
Andrés Camilo
24 de Junio de 2011
No hay comentarios:
Publicar un comentario