[Bf-blender-cvs] [623841e7df1] HMD_viewport: Fix HMD view drawing black if device is set to 'None'
Julian Eisel
noreply at git.blender.org
Wed Apr 12 01:10:06 CEST 2017
Commit: 623841e7df1f7b332b933d97fe57f06fa7337f0f
Author: Julian Eisel
Date: Wed Apr 12 01:09:18 2017 +0200
Branches: HMD_viewport
https://developer.blender.org/rB623841e7df1f7b332b933d97fe57f06fa7337f0f
Fix HMD view drawing black if device is set to 'None'
===================================================================
M source/blender/editors/space_view3d/view3d_draw.c
===================================================================
diff --git a/source/blender/editors/space_view3d/view3d_draw.c b/source/blender/editors/space_view3d/view3d_draw.c
index 20ea82fe567..9eacbebc047 100644
--- a/source/blender/editors/space_view3d/view3d_draw.c
+++ b/source/blender/editors/space_view3d/view3d_draw.c
@@ -3261,12 +3261,7 @@ void ED_view3d_draw_offscreen(
is_persp = rv3d->is_persp;
}
const bool is_left = v3d->multiview_eye == STEREO_LEFT_ID;
-#ifdef WITH_INPUT_HMD
- void *hmd_distortion_params = WM_device_HMD_distortion_parameters_get();
-#else
- void *hmd_distortion_params = NULL;
-#endif
- GPU_fx_do_composite_pass(fx, winmat, is_persp, scene, ofs, is_left, hmd_distortion_params);
+ GPU_fx_do_composite_pass(fx, winmat, is_persp, scene, ofs, is_left, NULL);
}
if ((v3d->flag2 & V3D_RENDER_SHADOW) == 0) {
@@ -4026,9 +4021,15 @@ static void view3d_main_region_draw_objects(
wmWindow *win = CTX_wm_window(C);
RegionView3D *rv3d = ar->regiondata;
unsigned int lay_used = v3d->lay_used;
-
+
/* post processing */
bool do_compositing = false;
+ void *hmd_distortion_params =
+#ifdef WITH_INPUT_HMD
+ WM_window_is_running_hmd_view(win) ? WM_device_HMD_distortion_parameters_get() : NULL;
+#else
+ NULL;
+#endif
/* shadow buffers, before we setup matrices */
if (draw_glsl_material(scene, NULL, v3d, v3d->drawtype))
@@ -4083,6 +4084,10 @@ static void view3d_main_region_draw_objects(
fx_settings.dof = NULL;
}
+ if (!hmd_distortion_params) {
+ fx_settings.fx_flag &= ~GPU_FX_FLAG_LensDist;
+ }
+
do_compositing = GPU_fx_compositor_initialize_passes(rv3d->compositor, &ar->winrct, &ar->drawrct, &fx_settings);
}
@@ -4100,12 +4105,6 @@ static void view3d_main_region_draw_objects(
/* post process */
if (do_compositing) {
const bool is_left = v3d->multiview_eye == STEREO_LEFT_ID;
- void *hmd_distortion_params =
-#ifdef WITH_INPUT_HMD
- WM_window_is_running_hmd_view(win) ? WM_device_HMD_distortion_parameters_get() : NULL;
-#else
- NULL;
-#endif
GPU_fx_do_composite_pass(
rv3d->compositor, rv3d->winmat, rv3d->is_persp, scene, NULL, is_left, hmd_distortion_params);
More information about the Bf-blender-cvs
mailing list