[Bf-blender-cvs] [85637311c28] blender-v2.81-release: Viewport: Fix stereo 3d camera framings when pivot is not center

Dalai Felinto noreply at git.blender.org
Wed Nov 6 21:49:03 CET 2019


Commit: 85637311c28f49b55286d3287d4c7cefbcbca18a
Author: Dalai Felinto
Date:   Wed Nov 6 17:44:01 2019 -0300
Branches: blender-v2.81-release
https://developer.blender.org/rB85637311c28f49b55286d3287d4c7cefbcbca18a

Viewport: Fix stereo 3d camera framings when pivot is not center

As reported by Clément Foucault. This is a small thing but since we
are refactoring the draw manager for the next blender is nice to
have it fully working before the refactor for comparison.

Note: Camera volume and render were both fine, the camera frame is the
one thing that was not working.

Also in toe-in the convergence plane is always facing the original
camera orientation. It is a known small annoyance.

===================================================================

M	source/blender/draw/modes/object_mode.c

===================================================================

diff --git a/source/blender/draw/modes/object_mode.c b/source/blender/draw/modes/object_mode.c
index fe17019a5b5..781c7e6a488 100644
--- a/source/blender/draw/modes/object_mode.c
+++ b/source/blender/draw/modes/object_mode.c
@@ -2099,7 +2099,8 @@ static void camera_view3d_stereoscopy_display_extra(OBJECT_ShadingGroupList *sgl
     if (cam->stereo.convergence_mode == CAM_S3D_OFFAXIS) {
       const float shift_x = ((BKE_camera_multiview_shift_x(&scene->r, ob, viewnames[eye]) -
                               cam->shiftx) *
-                             (drawsize * scale[0] * fac));
+                             (drawsize * scale[0] * fac)) *
+                            (cam->stereo.pivot == CAM_S3D_PIVOT_CENTER ? 1.0f : 2.0f);
 
       for (int i = 0; i < 4; i++) {
         cam->runtime.drw_corners[eye][i][0] += shift_x;



More information about the Bf-blender-cvs mailing list