| DLL: donner un son à un objet par Laurent Claudet (ROTW) Fly! II > DLL |
Voici encore une Dll qui peut aider les développeurs à donner
encore plus de vie à leurs scènes.
En effet, elle permet d'ajouter un son en format .WAV à n'importe quel
objet 3D décrit dans un fichier "\D...\Sceneryx.Sxx". Laurent
ajoute même "pourquoi pas un gazouilli d'oiseaux dans un arbres".
Mais bien sûr !
Le fin du fin, c'est que le volume du son est fonction de la distance avec l'objet
sonorisé (qui est paramétrable). Le son est itératif (donc
sans fin !), mais il suffit de s'en éloigner suffisament pour qu'il cesse.
Pour le coup il m'est difficile de vous montrer une image, mais, Simvol ne
reculant devant aucun sacrifice, on va donc vous faire entendre un son: son.wav
Je pense que vous l'avez aisément reconnu, rompus que vous êtes
tous au code Morse.
Comme toujours, Laurent nous a préparé un "package"
qui donne toutes les indications pour sonoriser sa scène. Mais, je vais
essayer de résumer:
- il y a une Dll à installer dans le répertoire \Modules\pc, comme
d'habitude.
- il vous faut créer vos .WAV et les placer dans le répertoire
\Sound
- il faut ensuite placer à la fin de sa scène (juste après
le dernier ===End Object ===) une petite séquence d'appel de la Dll et
de définition des sons qui lui seront proposés: exemple avec 3
sons utilisés dans la scène.
<wobj> ---- world object type ----
@snd
<bgno> ========== BEGIN OBJECT ==========
<dist>
0.5
<num_>
3
<arry>
001=son1.wav
002=son2.wav
003=son3.wav
<endo> ========== END OBJECT ==========
Sachant que:
_ la valeur "0.5" après le paramètre <dist> est
la distance à partir de laquelle un son devient audible
_ la valeur "3" du paramètre <num> est le nombre de fichiers
.WAV utilisés dans la scène
_ les sons sont listés dans le paramètres <arry> derrière
un numero commençant à "001", à raison d'un son
pour un objet. Si plusieurs objets ont le même son, il faut autant de
lignes que d'objets.
Il ne reste qu'à ajouter un petit bout de séquence à chaque objet sonorisé:
<bgno> ========== BEGIN OBJECT ==========
.../...
<name> ---- object name (descriptive) ----
002=son1.wav
.../...
<endo> ========== END OBJECT ==========
Attention: le paramètre <name> est obligatoire
Vous pouvez donc vous lancer dans la sonorisation de vos scènes en téléchargeant le fichier suivant (qui comporte un petit exemple).
| Téléchargement |
Rotw-object-sound_v10.zip (226 Ko) |
![]()
| Sonorisation: balise de détresse par Frédéric Mouflin et Pacha (ROTW) Fly! II > DLL |
Bien sûr le premier cas d'emploi qui nous est venu à l'idée, c'est la balise de détresse d'un avion accidenté. Fred avait déjà réalisé une aventure pour rechercher un ATR d'Air Dolomiti accidenté dans les Alpes françaises, je n'ai donc eu qu'à sonoriser la scène.
La balise émettant en morse, il m'a fallu trouver un convertisseur de texte vers du morse qui écrivait des .WAV : le logiciel "MorseGen" fait ça très bien. Ne restait plus qu'à tout installer et à lancer la recherche.
Si vous voulez essayer, vous trouverez la scène dans le zip ci-dessous: attention, même avec une balise, ce n'est pas facile.
| Téléchargement |
sauvetage-sos.zip (937 Ko) |