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:
authorClément Foucault <foucault.clem@gmail.com>2018-08-27 19:02:48 +0300
committerClément Foucault <foucault.clem@gmail.com>2018-08-27 19:02:48 +0300
commit4b89bf88c7f0c4d8c8543bd73e632ed6ce898772 (patch)
tree3255a2646e462b68f5622b1570c08a0ccadeb9e2 /source/blender/draw/intern/draw_manager_exec.c
parent5238456adce2bb57a2ef0ae0546cb8786ba5cb04 (diff)
Revert "DRW: Remove unecessary GL calls"
This reverts commit f8c857ad72e29eb509bd04067f94cd3df8a54aa4.
Diffstat (limited to 'source/blender/draw/intern/draw_manager_exec.c')
-rw-r--r--source/blender/draw/intern/draw_manager_exec.c16
1 files changed, 6 insertions, 10 deletions
diff --git a/source/blender/draw/intern/draw_manager_exec.c b/source/blender/draw/intern/draw_manager_exec.c
index e99d95282a0..3180cf5c459 100644
--- a/source/blender/draw/intern/draw_manager_exec.c
+++ b/source/blender/draw/intern/draw_manager_exec.c
@@ -263,7 +263,7 @@ void drw_state_set(DRWState state)
}
else {
glDisable(GL_BLEND);
- // glBlendFunc(GL_ONE, GL_ONE); /* Don't multiply incoming color by alpha. */
+ glBlendFunc(GL_ONE, GL_ONE); /* Don't multiply incoming color by alpha. */
}
}
}
@@ -1023,11 +1023,8 @@ static void draw_shgroup(DRWShadingGroup *shgroup, DRWState pass_state)
release_ubo_slots(shader_changed);
release_texture_slots(shader_changed);
- /* Only set the state if there is something to draw. */
- if (!DRW_shgroup_is_empty(shgroup)) {
- drw_state_set((pass_state & shgroup->state_extra_disable) | shgroup->state_extra);
- drw_stencil_set(shgroup->stencil_mask);
- }
+ drw_state_set((pass_state & shgroup->state_extra_disable) | shgroup->state_extra);
+ drw_stencil_set(shgroup->stencil_mask);
/* Binding Uniform */
for (DRWUniform *uni = shgroup->uniforms; uni; uni = uni->next) {
@@ -1237,6 +1234,9 @@ static void draw_shgroup(DRWShadingGroup *shgroup, DRWState pass_state)
if (use_tfeedback) {
GPU_shader_transform_feedback_disable(shgroup->shader);
}
+
+ /* TODO: remove, (currently causes alpha issue with sculpt, need to investigate) */
+ DRW_state_reset();
}
static void drw_update_view(void)
@@ -1275,10 +1275,6 @@ static void drw_draw_pass_ex(DRWPass *pass, DRWShadingGroup *start_group, DRWSha
BLI_assert(DST.buffer_finish_called && "DRW_render_instance_buffer_finish had not been called before drawing");
- if (DRW_pass_is_empty(pass)) {
- return;
- }
-
drw_update_view();
drw_state_set(pass->state);