PDA

View Full Version : EAX in openAL


McCloud
09-25-2004, 05:54 AM
I cant find any code examples of EAX being used by openAL. Does anyone even use it? This sucks. :angry:

Do EAX environment operations only apply to mono waves? :unsure:

JSoftware
09-25-2004, 06:31 AM
You need this file included: http://ftp.berlios.de/pub/worldspace/Mingw...nclude/al/eax.h (http://ftp.berlios.de/pub/worldspace/Mingw32_Librerias/include/al/eax.h)

and you request it like this:


* alIsExtensionPresent("EAX2.0");
* palubyte FnName = "EAXSet";
* eaxSet = alGetProcAddress(FnName);
* FnName = "EAXGet";
* eaxGet = alGetProcAddress(FnName);

* //set the effect
* TAluInt Env = EAX_ENVIRONMENT_BATHROOM;
* eaxSet(DSPROPSETID_EAX20_ListenerProperties,
* * * * DSPROPERTY_EAXLISTENER_ENVIRONMENT or
* * * * DSPROPERTY_EAXLISTENER_DEFERRED,
* * * * 0, &Env, sizeof(TALuint));
* // Commit settings on source 0
* eaxSet(DSPROPSETID_EAX20_BufferProperties,
* * * * DSPROPERTY_EAXBUFFER_COMMITDEFERREDSETTINGS,
* * * * source, null, 0); //where source is the source to apply it to.. i think....
* // Commit Listener settings
* eaxSet(DSPROPSETID_EAX20_ListenerProperties,
* * * * DSPROPERTY_EAXLISTENER_COMMITDEFERREDSETTINGS, 0, null, 0);


this is translated from object pascal so please ask somebody else if there's problems with it.. i'm not really an expert into c++ :blush:

Kenneth Gorking
09-27-2004, 12:38 PM
That header is from 1999! I am pretty sure EAX 4.0 exist nowadays.

Check out these links for more info:
EAX 2.0 (http://www.atc.creative.com/algorithms/eax20.pdf)
alEax.c (http://cvs.seul.org/cgi-bin/cvsweb-1.80.cgi/games/openal/win/OpenAL32/alEax.c?rev=1.6)

AM_
02-11-2005, 07:04 AM
I cant find any code examples of EAX being used by openAL. Does anyone even use it? This sucks. :angry:

Do EAX environment operations only apply to mono waves? :unsure:
11948

Yes, EAX 1 -> 4 is only applied to mono sources. Stereo support is promised in version 5. Until then, just place 2 3D sources in the room, and pan them.