X-Git-Url: https://git.jsancho.org/?a=blobdiff_plain;f=Source%2Fopenal_wrapper.cpp;h=4331c69f33ff075d450336a0dadefc2e5d966959;hb=cc92cb7b7f9b87cb791c504bf930d622d74db368;hp=e316da4cea3f066a584888826f482901c699ae5a;hpb=5509b55dbc13227bdc7b97f2934fa71dad02cc66;p=lugaru.git diff --git a/Source/openal_wrapper.cpp b/Source/openal_wrapper.cpp index e316da4..4331c69 100644 --- a/Source/openal_wrapper.cpp +++ b/Source/openal_wrapper.cpp @@ -25,6 +25,9 @@ along with Lugaru. If not, see . #include "Quaternions.h" #include "openal_wrapper.h" #include "Sounds.h" +#include "Game.h" + +extern float slomofreq; // NOTE: // FMOD uses a Left Handed Coordinate system, OpenAL uses a Right Handed @@ -149,8 +152,7 @@ AL_API signed char OPENAL_Init(int mixrate, int maxsoftwarechannels, unsigned in alcMakeContextCurrent(ctx); alcProcessContext(ctx); - bool cmdline(const char * cmd); - if (cmdline("openalinfo")) { + if (commandLineOptions[OPENALINFO]) { printf("AL_VENDOR: %s\n", (char *) alGetString(AL_VENDOR)); printf("AL_RENDERER: %s\n", (char *) alGetString(AL_RENDERER)); printf("AL_VERSION: %s\n", (char *) alGetString(AL_VERSION)); @@ -375,7 +377,6 @@ AL_API OPENAL_SAMPLE *OPENAL_Sample_Load(int index, const char *name_or_data, un return NULL; // this is all the game does... OPENAL_SAMPLE *retval = NULL; - ALuint bufferName = 0; ALenum format = AL_NONE; ALsizei size = 0; ALuint frequency = 0; @@ -431,21 +432,20 @@ static signed char OPENAL_Sample_SetMode(OPENAL_SAMPLE *sptr, unsigned int mode) return true; } -AL_API signed char OPENAL_SetFrequency(int channel, int freq) +AL_API signed char OPENAL_SetFrequency(int channel, bool slomo) { if (!initialized) return false; if (channel == OPENAL_ALL) { for (int i = 0; i < num_channels; i++) - OPENAL_SetFrequency(i, freq); + OPENAL_SetFrequency(i, slomo); return true; } if ((channel < 0) || (channel >= num_channels)) return false; - if (freq == 8012) - // hack - alSourcef(impl_channels[channel].sid, AL_PITCH, 8012.0f / 44100.0f); + if (slomo) + alSourcef(impl_channels[channel].sid, AL_PITCH, ((ALfloat) slomofreq) / 44100.0f); else alSourcef(impl_channels[channel].sid, AL_PITCH, 1.0f); return true;