Maire Lv.9
Age : 37 Inscrit le : 04/02/2009 Messages : 326
| Sujet: Environnement Sonore Ven 27 Mar 2009 - 15:44 | |
| Environnement Sonore Tout d'abord, pourquoi mettre ce tuto dans le mapping? Je pense que pour créer une bonne atmosphère sur une map, le visuel et la musique ne suffisent pas... Ce tuto permet de réaliser des sons "localisés" sur votre map. Ils tiennent compte de leur distance avec le personnage et en déduisent un volume correspondant. Il faut différencier les BGS, et les SE. Les BGS demandent un rafraichissement plus rapide que les SE, aussi rapide que le déplacement du personnage. Exemple de la cascade, principe pour les BGS:Principe: plus on va près de la cascade plus son volume augmentera. Généralement j'utilise une propagation du son circulaire, mais il est possible d'utiliser d'autres propagations. Dans le cas présent, plusieurs cascades seront sur la carte. Elles dépendent toutes du même BGS, du même processus parallèle. 1. Détemination de l'écart personnage<->événementscreen: Qu'observons-nous: - Il y 3 variables maitresses: le X, le Y et le rayon de l'événement.
- Le rayon est d'abord fixé à 15: C'est une espèce d'initialisation car si le rayon commençait à 0, cela signifierait que le personnage serait sur l'événement, or dans le cas présent, il n'y est pas.
- Ensuite, il y a une étiquette, elle est là car le processus est une boucle.
- Seulement après, les opérations de calcul commence:
- La rayon est la racine carrée des carrés des écarts de positions entre le héros et l'événement...
Un screen pour ceux qui rament en math: Détail des opérations:X = Xévénement Y = Yévénement X -= Xhéros Y -= Yhéros
Bon, mettre au carré puis en faire la racine, on ne peut pas avec les moyens du bord, donc à minima on utilise la somme des valeurs absolues. Si X<0, X*=-1 Si Y<0, Y*=-1 X+=Y... c'est notre pseudo-rayon Rayon = XC'est une première victoire, cependant ça ne fonctionne que pour un élément: Si on avait une liste de cascade, la précédente serait écrasée par la suivante et ainsi de suite... La procedure pour le premier élement (A) ne change pas dans le cas d'une liste, c'est celle des suivants (B, C, D,...) qui varie. Elle affectent X à Rayon, si et seulement si, X est plus petit que Rayon. Autrement dit si le héros est plus proche de B que de A... screen: 2. La gestion du volume:C'est tout bête. C'est une liste de conditions sur la valeur du rayon, qui détermine le volume. Pour les BGS, il est important d'être très progressif, car quand un personnage peut courrir et même sauter, il ne faut pas agresser soniquement le joueur... Autre détail, il est peut être agaçant d'avoir un BGS toujours dans les oreilles même à 5 en volume mais il est d'autant plus bizarre de passer de 0 à 5, ça choque énormément donc je préfère laisser le BGS en fond à 5 que de l'éteindre. C'était juste un conseil. screen: 3. les particularités des SE:Les SE se gèrent finalement de la même façon que les BGS, la différence réside dans le fait qu'il faut attendre un minium entre deux sons. Il y a plusieurs façons de faire: -Attendre X frame, pas très naturel. -Avec une boucle (dans la boucle principale) et un compteur généré aléatoirement (exemple du mouton dans la démo). -Utiliser une variable indépendante, venu d'un autre event. (Notament de Horloge, voir tuto de système de temps interne) >>Démo Edit du 28/3/2009
Oui, c'est pas faux qu'il faut une carte d'une taille minimale, mais de l'ordre d'une ville, la cloche, par exemple, a tout son sens. Tout dépend du rayon que tu utilises, dans mon exemple, j'ai volontairement mis des rayons assez grands. Les BGS ont besoin d'être progréssifs, cependant les SE n'ont pas besoin de grands rayons comme ils sont ponctuels, en une case ils peuvent passer d'un volume de 80 à 40, tout dépend de ce que vous réalisez... Je joins à mon édit une version allégée de ma map du paradis céleste (60x73 avec un contour de vide) créée pour le concours des 5 thèmes ( Sujet ici ) Elle utilise d'autres systèmes expliqués dans le forum. (temps, langues...)
>>Lien
En réalité, c'est pour ce concours que j'avais réfléchi aux sons d'environnement, histoire d'avoir un plus... (dans cette version, j'ai constaté qu'en supprimant le troupeau de moutons (une petite vingtaine) et surtout l'évenement qui restreignait leurs mouvements, j'ai supprimé le gros du lag... crotte j'aurais dû y penser avant d'envoyer ma map)>>Démo v3(lol, oui j'aime bien faire des démos pour rien...)
Dernière édition par vincentmhd le Mer 23 Sep 2009 - 12:55, édité 4 fois |
|
Templier Lv.15
Age : 34 Inscrit le : 11/12/2008 Messages : 1278
| Sujet: Re: Environnement Sonore Ven 27 Mar 2009 - 17:26 | |
| ...Ouai c'est pas mal sur un map qui fait 100*100, mais par exemple en 40*40, ça sert au final à pas grand chose... Non mais niveau réalisme c'est pas mal, c'est un bonne idée (je me ferais pas ch*er à la mettre sur toutes les maps où j'ai une cascade, mais c'est pas mal) |
|
Poulet Lv.1
Avertissements : 1 Inscrit le : 09/01/2010 Messages : 4
| Sujet: Re: Environnement Sonore Dim 10 Jan 2010 - 16:25 | |
| Sa me sera très utile, merci pour ce tuto |
|
Ex-Admin Cruelle
Age : 32 Inscrit le : 03/07/2008 Messages : 2441
| Sujet: Re: Environnement Sonore Dim 10 Jan 2010 - 17:10 | |
| On est content de le savoir, 1 averto pour nécropost + flood. |
|
| Sujet: Re: Environnement Sonore | |
| |
|