Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeroen Bakker <jeroen@blender.org>2020-09-15 10:28:35 +0300
committerJeroen Bakker <jeroen@blender.org>2020-09-15 10:29:58 +0300
commitac58663decabb25600862e7345377efe2da1ee92 (patch)
treeab9e1d6229eb721d96dcd7053557a147c0b38ff1
parent91e32bff90866acbfceda3b96a3462a55f7ccb71 (diff)
Fix T80776: Cannot switch between Slots of Render Result
Introduced by D8234. Added active render slot to determine if the GPUTexture is still up to date.
-rw-r--r--source/blender/blenkernel/intern/image_gpu.c5
-rw-r--r--source/blender/makesdna/DNA_image_types.h3
2 files changed, 6 insertions, 2 deletions
diff --git a/source/blender/blenkernel/intern/image_gpu.c b/source/blender/blenkernel/intern/image_gpu.c
index 8e2e3fd621c..57e7e9446d2 100644
--- a/source/blender/blenkernel/intern/image_gpu.c
+++ b/source/blender/blenkernel/intern/image_gpu.c
@@ -277,9 +277,12 @@ static GPUTexture *image_get_gpu_texture(Image *ima,
* the current `pass` and `layer` should be 0. */
short requested_pass = iuser ? iuser->pass : 0;
short requested_layer = iuser ? iuser->layer : 0;
- if (ima->gpu_pass != requested_pass || ima->gpu_layer != requested_layer) {
+ short requested_slot = ima->render_slot;
+ if (ima->gpu_pass != requested_pass || ima->gpu_layer != requested_layer ||
+ ima->gpu_slot != requested_slot) {
ima->gpu_pass = requested_pass;
ima->gpu_layer = requested_layer;
+ ima->gpu_slot = requested_slot;
ima->gpuflag |= IMA_GPU_REFRESH;
}
diff --git a/source/blender/makesdna/DNA_image_types.h b/source/blender/makesdna/DNA_image_types.h
index 4a05d7ba319..6e0e3d6d6b7 100644
--- a/source/blender/makesdna/DNA_image_types.h
+++ b/source/blender/makesdna/DNA_image_types.h
@@ -151,7 +151,8 @@ typedef struct Image {
short gpuflag;
short gpu_pass;
short gpu_layer;
- char _pad2[6];
+ short gpu_slot;
+ char _pad2[4];
/** Deprecated. */
struct PackedFile *packedfile DNA_DEPRECATED;