mirror of
https://github.com/ClassiCube/ClassiCube.git
synced 2025-09-11 16:45:48 -04:00
Merge branch 'ClassiCube:master' into switch
This commit is contained in:
commit
e1d830064c
23
src/Audio.c
23
src/Audio.c
@ -178,6 +178,8 @@ static cc_bool AudioBackend_Init(void) {
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void AudioBackend_Tick(void) { }
|
||||||
|
|
||||||
static void AudioBackend_Free(void) {
|
static void AudioBackend_Free(void) {
|
||||||
if (!audio_device) return;
|
if (!audio_device) return;
|
||||||
_alcMakeContextCurrent(NULL);
|
_alcMakeContextCurrent(NULL);
|
||||||
@ -399,7 +401,9 @@ struct AudioContext {
|
|||||||
int count, channels, sampleRate;
|
int count, channels, sampleRate;
|
||||||
cc_uint32 _tmpSize; void* _tmpData;
|
cc_uint32 _tmpSize; void* _tmpData;
|
||||||
};
|
};
|
||||||
|
|
||||||
static cc_bool AudioBackend_Init(void) { return true; }
|
static cc_bool AudioBackend_Init(void) { return true; }
|
||||||
|
void AudioBackend_Tick(void) { }
|
||||||
static void AudioBackend_Free(void) { }
|
static void AudioBackend_Free(void) { }
|
||||||
#define AUDIO_HAS_BACKEND
|
#define AUDIO_HAS_BACKEND
|
||||||
|
|
||||||
@ -609,6 +613,8 @@ static cc_bool AudioBackend_Init(void) {
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void AudioBackend_Tick(void) { }
|
||||||
|
|
||||||
static void AudioBackend_Free(void) {
|
static void AudioBackend_Free(void) {
|
||||||
if (slOutputObject) {
|
if (slOutputObject) {
|
||||||
(*slOutputObject)->Destroy(slOutputObject);
|
(*slOutputObject)->Destroy(slOutputObject);
|
||||||
@ -794,6 +800,9 @@ static cc_bool AudioBackend_Init(void) {
|
|||||||
ndspSetOutputMode(NDSP_OUTPUT_STEREO);
|
ndspSetOutputMode(NDSP_OUTPUT_STEREO);
|
||||||
return result == 0;
|
return result == 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void AudioBackend_Tick(void) { }
|
||||||
|
|
||||||
static void AudioBackend_Free(void) { }
|
static void AudioBackend_Free(void) { }
|
||||||
#define AUDIO_HAS_BACKEND
|
#define AUDIO_HAS_BACKEND
|
||||||
|
|
||||||
@ -1183,6 +1192,8 @@ static cc_bool AudioBackend_Init(void) {
|
|||||||
return snd_stream_init() == 0;
|
return snd_stream_init() == 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void AudioBackend_Tick(void) { }
|
||||||
|
|
||||||
static void AudioBackend_Free(void) {
|
static void AudioBackend_Free(void) {
|
||||||
snd_stream_shutdown();
|
snd_stream_shutdown();
|
||||||
}
|
}
|
||||||
@ -1321,6 +1332,10 @@ static cc_bool AudioBackend_Init(void) {
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void AudioBackend_Tick(void) { }
|
||||||
|
|
||||||
|
static void AudioBackend_Free(void) { }
|
||||||
|
|
||||||
void Audio_Init(struct AudioContext* ctx, int buffers) { }
|
void Audio_Init(struct AudioContext* ctx, int buffers) { }
|
||||||
void Audio_Close(struct AudioContext* ctx) {
|
void Audio_Close(struct AudioContext* ctx) {
|
||||||
if (ctx->contextID) interop_AudioClose(ctx->contextID);
|
if (ctx->contextID) interop_AudioClose(ctx->contextID);
|
||||||
@ -1368,13 +1383,19 @@ void Audio_AllocChunks(cc_uint32 size, void** chunks, int numChunks) {
|
|||||||
void Audio_FreeChunks(void** chunks, int numChunks) {
|
void Audio_FreeChunks(void** chunks, int numChunks) {
|
||||||
AudioBase_FreeChunks(chunks, numChunks);
|
AudioBase_FreeChunks(chunks, numChunks);
|
||||||
}
|
}
|
||||||
|
#else
|
||||||
|
/*########################################################################################################################*
|
||||||
|
*----------------------------------------------------Null/Empty backend---------------------------------------------------*
|
||||||
|
*#########################################################################################################################*/
|
||||||
|
void AudioBackend_Tick(void) { }
|
||||||
|
static void AudioBackend_Free(void) { }
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/*########################################################################################################################*
|
/*########################################################################################################################*
|
||||||
*---------------------------------------------------Common backend code---------------------------------------------------*
|
*---------------------------------------------------Common backend code---------------------------------------------------*
|
||||||
*#########################################################################################################################*/
|
*#########################################################################################################################*/
|
||||||
#ifndef AUDIO_HAS_BACKEND
|
#ifndef AUDIO_HAS_BACKEND
|
||||||
static void AudioBackend_Free(void) { }
|
|
||||||
#else
|
#else
|
||||||
static void AudioBase_Clear(struct AudioContext* ctx) {
|
static void AudioBase_Clear(struct AudioContext* ctx) {
|
||||||
ctx->count = 0;
|
ctx->count = 0;
|
||||||
|
@ -41,6 +41,8 @@ void Audio_PlayDigSound(cc_uint8 type);
|
|||||||
void Audio_PlayStepSound(cc_uint8 type);
|
void Audio_PlayStepSound(cc_uint8 type);
|
||||||
#define AUDIO_MAX_BUFFERS 4
|
#define AUDIO_MAX_BUFFERS 4
|
||||||
|
|
||||||
|
void AudioBackend_Tick(void);
|
||||||
|
|
||||||
/* Initialises an audio context. */
|
/* Initialises an audio context. */
|
||||||
void Audio_Init(struct AudioContext* ctx, int buffers);
|
void Audio_Init(struct AudioContext* ctx, int buffers);
|
||||||
/* Stops any playing audio and then frees the audio context. */
|
/* Stops any playing audio and then frees the audio context. */
|
||||||
|
@ -621,6 +621,7 @@ static void Game_RenderFrame(double delta) {
|
|||||||
/* NOTE: EnvRenderer_UpdateFog also also sets clear color */
|
/* NOTE: EnvRenderer_UpdateFog also also sets clear color */
|
||||||
EnvRenderer_UpdateFog();
|
EnvRenderer_UpdateFog();
|
||||||
UpdateViewMatrix();
|
UpdateViewMatrix();
|
||||||
|
AudioBackend_Tick();
|
||||||
|
|
||||||
/* TODO: Not calling Gfx_EndFrame doesn't work with Direct3D9 */
|
/* TODO: Not calling Gfx_EndFrame doesn't work with Direct3D9 */
|
||||||
if (Window_Main.Inactive) return;
|
if (Window_Main.Inactive) return;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user