Author Topic: AudioDescriptions  (Read 702 times)

It seems if you use a custom AudioDescription, no one but the host can hear it.
I have noticed how Stratofortress' Blackhawk does not have a working one either, and he defines a custom AudioDescription too.

Code: [Select]
datablock AudioDescription(ClockTowerBellDesc)
{
   volume   = 1;
   isLooping= false;

   is3D     = true;
   ReferenceDistance= 125.0;
   MaxDistance= 750.0;
   type     = $SimAudioType;
};

datablock AudioProfile(ClockTowerBellSound)
{
   filename    = "./bell.wav";
   description = ClockTowerBellDesc;
   preload = true;
};

You mean nobody but the host?  When I host I can hear the blackhawk's blade sound.

You mean nobody but the host?  When I host I can hear the blackhawk's blade sound.
Exactly, I believe no one else can hear the blade sound

The Blackhawk has a blade sound!?!
Post of Unhelpfullness

Interesting, audioDescription datablocks do appear to be sent to clients when they load, I wonder what could be the cause of this.

Interesting, audioDescription datablocks do appear to be sent to clients when they load, I wonder what could be the cause of this.
Bug?
Badspot forgot?

Bug?
Badspot forgot?
This seems more like something that would be a problem with the engine.

http://www.garagegames.com/community/forums/viewthread/66927/1#comment-485216
Adding variables to remember the datablock object IDs in unpackUpdate and then resolving those IDs to object pointers in onAdd (as has been suggested elsewhere) solved the problem of AudioProfiles never being ghosted to clients.


Bump
What are they for?
Describe max distances for audio, volume... Every sounds has a description in which it goes by.
Let me do this:
Code: [Select]
class  AudioDescription : public SimDataBlock {
  public:
   /*!
    */
   float volume;
   /*!
    */
   bool isLooping;
   /*!
    */
   bool isStreaming;
   /*!
    */
   bool is3D;
   /*!
    */
   float referenceDistance;
   /*!
    */
   float maxDistance;
   /*!
    */
   int coneInsideAngle;
   /*!
    */
   int coneOutsideAngle;
   /*!
    */
   float coneOutsideVolume;
   /*!
    */
   Point3F coneVector;
   /*!
    */
   float environmentLevel;
   /*!
    */
   int loopCount;
   /*!
    */
   int minLoopGap;
   /*!
    */
   int maxLoopGap;
   /*!
    */
   int type;
};