diff options
author | Sergey Sharybin <sergey.vfx@gmail.com> | 2014-03-26 12:57:30 +0400 |
---|---|---|
committer | Sergey Sharybin <sergey.vfx@gmail.com> | 2014-03-26 13:58:53 +0400 |
commit | 74518b28267e9b18199212fbaa3c689fa018d20c (patch) | |
tree | 71a4ea9f274f4a4301c48060984df0802af46c78 /intern/cycles/device/device.h | |
parent | 3b0832dd869b4c27f0b976e36134332cf427430c (diff) |
Fix T39420: Cycles viewport/preview flickers, when moving mouse across editors
Issue was caused by the wrong usage of OCIO GLSL binding API. To make it
work properly on pre-GLSL-1.3 drivers shader is to be enabled after the
texture is binded to the opengl context. Otherwise it wouldn't know the
proper texture size.
This is actually a regression in 2.70 and to be ported to 'a'.
Diffstat (limited to 'intern/cycles/device/device.h')
-rw-r--r-- | intern/cycles/device/device.h | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/intern/cycles/device/device.h b/intern/cycles/device/device.h index f94075f9aa5..cbabcb1e20e 100644 --- a/intern/cycles/device/device.h +++ b/intern/cycles/device/device.h @@ -69,6 +69,11 @@ public: /* Device */ +struct DeviceDrawParams { + boost::function<void(void)> bind_display_space_shader_cb; + boost::function<void(void)> unbind_display_space_shader_cb; +}; + class Device { protected: Device(DeviceInfo& info_, Stats &stats_, bool background) : background(background), info(info_), stats(stats_) {} @@ -121,7 +126,8 @@ public: /* opengl drawing */ virtual void draw_pixels(device_memory& mem, int y, int w, int h, - int dy, int width, int height, bool transparent); + int dy, int width, int height, bool transparent, + const DeviceDrawParams &draw_params); #ifdef WITH_NETWORK /* networking */ |