diff options
Diffstat (limited to 'intern')
-rw-r--r-- | intern/audaspace/OpenAL/AUD_OpenALDevice.cpp | 2 | ||||
-rw-r--r-- | intern/cycles/render/scene.cpp | 17 | ||||
-rw-r--r-- | intern/ghost/intern/GHOST_WindowCocoa.mm | 4 |
3 files changed, 15 insertions, 8 deletions
diff --git a/intern/audaspace/OpenAL/AUD_OpenALDevice.cpp b/intern/audaspace/OpenAL/AUD_OpenALDevice.cpp index c3877c2c9f2..d055c131183 100644 --- a/intern/audaspace/OpenAL/AUD_OpenALDevice.cpp +++ b/intern/audaspace/OpenAL/AUD_OpenALDevice.cpp @@ -994,7 +994,7 @@ void AUD_OpenALDevice::updateStreams() if(info != AL_PLAYING) { // if it really stopped - if(sound->m_eos) + if(sound->m_eos && info != AL_INITIAL) { if(sound->m_stop) sound->m_stop(sound->m_stop_data); diff --git a/intern/cycles/render/scene.cpp b/intern/cycles/render/scene.cpp index 71f5a9dafed..daf22d90978 100644 --- a/intern/cycles/render/scene.cpp +++ b/intern/cycles/render/scene.cpp @@ -137,6 +137,8 @@ void Scene::device_update(Device *device_, Progress& progress) * - Camera may be used for adapative subdivison. * - Displacement shader must have all shader data available. * - Light manager needs lookup tables and final mesh data to compute emission CDF. + * - Film needs light manager to run for use_light_visibility + * - Lookup tables are done a second time to handle film tables */ image_manager->set_pack_images(device->info.pack_images); @@ -171,11 +173,6 @@ void Scene::device_update(Device *device_, Progress& progress) if(progress.get_cancel()) return; - progress.set_status("Updating Film"); - film->device_update(device, &dscene, this); - - if(progress.get_cancel()) return; - progress.set_status("Updating Lookup Tables"); lookup_tables->device_update(device, &dscene); @@ -196,11 +193,21 @@ void Scene::device_update(Device *device_, Progress& progress) if(progress.get_cancel()) return; + progress.set_status("Updating Film"); + film->device_update(device, &dscene, this); + + if(progress.get_cancel()) return; + progress.set_status("Updating Integrator"); integrator->device_update(device, &dscene, this); if(progress.get_cancel()) return; + progress.set_status("Updating Lookup Tables"); + lookup_tables->device_update(device, &dscene); + + if(progress.get_cancel()) return; + progress.set_status("Updating Device", "Writing constant memory"); device->const_copy_to("__data", &dscene.data, sizeof(dscene.data)); } diff --git a/intern/ghost/intern/GHOST_WindowCocoa.mm b/intern/ghost/intern/GHOST_WindowCocoa.mm index a1dcbe7ad9a..95bf060776f 100644 --- a/intern/ghost/intern/GHOST_WindowCocoa.mm +++ b/intern/ghost/intern/GHOST_WindowCocoa.mm @@ -598,7 +598,7 @@ GHOST_WindowCocoa::GHOST_WindowCocoa( // Force software OpenGL, for debugging if (getenv("BLENDER_SOFTWAREGL")) { pixelFormatAttrsWindow[i++] = NSOpenGLPFARendererID; - pixelFormatAttrsWindow[i++] = kCGLRendererGenericID; + pixelFormatAttrsWindow[i++] = kCGLRendererAppleSWID; } else pixelFormatAttrsWindow[i++] = NSOpenGLPFAAccelerated; @@ -643,7 +643,7 @@ GHOST_WindowCocoa::GHOST_WindowCocoa( // Force software OpenGL, for debugging if (getenv("BLENDER_SOFTWAREGL")) { pixelFormatAttrsWindow[i++] = NSOpenGLPFARendererID; - pixelFormatAttrsWindow[i++] = kCGLRendererGenericID; + pixelFormatAttrsWindow[i++] = kCGLRendererAppleSWID; } else pixelFormatAttrsWindow[i++] = NSOpenGLPFAAccelerated; |