Soundscape

From Valve Developer Community
< Fr
Jump to navigation Jump to search
English (en)Español (es)Français (fr)Русский (ru)Translate (Translate)

Un Soundscape est un ou plusieurs son destiné à être joué sous Source. Le DSP peut être appliquer a ces sons et ainsi permettre un rendu réaliste du son, avec des écho, de la reverberations, des occlusions, ce que ne permet pas l'entité Ambient_generic. Ces Soundscapes peuvent être contrôlé sur de nombreux paramétre telle le volume (loop, volume, DSP,...) ce qui permet de rendre un environement complexe.

Un Soundscape est composé :

  • D'un fichier "soundscape.txt" comprenant tous vos soundscape avec leur differents paramètres.
  • De l'entité env_soundscape(en) dans hammer pour relier vos son au fichier .txt. il se situe dans le dossier \Script.
  • Vos sons Wav ou Mp3 dans le dossier \Sound.

En plus du DSP l'un des avantages est de pouvoir modifié le "soundscape.txt" sans avoir à recompiler, il devient ainsi très simple de modifier par exemple les volumes des sons s'il ne vous conviennent pas.


Entitée point env_soundscape

Le moteur Source ne peut jouer qu'un seul soundscape à la fois, passez à un autre Soudscape se fera de facon progressif. Il y à une exeption qui sera expliqué plus loins. L'entité env_soundscape(en) à un rayon d'action, qui correspond non à la distance d'audition des sons, mais à une zone d'activation du Soundscape, une fois activer il le restera jusqu'a que le joueur entre dans un autre rayon d'action d'un autre env_soundscape. Le nom que vous lui donnez sera lier directement au Soundscape dans votre fichier "soundscape.txt".

L'entité a aussi 8 slot, permettant de jouer plusieurs son à des endroit précis differents. Ces slots sont déclarés dans le fichier .txt. Ils peuvent pointer sur n'importe quel entité, un point_target par exemple.


Ajouté un soundscapes perso

Pour un mod

Les Soundscapes qui sont charger sont définie dans le fichier <game directory>\scripts\soundscapes_manifest.txt. Ajoutez-y dedans le nom de votre fichier Soundscapes.txt. Puis placez votre Soundscape.txt dans <game directory>\scripts\my_custom_soundscape.txt.

Pour une Map

Si vous avez crée une Map pour un mods ou un jeux, vous ne pouvez pas toucher au soundscapes_manifest.txt, vous pouvez ajouter votre soundscape en l'appelant du même nom que votre Map et il sera charger avec, par exemple si votre Map s'appelle my_custom_map.bsp : <game directory>\scripts\soundscapes_my_custom_map.txt


DSP

Voici les différentes valeur pour le DSP :

  • 0 ; Desactiver.
  • 1 ; Mode automatique il calcule les effets à appliquer selon la 3D autour et les matériaux, en géneral il est à cette valeur.
  • Valeurs personnalisé ; Les pré-réglages sont disponible dans le fichier ../hl2/scripts/dsp_preset.txt, numéroté de 0 à 29.


Type de Soundscapes

playlooping

Joue un son en boucle jusqu'a qu'un autre Soundscape soit activer.

wave

  • Le nom de votre fichier son.

volume

  • Le volume entre (0-1).

pitch

  • La tonalité, afin de rentre votre son plus grave ou plus aigu. 100 est normal.

attenuation

  • Définie l'atténuation du son. Utilisé seulement si la commande position suit.
    • Note.pngNote :These can be random intervals - the random value will be chosen once each time the soundscape is triggered.

position

  • Identification de la position (0-7) que vous avez rentré dans votre entitée env_soundscape.

Exemple


    "GenericIndoor" 
    { 
         "dsp"   "1" 
         "playlooping" 
         { 
                "volume"       "1" 
                "pitch"        "100" 
                "wave"         "ambient/areas/air_exchange/indoor2.wav" 
         } 
    }
Note.pngNote :Pour pouvoir jouer un son loop il est impotant que votre fichier, Wav ou Mp3 est une "marque", ou "cues", qui indique le début de votre son, afin que Source sache comment jouer votre son en boucle. Voir tuto.



playrandom

Plays random sound events until a new soundscape is triggered.

time

  • Time interval of the random event.

volume

  • Random volume interval (0-1).

pitch

  • Random pitch interval (50-250).

attenuation

  • Random attenuation of sound.

rndwave

  • A list of random wave files to choose from.

position

  • Position to use, if spatialized (0-7), or "random" for a random position.

Example

    "GenericOutdoor"
    
    { 
        "dsp"   "1" 
        
        "playrandom" 
        { 
            // Play every 0.1 to 1.5 seconds 
            "time" "0.1, 1.5" 
            
            // At a volume of 0.5 to 1 
            "volume" "0.5,1" 
            
            // At a pitch of 50% to 120% 
            "pitch" "50,120" 
            
            // With an attenuation of 0.7 
            "attenuation" "0.7" 
            
            // At entity specified at position 1 
            "position"  "1" 
            
            // Play one of these .wav files randomly each time 
            "rndwave" 
            { 
                "wave" "temp/soundscape_test/music_snippet1.wav" 
                "wave" "temp/soundscape_test/music_snippet2.wav" 
                "wave" "temp/soundscape_test/music_snippet3.wav" 
            } 
        } 
    }


playsoundscape

Plays another soundscape and all of its sub-commands.

Note.pngNote :DSP effects cannot be altered by sub-soundscapes.

name

  • Sub-soundscape to play.

volume

  • All volumes in the sub-soundscape are scaled by this value (0-1).

position

  • An offset added to each position index of the sub-soundscape (0-7).

positionoverride

  • Forces all sub-soundscape positional sounds to occur at a single position originating from the entity at this index (0-7).

ambientpositionoverride

  • Forces all sub-soundscape ambient sounds to be spatialized at a particular position originating from the entity at this index. Useful to make ambient sounds come “from a direction" (0-7).

Example

    "SubSoundscape"
    { 
        "dsp"   "1" 
        
        "playsoundscape" 
        { 
            // Sub-soundscape to play 
            "name" "GenericIndoor"
            
            // All sub-soundscape volumes reduced by 50% 
            "volume" "0.5"
            
            // All sub-soundscape position sounds will come from this point 
            "positionoverride" "0"
            
            // All sub-soundscape ambient sounds will come from this point 
            "ambientpositionoverride" "1" 
        } 
    }

soundmixer

Sound mixers are used to provide custom volume control over various sound categories, called mix groups. Sound mixers are referenced in Soundscapes via "SOUNDMIXER" "name".

Example

"automatic"
{
	"dsp"	"1"
	"dsp_volume" "1.0"
	"SOUNDMIXER" "Default_Mix"
}

Always use Default_Mix as a template.

"Default_Mix"
{
//	group name			mix value
//	----------			---------
	"Explosions"			"0.90"
	"Player_Weapons_Loud"		"1.0"
	"Player_Suit"			"0.56"
	"Weapons"			"0.79"
	"AHELI_WEAPON"			"0.85"
	"GUNSHIP_WEAPON"		"0.85"
	"STRIDER_WEAPON"		"0.85"
	"bullethit"			"0.67"
	"Music"				"0.81"
	"All"				"0.72"
}

References

  • /scripts/soundmixers.txt from create a mod, source sdk
  • /scripts/soundscapes.txt from create a mod, source sdk