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:
Diffstat (limited to 'source/blender/nodes/shader/nodes/node_shader_tex_environment.c')
-rw-r--r--source/blender/nodes/shader/nodes/node_shader_tex_environment.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/source/blender/nodes/shader/nodes/node_shader_tex_environment.c b/source/blender/nodes/shader/nodes/node_shader_tex_environment.c
index 572f06e007b..ace0f0c8774 100644
--- a/source/blender/nodes/shader/nodes/node_shader_tex_environment.c
+++ b/source/blender/nodes/shader/nodes/node_shader_tex_environment.c
@@ -58,6 +58,8 @@ static int node_shader_gpu_tex_environment(GPUMaterial *mat, bNode *node, GPUNod
{
Image *ima= (Image*)node->id;
ImageUser *iuser= NULL;
+ NodeTexImage *tex = node->storage;
+ int ncd = tex->color_space == SHD_COLORSPACE_NONE;
if (!ima)
return GPU_stack_link(mat, "node_tex_environment_empty", in, out);
@@ -67,7 +69,10 @@ static int node_shader_gpu_tex_environment(GPUMaterial *mat, bNode *node, GPUNod
node_shader_gpu_tex_mapping(mat, node, in, out);
- return GPU_stack_link(mat, "node_tex_environment", in, out, GPU_image(ima, iuser));
+ if (out[0].link && GPU_material_do_color_management(mat))
+ GPU_link(mat, "srgb_to_linearrgb", out[0].link, &out[0].link);
+
+ return GPU_stack_link(mat, "node_tex_environment", in, out, GPU_image(ima, iuser, ncd));
}
/* node type definition */