OpenAL WIP.

This commit is contained in:
Steven Fuller 2008-05-23 00:19:45 -07:00 committed by Patryk Obara
parent 243e6d8f55
commit 6efffab0c5

View file

@ -20,7 +20,7 @@
#include "stratdef.h" #include "stratdef.h"
#if defined( _MSC_VER ) #if defined( _MSC_VER )
#include <eax.h> #include <AL/eax.h>
#endif #endif
ACTIVESOUNDSAMPLE ActiveSounds[SOUND_MAXACTIVE]; ACTIVESOUNDSAMPLE ActiveSounds[SOUND_MAXACTIVE];
@ -50,8 +50,8 @@ static struct {
// EAX1.0 // EAX1.0
#define EAX_ENVIRONMENT_DEFAULT EAX_ENVIRONMENT_PLAIN #define EAX_ENVIRONMENT_DEFAULT EAX_ENVIRONMENT_PLAIN
ALAPI ALenum ALAPIENTRY (*EAX_pfPropSet)(const GUID *propertySetID,ALuint property,ALuint source,ALvoid *pValue,ALuint size); EAXSet EAX_pfPropSet;
ALAPI ALenum ALAPIENTRY (*EAX_pfPropGet)(const GUID *propertySetID,ALuint property,ALuint source,ALvoid *value,ALuint size); EAXGet EAX_pfPropGet;
#endif #endif
/* start simplistic riff wave parsing */ /* start simplistic riff wave parsing */
@ -235,7 +235,7 @@ int PlatStartSoundSys()
EAX_pfPropSet = NULL; EAX_pfPropSet = NULL;
EAX_pfPropGet = NULL; EAX_pfPropGet = NULL;
if( alISExtensionPresent( (ALubyte*) "EAX" ) == AL_TRUE ) { if( alIsExtensionPresent( (ALubyte*) "EAX" ) == AL_TRUE ) {
EAX_pfPropSet = alGetProcAddress( (ALubyte*) "EAXSet" ); EAX_pfPropSet = alGetProcAddress( (ALubyte*) "EAXSet" );
EAX_pfPropGet = alGetProcAddress( (ALubyte*) "EAXGet" ); EAX_pfPropGet = alGetProcAddress( (ALubyte*) "EAXGet" );
} }
@ -920,14 +920,14 @@ void PlatSetEnviroment(unsigned int env_index, float reverb_mix)
} }
if( EAX_pfPropSet != NULL ) { if( EAX_pfPropSet != NULL ) {
ALulong ulEAXVal = env_index; ALuint ulEAXVal = env_index;
EAX_pfPropSet(PROPSETID_EAX_ListenerProperties, EAX_pfPropSet(&DSPROPSETID_EAX20_ListenerProperties,
DSPROPERTY_EAXLISTENER_ENVIRONMENT, 0, &ulEAXVal, sizeof( ulEAXVal ) ); DSPROPERTY_EAXLISTENER_ENVIRONMENT, 0, &ulEAXVal, sizeof( ulEAXVal ) );
// how to set all parameters: // how to set all parameters:
// EAXLISTENERPROPERTIES mystruct = { ... }; // EAXLISTENERPROPERTIES mystruct = { ... };
// EAX_pfPrp[Set(PROPSETID_EAX_ListenerProperites, // EAX_pfPropSet(&DSPROPSETID_EAX_ListenerProperites,
// DSPROPERTY_EAXLISTENER_ALL, 0, &mystruct, sizeof(EAXLISTENERPROPERTIES)); // DSPROPERTY_EAXLISTENER_ALL, 0, &mystruct, sizeof(EAXLISTENERPROPERTIES));
} }