[Bf-blender-cvs] [ded1d86] GPU_data_request: Just clear the buffers in new viewport
Antony Riakiotakis
noreply at git.blender.org
Mon Feb 23 11:18:43 CET 2015
Commit: ded1d86b8254236f8f685ee9bea4ca862c4cd46e
Author: Antony Riakiotakis
Date: Mon Feb 23 11:18:17 2015 +0100
Branches: GPU_data_request
https://developer.blender.org/rBded1d86b8254236f8f685ee9bea4ca862c4cd46e
Just clear the buffers in new viewport
===================================================================
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 bab6947..54e69a4 100644
--- a/source/blender/editors/space_view3d/view3d_draw.c
+++ b/source/blender/editors/space_view3d/view3d_draw.c
@@ -3506,6 +3506,52 @@ static void update_lods(Scene *scene, float camera_pos[3])
}
#endif
+/* uploads and caches view dependent state such as view/projection matrix */
+static void view3d_update_view_dependent_uniforms()
+{
+
+}
+
+static void view3d_main_area_draw_viewport_new(const bContext *C, Scene *scene, View3D *v3d,
+ ARegion *ar, const char **grid_unit)
+{
+ if (UI_GetThemeValue(TH_SHOW_BACK_GRAD)) {
+ glMatrixMode(GL_PROJECTION);
+ glPushMatrix();
+ glLoadIdentity();
+ glMatrixMode(GL_MODELVIEW);
+ glPushMatrix();
+ glLoadIdentity();
+
+ glEnable(GL_DEPTH_TEST);
+ glDepthFunc(GL_ALWAYS);
+ glShadeModel(GL_SMOOTH);
+ glBegin(GL_QUADS);
+ UI_ThemeColor(TH_LOW_GRAD);
+ glVertex3f(-1.0, -1.0, 1.0);
+ glVertex3f(1.0, -1.0, 1.0);
+ UI_ThemeColor(TH_HIGH_GRAD);
+ glVertex3f(1.0, 1.0, 1.0);
+ glVertex3f(-1.0, 1.0, 1.0);
+ glEnd();
+ glShadeModel(GL_FLAT);
+
+ glDepthFunc(GL_LEQUAL);
+ glDisable(GL_DEPTH_TEST);
+
+ glMatrixMode(GL_PROJECTION);
+ glPopMatrix();
+
+ glMatrixMode(GL_MODELVIEW);
+ glPopMatrix();
+ }
+ else {
+ UI_ThemeClearColor(TH_HIGH_GRAD);
+ glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT | GL_STENCIL_BUFFER_BIT);
+ }
+}
+
+
static void view3d_main_area_draw_objects(const bContext *C, Scene *scene, View3D *v3d,
ARegion *ar, const char **grid_unit)
{
@@ -3716,7 +3762,7 @@ void view3d_main_area_draw(const bContext *C, ARegion *ar)
/* draw viewport using opengl */
if (v3d->drawtype != OB_RENDER || !view3d_main_area_do_render_draw(scene) || clip_border) {
if (U.gameflags & USER_VIEWPORT_2)
- ;
+ view3d_main_area_draw_viewport_new(C, scene, v3d, ar, &grid_unit);
else {
view3d_main_area_draw_objects(C, scene, v3d, ar, &grid_unit);
}
More information about the Bf-blender-cvs
mailing list