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:
authorBastien Montagne <bastien@blender.org>2020-04-16 18:09:01 +0300
committerBastien Montagne <bastien@blender.org>2020-04-16 18:09:01 +0300
commit67ddf68dd9531a00a4d69ee28c44d82e87f69e8d (patch)
tree4f01cdb48cccbb9400ae3adb624fd61ab137f4c6 /source/blender/gpu
parentdb600fd63998b81022f01e0b1b6b71c9cd359130 (diff)
parente9bf624a498a4f0074374740737d47c5df7fd87d (diff)
Merge branch 'blender-v2.83-release'
Diffstat (limited to 'source/blender/gpu')
-rw-r--r--source/blender/gpu/intern/gpu_viewport.c23
1 files changed, 8 insertions, 15 deletions
diff --git a/source/blender/gpu/intern/gpu_viewport.c b/source/blender/gpu/intern/gpu_viewport.c
index ad74ce02731..ed825db26ac 100644
--- a/source/blender/gpu/intern/gpu_viewport.c
+++ b/source/blender/gpu/intern/gpu_viewport.c
@@ -217,18 +217,6 @@ static void gpu_viewport_framebuffer_view_set(GPUViewport *viewport, int view)
GPU_ATTACHMENT_TEXTURE(dtxl->color_overlay),
});
- if (((viewport->flag & GPU_VIEWPORT_STEREO) != 0)) {
- GPU_framebuffer_ensure_config(&dfbl->stereo_comp_fb,
- {
- GPU_ATTACHMENT_NONE,
- GPU_ATTACHMENT_TEXTURE(dtxl->color),
- GPU_ATTACHMENT_TEXTURE(dtxl->color_overlay),
- });
- }
- else {
- dfbl->stereo_comp_fb = NULL;
- }
-
viewport->active_view = view;
}
@@ -492,9 +480,6 @@ static void gpu_viewport_default_fb_create(GPUViewport *viewport)
ok = ok && GPU_framebuffer_check_valid(dfbl->color_only_fb, NULL);
ok = ok && GPU_framebuffer_check_valid(dfbl->depth_only_fb, NULL);
ok = ok && GPU_framebuffer_check_valid(dfbl->overlay_only_fb, NULL);
- if (((viewport->flag & GPU_VIEWPORT_STEREO) != 0)) {
- ok = ok && GPU_framebuffer_check_valid(dfbl->stereo_comp_fb, NULL);
- }
cleanup:
if (!ok) {
GPU_viewport_free(viewport);
@@ -625,6 +610,14 @@ void GPU_viewport_stereo_composite(GPUViewport *viewport, Stereo3dFormat *stereo
DefaultTextureList *dtxl = viewport->txl;
DefaultFramebufferList *dfbl = viewport->fbl;
+ /* The composite framebuffer object needs to be created in the window context. */
+ GPU_framebuffer_ensure_config(&dfbl->stereo_comp_fb,
+ {
+ GPU_ATTACHMENT_NONE,
+ GPU_ATTACHMENT_TEXTURE(dtxl->color),
+ GPU_ATTACHMENT_TEXTURE(dtxl->color_overlay),
+ });
+
GPUVertFormat *vert_format = immVertexFormat();
uint pos = GPU_vertformat_attr_add(vert_format, "pos", GPU_COMP_F32, 2, GPU_FETCH_FLOAT);
GPU_framebuffer_bind(dfbl->stereo_comp_fb);