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>2020-02-11 17:18:55 +0300
committerClément Foucault <foucault.clem@gmail.com>2020-02-11 17:19:04 +0300
commit804e90b42d728ecb1073af8d0bae15a91b13a469 (patch)
tree309de25d99c92286b10c9d27e547fd43a69299c1 /source/blender/makesrna/intern/rna_render.c
parent58cdab8b9759dd59b55895f2f76b9624addbb324 (diff)
DRW: Color Management improvement
Reviewed By: brecht sergey jbakker Differential Revision: http://developer.blender.org/D6729
Diffstat (limited to 'source/blender/makesrna/intern/rna_render.c')
-rw-r--r--source/blender/makesrna/intern/rna_render.c15
1 files changed, 11 insertions, 4 deletions
diff --git a/source/blender/makesrna/intern/rna_render.c b/source/blender/makesrna/intern/rna_render.c
index 90c60c09181..c0daedba95c 100644
--- a/source/blender/makesrna/intern/rna_render.c
+++ b/source/blender/makesrna/intern/rna_render.c
@@ -101,6 +101,7 @@ const EnumPropertyItem rna_enum_bake_pass_type_items[] = {
# include "IMB_colormanagement.h"
# include "GPU_extensions.h"
+# include "GPU_shader.h"
# include "DEG_depsgraph_query.h"
@@ -126,15 +127,21 @@ static int engine_get_preview_pixel_size(RenderEngine *UNUSED(engine), Scene *sc
return BKE_render_preview_pixel_size(&scene->r);
}
-static void engine_bind_display_space_shader(RenderEngine *UNUSED(engine), Scene *scene)
+static void engine_bind_display_space_shader(RenderEngine *UNUSED(engine), Scene *UNUSED(scene))
{
- IMB_colormanagement_setup_glsl_draw(
- &scene->view_settings, &scene->display_settings, scene->r.dither_intensity, false);
+ GPUShader *shader = GPU_shader_get_builtin_shader(GPU_SHADER_2D_IMAGE_COLOR);
+ GPU_shader_bind(shader);
+
+ int img_loc = GPU_shader_get_uniform_ensure(shader, "image");
+ int color_loc = GPU_shader_get_uniform_ensure(shader, "color");
+
+ GPU_shader_uniform_int(shader, img_loc, 0);
+ GPU_shader_uniform_vector(shader, color_loc, 3, 1, (float[3]){1.0f, 1.0f, 1.0f});
}
static void engine_unbind_display_space_shader(RenderEngine *UNUSED(engine))
{
- IMB_colormanagement_finish_glsl_draw();
+ GPU_shader_unbind();
}
static void engine_update(RenderEngine *engine, Main *bmain, Depsgraph *depsgraph)