diff options
| author | yum <yum.food.vr@gmail.com> | 2024-05-26 14:31:25 -0700 |
|---|---|---|
| committer | yum <yum.food.vr@gmail.com> | 2024-05-26 14:31:25 -0700 |
| commit | 0f59fc5fa8a0d57e3c5780f49b6279738c0b55a8 (patch) | |
| tree | 1b2b822c15e7388417bb004907b2578dab71c18b /tooner.shader | |
| parent | 8dd60d9c674ea5859f13471525419aaa41534dce (diff) | |
Overhaul PBR overlay
Add second PBR overlay and fix masking behavior.
Also elide keywords based on shader variant. This should improve
performance.
Diffstat (limited to 'tooner.shader')
| -rw-r--r-- | tooner.shader | 149 |
1 files changed, 124 insertions, 25 deletions
diff --git a/tooner.shader b/tooner.shader index 29a2afb..a51cd54 100644 --- a/tooner.shader +++ b/tooner.shader @@ -11,16 +11,53 @@ Shader "yum_food/tooner" [NoScaleOffset] _MetallicTex("Metallic", 2D) = "white" {} [NoScaleOffset] _RoughnessTex("Roughness", 2D) = "black" {} - _PBR_Overlay_Enable("Enable PBR overlay", Float) = 0.0 - _PBR_Overlay_BaseColor("Base color", Color) = (0.8, 0.8, 0.8, 1) - _PBR_Overlay_Metallic("Metallic", Range(0, 1)) = 0 - _PBR_Overlay_Roughness("Roughness", Range(0, 1)) = 1 - [NoScaleOffset] _PBR_Overlay_BaseColorTex("Base color", 2D) = "white" {} - [NoScaleOffset] _PBR_Overlay_NormalTex("Normal", 2D) = "bump" {} - [NoScaleOffset] _PBR_Overlay_MetallicTex("Metallic", 2D) = "white" {} - [NoScaleOffset] _PBR_Overlay_RoughnessTex("Roughness", 2D) = "black" {} - [NoScaleOffset] _PBR_Overlay_Tex_NormalStr("Normal texture strength", Range(0, 10)) = 1 - [NoScaleOffset] _PBR_Overlay_Mask("Mask", 2D) = "white" {} + _PBR_Overlay0_Enable("Enable PBR overlay", Float) = 0.0 + _PBR_Overlay0_BaseColor("Base color", Color) = (0.8, 0.8, 0.8, 1) + _PBR_Overlay0_Metallic("Metallic", Range(0, 1)) = 0 + _PBR_Overlay0_Roughness("Roughness", Range(0, 1)) = 1 + _PBR_Overlay0_BaseColorTex("Base color", 2D) = "white" {} + _PBR_Overlay0_NormalTex("Normal", 2D) = "bump" {} + _PBR_Overlay0_MetallicTex("Metallic", 2D) = "white" {} + _PBR_Overlay0_RoughnessTex("Roughness", 2D) = "black" {} + _PBR_Overlay0_Tex_NormalStr("Normal texture strength", Range(0, 10)) = 1 + _PBR_Overlay0_Mask("Mask", 2D) = "white" {} + _PBR_Overlay0_Mask_Invert("Mask invert", Float) = 0.0 + + _PBR_Overlay1_Enable("Enable PBR overlay", Float) = 0.0 + _PBR_Overlay1_BaseColor("Base color", Color) = (0.8, 0.8, 0.8, 1) + _PBR_Overlay1_Metallic("Metallic", Range(0, 1)) = 0 + _PBR_Overlay1_Roughness("Roughness", Range(0, 1)) = 1 + _PBR_Overlay1_BaseColorTex("Base color", 2D) = "white" {} + _PBR_Overlay1_NormalTex("Normal", 2D) = "bump" {} + _PBR_Overlay1_MetallicTex("Metallic", 2D) = "white" {} + _PBR_Overlay1_RoughnessTex("Roughness", 2D) = "black" {} + _PBR_Overlay1_Tex_NormalStr("Normal texture strength", Range(0, 10)) = 1 + _PBR_Overlay1_Mask("Mask", 2D) = "white" {} + _PBR_Overlay1_Mask_Invert("Mask invert", Float) = 0.0 + + _PBR_Overlay2_Enable("Enable PBR overlay", Float) = 0.0 + _PBR_Overlay2_BaseColor("Base color", Color) = (0.8, 0.8, 0.8, 1) + _PBR_Overlay2_Metallic("Metallic", Range(0, 1)) = 0 + _PBR_Overlay2_Roughness("Roughness", Range(0, 1)) = 1 + _PBR_Overlay2_BaseColorTex("Base color", 2D) = "white" {} + _PBR_Overlay2_NormalTex("Normal", 2D) = "bump" {} + _PBR_Overlay2_MetallicTex("Metallic", 2D) = "white" {} + _PBR_Overlay2_RoughnessTex("Roughness", 2D) = "black" {} + _PBR_Overlay2_Tex_NormalStr("Normal texture strength", Range(0, 10)) = 1 + _PBR_Overlay2_Mask("Mask", 2D) = "white" {} + _PBR_Overlay2_Mask_Invert("Mask invert", Float) = 0.0 + + _PBR_Overlay3_Enable("Enable PBR overlay", Float) = 0.0 + _PBR_Overlay3_BaseColor("Base color", Color) = (0.8, 0.8, 0.8, 1) + _PBR_Overlay3_Metallic("Metallic", Range(0, 1)) = 0 + _PBR_Overlay3_Roughness("Roughness", Range(0, 1)) = 1 + _PBR_Overlay3_BaseColorTex("Base color", 2D) = "white" {} + _PBR_Overlay3_NormalTex("Normal", 2D) = "bump" {} + _PBR_Overlay3_MetallicTex("Metallic", 2D) = "white" {} + _PBR_Overlay3_RoughnessTex("Roughness", 2D) = "black" {} + _PBR_Overlay3_Tex_NormalStr("Normal texture strength", Range(0, 10)) = 1 + _PBR_Overlay3_Mask("Mask", 2D) = "white" {} + _PBR_Overlay3_Mask_Invert("Mask invert", Float) = 0.0 [NoScaleOffset] _EmissionTex("Emission map", 2D) = "black" {} _EmissionStrength("Emission strength", Range(0, 2)) = 0 @@ -32,6 +69,8 @@ Shader "yum_food/tooner" _Max_Brightness("Max brightness", Range(0, 1.5)) = 1 _Mesh_Normal_Strength("Mesh normal strength", Range(0, 10)) = 1 _NormalStr("Normal strength", Range(0, 10)) = 1 + _Ambient_Occlusion("Ambient occlusion", 2D) = "white" {} + _Ambient_Occlusion_Strength("Ambient occlusion", Range(0,1)) = 1 _Shading_Mode("Shading mode", Range(0, 1)) = 0 _Mesh_Normals_Mode("Normals mode", Float) = 0.0 @@ -184,15 +223,35 @@ Shader "yum_food/tooner" #pragma shader_feature_local _ _RIM_LIGHTING1_MASK #pragma shader_feature_local _ _OKLAB #pragma shader_feature_local _ _CLONES - #pragma shader_feature_local _ _PBR_OVERLAY - #pragma shader_feature_local _ _PBR_OVERLAY_BASECOLOR_MAP - #pragma shader_feature_local _ _PBR_OVERLAY_NORMAL_MAP - #pragma shader_feature_local _ _PBR_OVERLAY_ROUGHNESS_MAP - #pragma shader_feature_local _ _PBR_OVERLAY_METALLIC_MAP + #pragma shader_feature_local _ _PBR_OVERLAY0 + #pragma shader_feature_local _ _PBR_OVERLAY0_BASECOLOR_MAP + #pragma shader_feature_local _ _PBR_OVERLAY0_NORMAL_MAP + #pragma shader_feature_local _ _PBR_OVERLAY0_ROUGHNESS_MAP + #pragma shader_feature_local _ _PBR_OVERLAY0_METALLIC_MAP + #pragma shader_feature_local _ _PBR_OVERLAY0_MASK + #pragma shader_feature_local _ _PBR_OVERLAY1 + #pragma shader_feature_local _ _PBR_OVERLAY1_BASECOLOR_MAP + #pragma shader_feature_local _ _PBR_OVERLAY1_NORMAL_MAP + #pragma shader_feature_local _ _PBR_OVERLAY1_ROUGHNESS_MAP + #pragma shader_feature_local _ _PBR_OVERLAY1_METALLIC_MAP + #pragma shader_feature_local _ _PBR_OVERLAY1_MASK + #pragma shader_feature_local _ _PBR_OVERLAY2 + #pragma shader_feature_local _ _PBR_OVERLAY2_BASECOLOR_MAP + #pragma shader_feature_local _ _PBR_OVERLAY2_NORMAL_MAP + #pragma shader_feature_local _ _PBR_OVERLAY2_ROUGHNESS_MAP + #pragma shader_feature_local _ _PBR_OVERLAY2_METALLIC_MAP + #pragma shader_feature_local _ _PBR_OVERLAY2_MASK + #pragma shader_feature_local _ _PBR_OVERLAY3 + #pragma shader_feature_local _ _PBR_OVERLAY3_BASECOLOR_MAP + #pragma shader_feature_local _ _PBR_OVERLAY3_NORMAL_MAP + #pragma shader_feature_local _ _PBR_OVERLAY3_ROUGHNESS_MAP + #pragma shader_feature_local _ _PBR_OVERLAY3_METALLIC_MAP + #pragma shader_feature_local _ _PBR_OVERLAY3_MASK #pragma shader_feature_local _ _LTCGI #pragma shader_feature_local _ _TESSELLATION #pragma shader_feature_local _ _MATCAP0_DISTORTION0 #pragma shader_feature_local _ _MATCAP1_DISTORTION0 + #pragma shader_feature_local _ _AMBIENT_OCCLUSION #pragma vertex vert //#pragma vertex hull_vertex @@ -248,15 +307,35 @@ Shader "yum_food/tooner" #pragma shader_feature_local _ _RIM_LIGHTING1_MASK #pragma shader_feature_local _ _OKLAB #pragma shader_feature_local _ _CLONES - #pragma shader_feature_local _ _PBR_OVERLAY - #pragma shader_feature_local _ _PBR_OVERLAY_BASECOLOR_MAP - #pragma shader_feature_local _ _PBR_OVERLAY_NORMAL_MAP - #pragma shader_feature_local _ _PBR_OVERLAY_ROUGHNESS_MAP - #pragma shader_feature_local _ _PBR_OVERLAY_METALLIC_MAP + #pragma shader_feature_local _ _PBR_OVERLAY0 + #pragma shader_feature_local _ _PBR_OVERLAY0_BASECOLOR_MAP + #pragma shader_feature_local _ _PBR_OVERLAY0_NORMAL_MAP + #pragma shader_feature_local _ _PBR_OVERLAY0_ROUGHNESS_MAP + #pragma shader_feature_local _ _PBR_OVERLAY0_METALLIC_MAP + #pragma shader_feature_local _ _PBR_OVERLAY0_MASK + #pragma shader_feature_local _ _PBR_OVERLAY1 + #pragma shader_feature_local _ _PBR_OVERLAY1_BASECOLOR_MAP + #pragma shader_feature_local _ _PBR_OVERLAY1_NORMAL_MAP + #pragma shader_feature_local _ _PBR_OVERLAY1_ROUGHNESS_MAP + #pragma shader_feature_local _ _PBR_OVERLAY1_METALLIC_MAP + #pragma shader_feature_local _ _PBR_OVERLAY1_MASK + #pragma shader_feature_local _ _PBR_OVERLAY2 + #pragma shader_feature_local _ _PBR_OVERLAY2_BASECOLOR_MAP + #pragma shader_feature_local _ _PBR_OVERLAY2_NORMAL_MAP + #pragma shader_feature_local _ _PBR_OVERLAY2_ROUGHNESS_MAP + #pragma shader_feature_local _ _PBR_OVERLAY2_METALLIC_MAP + #pragma shader_feature_local _ _PBR_OVERLAY2_MASK + #pragma shader_feature_local _ _PBR_OVERLAY3 + #pragma shader_feature_local _ _PBR_OVERLAY3_BASECOLOR_MAP + #pragma shader_feature_local _ _PBR_OVERLAY3_NORMAL_MAP + #pragma shader_feature_local _ _PBR_OVERLAY3_ROUGHNESS_MAP + #pragma shader_feature_local _ _PBR_OVERLAY3_METALLIC_MAP + #pragma shader_feature_local _ _PBR_OVERLAY3_MASK #pragma shader_feature_local _ _LTCGI #pragma shader_feature_local _ _TESSELLATION #pragma shader_feature_local _ _MATCAP0_DISTORTION0 #pragma shader_feature_local _ _MATCAP1_DISTORTION0 + #pragma shader_feature_local _ _AMBIENT_OCCLUSION #pragma vertex vert //#pragma vertex hull_vertex @@ -294,13 +373,33 @@ Shader "yum_food/tooner" #pragma shader_feature_local _ _RIM_LIGHTING1_MASK #pragma shader_feature_local _ _OKLAB #pragma shader_feature_local _ _CLONES - #pragma shader_feature_local _ _PBR_OVERLAY - #pragma shader_feature_local _ _PBR_OVERLAY_BASECOLOR_MAP - #pragma shader_feature_local _ _PBR_OVERLAY_NORMAL_MAP - #pragma shader_feature_local _ _PBR_OVERLAY_ROUGHNESS_MAP - #pragma shader_feature_local _ _PBR_OVERLAY_METALLIC_MAP + #pragma shader_feature_local _ _PBR_OVERLAY0 + #pragma shader_feature_local _ _PBR_OVERLAY0_BASECOLOR_MAP + #pragma shader_feature_local _ _PBR_OVERLAY0_NORMAL_MAP + #pragma shader_feature_local _ _PBR_OVERLAY0_ROUGHNESS_MAP + #pragma shader_feature_local _ _PBR_OVERLAY0_METALLIC_MAP + #pragma shader_feature_local _ _PBR_OVERLAY0_MASK + #pragma shader_feature_local _ _PBR_OVERLAY1 + #pragma shader_feature_local _ _PBR_OVERLAY1_BASECOLOR_MAP + #pragma shader_feature_local _ _PBR_OVERLAY1_NORMAL_MAP + #pragma shader_feature_local _ _PBR_OVERLAY1_ROUGHNESS_MAP + #pragma shader_feature_local _ _PBR_OVERLAY1_METALLIC_MAP + #pragma shader_feature_local _ _PBR_OVERLAY1_MASK + #pragma shader_feature_local _ _PBR_OVERLAY2 + #pragma shader_feature_local _ _PBR_OVERLAY2_BASECOLOR_MAP + #pragma shader_feature_local _ _PBR_OVERLAY2_NORMAL_MAP + #pragma shader_feature_local _ _PBR_OVERLAY2_ROUGHNESS_MAP + #pragma shader_feature_local _ _PBR_OVERLAY2_METALLIC_MAP + #pragma shader_feature_local _ _PBR_OVERLAY2_MASK + #pragma shader_feature_local _ _PBR_OVERLAY3 + #pragma shader_feature_local _ _PBR_OVERLAY3_BASECOLOR_MAP + #pragma shader_feature_local _ _PBR_OVERLAY3_NORMAL_MAP + #pragma shader_feature_local _ _PBR_OVERLAY3_ROUGHNESS_MAP + #pragma shader_feature_local _ _PBR_OVERLAY3_METALLIC_MAP + #pragma shader_feature_local _ _PBR_OVERLAY3_MASK #pragma shader_feature_local _ _LTCGI #pragma shader_feature_local _ _TESSELLATION + #pragma shader_feature_local _ _AMBIENT_OCCLUSION #pragma vertex vert //#pragma vertex hull_vertex |
