CAPÍTULO 6 - ÚLTIMO
En este último capítulo colocaremos sonido,
presentación y algún que otro detalle.
Aprenderemos a manejar sonidos, tanto en introducción como sonidos
de disparos y explosiones.
La nave se mueve manejando las teclas de cursores del
teclado, y disparamos con la tecla de espacio .
Se cargan los efectos sonoros individualmente en un
buffer.
sf::SoundBuffer bufferSound1;
if
(!bufferSound1.loadFromFile("sound1.wav")){
printf("sound1.wav
no encontrado\n");
return false;
}
sf::Sound sonido1;
sonido1.setBuffer(bufferSound1);
En nuestro caso tenemos tenemos 3 diferentes efectos, disparo,
explosión nave y explosión asteroine.
Debo decir que lo normal sería cargar todos los efectos desde un
solo fichero, para luego cada uno de los efectos reproducirlos
individualmente desde una zona del buffer. Para que se entienda
mejor lo he realizado individualmente.
También creamos una clase Music para
reproducirla cuando queramos con musica.play(); .
sf::Music musica;
if (!musica.openFromFile("intro.ogg")){
printf("intro.ogg no
encontrado\n");
return false;
}
Lo normal es almacenar todos los recursos, sonidos, imágenes,
música, etc... en un solo directorio llamado media o recursos.
He creído que no debía complicarme mucho, y los he colocado
en el directorio principal junto con el código fuente y el
ejecutable.
Una buena introducción genera un argumento para la
historia, ganando todo el conjunto.
Esto lo realizo en una función aparta llamada intro(); ,
donde cuento una historia semi-verdadera.
Con este pequeño programa he aprendido a utilizar
mínimamente la API de la librería SFML.
He de decir que la librería SFML aprovecha la aceleración openGL ,
y se puede utilizar para juegos 3D.
Para este pequeño juego hubiese servido la librería SDL, bastante
mas extendida y documentada.
Como ejemplo de un juego de naves realizado en SDL
https://github.com/leonardo-ono/CppGalaga/tree/master/Galaga_v2
Espero que les haya gustado esta serie de tutoriales
sobre la librería SFML.
En algún momento realizare algún que otro programa mas.
PROGRAMA V1
He añadido vidas y pantalla completa.
Saludos.
Juan Galaz
Sonidos:
http://www.grsites.com/archive/sounds/category/7/?offset=36
zep_hurme_-_Glacial_Spacial.mp3