Differential D16826 Diff 59819 source/blender/draw/engines/workbench/shaders/workbench_prepass_frag.glsl
Changeset View
Changeset View
Standalone View
Standalone View
source/blender/draw/engines/workbench/shaders/workbench_prepass_frag.glsl
| #pragma BLENDER_REQUIRE(common_view_lib.glsl) | #pragma BLENDER_REQUIRE(common_view_lib.glsl) | ||||
| #pragma BLENDER_REQUIRE(workbench_common_lib.glsl) | #pragma BLENDER_REQUIRE(workbench_common_lib.glsl) | ||||
| #pragma BLENDER_REQUIRE(workbench_image_lib.glsl) | #pragma BLENDER_REQUIRE(workbench_image_lib.glsl) | ||||
| #ifdef WORKBENCH_NEXT | |||||
| 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); | |||||
| # endif | |||||
| # ifdef WORKBENCH_LIGHTING_MATCAP | |||||
| /* For matcaps, save front facing in alpha channel. */ | |||||
| out_material.a = float(gl_FrontFacing); | |||||
| # endif | |||||
| } | |||||
| #else | |||||
| void main() | void main() | ||||
| { | { | ||||
| normalData = workbench_normal_encode(gl_FrontFacing, normal_interp); | out_normal = workbench_normal_encode(gl_FrontFacing, normal_interp); | ||||
| materialData = vec4(color_interp, workbench_float_pair_encode(_roughness, metallic)); | out_material = vec4(color_interp, workbench_float_pair_encode(_roughness, metallic)); | ||||
| objectId = uint(object_id); | out_object_id = uint(object_id); | ||||
| if (useMatcap) { | if (useMatcap) { | ||||
| /* For matcaps, save front facing in alpha channel. */ | /* For matcaps, save front facing in alpha channel. */ | ||||
| materialData.a = float(gl_FrontFacing); | out_material.a = float(gl_FrontFacing); | ||||
| } | } | ||||
| #ifdef V3D_SHADING_TEXTURE_COLOR | # ifdef WORKBENCH_COLOR_TEXTURE | ||||
| materialData.rgb = workbench_image_color(uv_interp); | out_material.rgb = workbench_image_color(uv_interp); | ||||
| #endif | # endif | ||||
| } | } | ||||
| #endif | |||||