Smoke:
* Fix OpenGL drawing resulting (at least on windows) in missing panels when switching fullscreen + back
This commit is contained in:
@@ -203,17 +203,14 @@ void draw_volume(Scene *scene, ARegion *ar, View3D *v3d, Base *base, GPUTexture
|
|||||||
float *points = NULL;
|
float *points = NULL;
|
||||||
int numpoints = 0;
|
int numpoints = 0;
|
||||||
float cor[3] = {1.,1.,1.};
|
float cor[3] = {1.,1.,1.};
|
||||||
|
int gl_depth = 0, gl_blend = 0;
|
||||||
|
|
||||||
/*
|
glGetBooleanv(GL_BLEND, (GLboolean *)&gl_blend);
|
||||||
res[0] = smd->domain->res[0];
|
glGetBooleanv(GL_DEPTH_TEST, (GLboolean *)&gl_depth);
|
||||||
res[1] = smd->domain->res[1];
|
|
||||||
res[2] = smd->domain->res[2];
|
|
||||||
*/
|
|
||||||
|
|
||||||
wmLoadMatrix(rv3d->viewmat);
|
wmLoadMatrix(rv3d->viewmat);
|
||||||
|
|
||||||
glDepthMask(GL_FALSE);
|
glDepthMask(GL_FALSE);
|
||||||
glEnable(GL_TEXTURE_3D);
|
|
||||||
glDisable(GL_DEPTH_TEST);
|
glDisable(GL_DEPTH_TEST);
|
||||||
glEnable(GL_BLEND);
|
glEnable(GL_BLEND);
|
||||||
glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
|
glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
|
||||||
@@ -296,9 +293,12 @@ void draw_volume(Scene *scene, ARegion *ar, View3D *v3d, Base *base, GPUTexture
|
|||||||
|
|
||||||
wmMultMatrix(ob->obmat);
|
wmMultMatrix(ob->obmat);
|
||||||
|
|
||||||
glDisable(GL_TEXTURE_3D);
|
if(gl_blend)
|
||||||
glDisable(GL_BLEND);
|
glDisable(GL_BLEND);
|
||||||
glEnable(GL_DEPTH_TEST);
|
if(gl_depth)
|
||||||
glDepthMask(GL_TRUE);
|
{
|
||||||
|
glEnable(GL_DEPTH_TEST);
|
||||||
|
glDepthMask(GL_TRUE);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user