[Bf-blender-cvs] [bb0d1781cb0] tmp-workbench-rewrite2: add roughness/metallic support for texture materials
Miguel Pozo
noreply at git.blender.org
Fri Oct 14 12:24:54 CEST 2022
Commit: bb0d1781cb04e8a995f8184ae86309d0e28a07fb
Author: Miguel Pozo
Date: Fri Oct 14 12:17:52 2022 +0200
Branches: tmp-workbench-rewrite2
https://developer.blender.org/rBbb0d1781cb04e8a995f8184ae86309d0e28a07fb
add roughness/metallic support for texture materials
===================================================================
M source/blender/draw/engines/workbench/shaders/infos/workbench_prepass_info.hh
M source/blender/draw/engines/workbench/shaders/workbench_prepass_frag.glsl
===================================================================
diff --git a/source/blender/draw/engines/workbench/shaders/infos/workbench_prepass_info.hh b/source/blender/draw/engines/workbench/shaders/infos/workbench_prepass_info.hh
index 22f24c99e7b..89dcfda3eda 100644
--- a/source/blender/draw/engines/workbench/shaders/infos/workbench_prepass_info.hh
+++ b/source/blender/draw/engines/workbench/shaders/infos/workbench_prepass_info.hh
@@ -127,6 +127,8 @@ GPU_SHADER_CREATE_INFO(workbench_color_material)
GPU_SHADER_CREATE_INFO(workbench_color_texture)
.define("WORKBENCH_COLOR_TEXTURE")
.define("WORKBENCH_TEXTURE_IMAGE_ARRAY")
+ .define("WORKBENCH_COLOR_MATERIAL")
+ .storage_buf(WB_MATERIAL_SLOT, Qualifier::READ, "vec4", "materials_data[]")
.sampler(1, ImageType::FLOAT_2D, "imageTexture", Frequency::BATCH)
.sampler(2, ImageType::FLOAT_2D_ARRAY, "imageTileArray", Frequency::BATCH)
.sampler(3, ImageType::FLOAT_1D_ARRAY, "imageTileData", Frequency::BATCH)
diff --git a/source/blender/draw/engines/workbench/shaders/workbench_prepass_frag.glsl b/source/blender/draw/engines/workbench/shaders/workbench_prepass_frag.glsl
index 9f6e2a09790..7758d6d421c 100644
--- a/source/blender/draw/engines/workbench/shaders/workbench_prepass_frag.glsl
+++ b/source/blender/draw/engines/workbench/shaders/workbench_prepass_frag.glsl
@@ -10,10 +10,10 @@ void main()
out_object_id = uint(object_id);
out_normal = workbench_normal_encode(gl_FrontFacing, normal_interp);
+ out_material = vec4(color_interp, workbench_float_pair_encode(_roughness, metallic));
+
# ifdef WORKBENCH_COLOR_TEXTURE
out_material.rgb = workbench_image_color(uv_interp);
-# else
- out_material = vec4(color_interp, workbench_float_pair_encode(_roughness, metallic));
# endif
# ifdef WORKBENCH_LIGHTING_MATCAP
@@ -42,4 +42,4 @@ void main()
# endif
}
-#endif
\ No newline at end of file
+#endif
More information about the Bf-blender-cvs
mailing list