BGE: Partial fix for [#36151] "Distance model not carrying over to standalone" reported by Florian Schneider (drjaska).

The Blenderplayer wasn't initializing 3D audio settings from the scene settings like the embedded player was.
This commit is contained in:
2013-07-19 23:31:45 +00:00
parent 017f09b9d4
commit cf62de6c6d
3 changed files with 23 additions and 0 deletions

View File

@@ -81,4 +81,11 @@ if(WITH_INTERNATIONAL)
add_definitions(-DWITH_INTERNATIONAL)
endif()
if(WITH_AUDASPACE)
list(APPEND INC
../../../../intern/audaspace/intern
)
add_definitions(-DWITH_AUDASPACE)
endif()
blender_add_lib_nolist(ge_player_ghost "${SRC}" "${INC}" "${INC_SYS}")

View File

@@ -99,6 +99,12 @@ extern "C"
#include "GHOST_IWindow.h"
#include "GHOST_Rect.h"
#ifdef WITH_AUDASPACE
# include "AUD_C-API.h"
# include "AUD_I3DDevice.h"
# include "AUD_IDevice.h"
#endif
static void frameTimerProc(GHOST_ITimerTask* task, GHOST_TUns64 time);
static GHOST_ISystem* fSystem = 0;
@@ -725,6 +731,15 @@ bool GPG_Application::startEngine(void)
if (m_startScene->gm.stereoflag == STEREO_DOME)
m_ketsjiengine->InitDome(m_startScene->gm.dome.res, m_startScene->gm.dome.mode, m_startScene->gm.dome.angle, m_startScene->gm.dome.resbuf, m_startScene->gm.dome.tilt, m_startScene->gm.dome.warptext);
// initialize 3D Audio Settings
AUD_I3DDevice* dev = AUD_get3DDevice();
if (dev)
{
dev->setSpeedOfSound(m_startScene->audio.speed_of_sound);
dev->setDopplerFactor(m_startScene->audio.doppler_factor);
dev->setDistanceModel(AUD_DistanceModel(m_startScene->audio.distance_model));
}
#ifdef WITH_PYTHON
// Set the GameLogic.globalDict from marshal'd data, so we can
// load new blend files and keep data in GameLogic.globalDict

View File

@@ -43,6 +43,7 @@ incs = [
'#intern/guardedalloc',
'#intern/moto/include',
'#intern/container',
'#intern/audaspace/intern',
'#source/gameengine/Rasterizer/RAS_OpenGLRasterizer',
'#source/gameengine/BlenderRoutines',
'#source/gameengine/Converter',