diff options
author | Juan Linietsky <reduzio@gmail.com> | 2014-08-01 22:10:38 -0300 |
---|---|---|
committer | Juan Linietsky <reduzio@gmail.com> | 2014-08-01 22:10:38 -0300 |
commit | 678948068bbde7f12a9c5f28a467b6cf4d127851 (patch) | |
tree | 75572f3a5cc6089a6ca3046e9307d0a7c0b72c51 /platform/iphone | |
parent | 9ff6d55822647c87eef392147ea15641d0922d47 (diff) | |
download | redot-engine-678948068bbde7f12a9c5f28a467b6cf4d127851.tar.gz |
Small Issues & Maintenance
-=-=-=-=-=-=-=-=-=-=-=-=-=
-Begin work on Navigation Meshes (simple pathfinding for now, will improve soon)
-More doc on theme overriding
-Upgraded OpenSSL to version without bugs
-Misc bugfixes
Diffstat (limited to 'platform/iphone')
-rw-r--r-- | platform/iphone/SCsub | 2 | ||||
-rw-r--r-- | platform/iphone/audio_driver_iphone.cpp | 32 | ||||
-rw-r--r-- | platform/iphone/audio_driver_iphone.h | 4 | ||||
-rw-r--r-- | platform/iphone/detect.py | 6 |
4 files changed, 40 insertions, 4 deletions
diff --git a/platform/iphone/SCsub b/platform/iphone/SCsub index 0113f75697..4a4e06cc0f 100644 --- a/platform/iphone/SCsub +++ b/platform/iphone/SCsub @@ -35,7 +35,7 @@ if env['ios_appirater'] == "yes": obj = env_ios.Object('godot_iphone.cpp') prog = None -if env["target"]=="release": +if env["target"]=="release" || env["target"] == "release_debug": prog = env_ios.Program('#bin/godot_opt', [obj] + iphone_lib) #action = "dsymutil "+File(prog)[0].path+" -o ../build/script_exec/build/Debug-iphoneos/script_exec.app.dSYM" #env.AddPostAction(prog, action) diff --git a/platform/iphone/audio_driver_iphone.cpp b/platform/iphone/audio_driver_iphone.cpp index d39b8f3c4d..611f57dea3 100644 --- a/platform/iphone/audio_driver_iphone.cpp +++ b/platform/iphone/audio_driver_iphone.cpp @@ -99,7 +99,16 @@ OSStatus AudioDriverIphone::output_callback(void *inRefCon, AudioBuffer *abuf; AudioDriverIphone* ad = (AudioDriverIphone*)inRefCon; - if (!ad->active) { + bool mix = true; + + if (!ad_active) + mix = false; + else { + mix = mutex->try_lock() == OK; + }; + + + if (!mix) { for (unsigned int i = 0; i < ioData->mNumberBuffers; i++) { abuf = &ioData->mBuffers[i]; zeromem(abuf->mData, abuf->mDataByteSize); @@ -147,11 +156,28 @@ AudioDriverSW::OutputFormat AudioDriverIphone::get_output_format() const { return OUTPUT_STEREO; }; -void AudioDriverIphone::lock() {}; -void AudioDriverIphone::unlock() {}; +void AudioDriverIphone::lock() { + + if (active && mutex) + mutex->lock(); +}; + +void AudioDriverIphone::unlock() { + if (active && mutex) + mutex->unlock(); +}; void AudioDriverIphone::finish() { memdelete_arr(samples_in); }; + +AudioDriverIphone::AudioDriverIphone() { + + mutex=Mutex::create();//NULL; +}; + +AudioDriverIphone::~AudioDriverIphone() { + +}; diff --git a/platform/iphone/audio_driver_iphone.h b/platform/iphone/audio_driver_iphone.h index eec54d9ee3..05fa741282 100644 --- a/platform/iphone/audio_driver_iphone.h +++ b/platform/iphone/audio_driver_iphone.h @@ -34,6 +34,7 @@ class AudioDriverIphone : public AudioDriverSW { AudioComponentInstance audio_unit; bool active; + Mutex *mutex; int channels; int32_t* samples_in; @@ -59,5 +60,8 @@ public: virtual void lock(); virtual void unlock(); virtual void finish(); + + AudioDriverIphone(); + ~AudioDriverIphone(); }; diff --git a/platform/iphone/detect.py b/platform/iphone/detect.py index ec6e4c98f1..33bde58041 100644 --- a/platform/iphone/detect.py +++ b/platform/iphone/detect.py @@ -104,6 +104,12 @@ def configure(env): env['OBJSUFFIX'] = "_opt"+env['OBJSUFFIX'] env['LIBSUFFIX'] = "_opt"+env['LIBSUFFIX'] + elif env["target"] == "release_debug": + env.Append(CCFLAGS=['-Os', '-ffast-math', '-DNS_BLOCK_ASSERTIONS=1','-Wall','-DDEBUG_ENABLED']) + env.Append(LINKFLAGS=['-Os', '-ffast-math']) + env['OBJSUFFIX'] = "_opt"+env['OBJSUFFIX'] + env['LIBSUFFIX'] = "_opt"+env['LIBSUFFIX'] + elif (env["target"]=="debug"): env.Append(CCFLAGS=['-D_DEBUG', '-DDEBUG=1', '-gdwarf-2', '-Wall', '-O0', '-DDEBUG_ENABLED']) |