Sound Shader System

Also one of our artists (the creator of warlords.swrebellion.com/wp/ mod) wants me to add a sort of a “sound shader” system that was very similar to the one in Homeworld. Basically things that disallow more then X number of one sound to play and apply different volume and equalizer values at different ranges.

Most games don’t allow more then 32 or 64 sound to be played at once but it looks like i can load 100 sound and have them be playing all the time without any kind of rules in panda that is both not wanted and slow.

Rule files i am looking to support:

   
priority = 99              # sort sounds by priority
volumeRand = 0             # random value to be added volume 
frequency = 0              #  frequency shift
maxPolyphony = 1           # max number of active channels allowed
loopCount = 1              # number of times to play
loopCountRand = 0          # random value to add to loopCount
type3D = 0                 # attachable to a 3d node

envelope = [ 
    [ 
        distance = 0,      # distance to active this at   
        volume = 0.815,    # volume 
        reverb = 0,        # reverb 
        duration = 0,      # speed up
        equalizer =        # equalization
            [ 1, 1, 1, 1, 1, 1, 1, 1]
    ], 
    [ 
        distance = 1133.333374, 
        volume = 0.81, 
        reverb = 0, 
        duration = 0, 
        equalizer = 
            [ 1, 1, 1, 1, 1, 1, 1, 1]
    ],
    ...
]

Any other ideas to try out in this sound space?

It looks like openAL-soft came out in December,
kcat.strangesoft.net/openal.html

Which implementations does panda currently use? There is looks like many implementations for openAL, apples’s, creative labs, original and openAL-soft - 4 implementations just at a glance there is probably more.