修改shader-修复不知道为啥接收阴影没了的bug
parent
77edb46d95
commit
c827de8e31
|
|
@ -36,13 +36,13 @@ Shader "NLD_URP/NLD_Charactor"
|
|||
#pragma vertex vert
|
||||
#pragma fragment frag
|
||||
|
||||
#pragma multi_compile _MAIN_LIGHT_SHADOWS
|
||||
#pragma multi_compile _MAIN_LIGHT_SHADOWS_CASCADE
|
||||
#pragma multi_compile _SHADOWS_SOFT
|
||||
// 开启接收阴影
|
||||
#pragma multi_compile _ _MAIN_LIGHT_SHADOWS //主光源阴影
|
||||
#pragma multi_compile _ _SHADOWS_SOFT //软阴影
|
||||
|
||||
#include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Core.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Lighting.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.universal/Shaders/SimpleLitInput.hlsl"
|
||||
// #include "Packages/com.unity.render-pipelines.universal/Shaders/SimpleLitInput.hlsl"
|
||||
|
||||
struct appdata
|
||||
{
|
||||
|
|
@ -87,6 +87,7 @@ Shader "NLD_URP/NLD_Charactor"
|
|||
o.uv = TRANSFORM_TEX(v.uv, _MainTex);
|
||||
o.normalWS = TransformObjectToWorldNormal(v.normal);
|
||||
o.positionWS = TransformObjectToWorld(v.positionOS);
|
||||
|
||||
return o;
|
||||
}
|
||||
|
||||
|
|
@ -103,10 +104,11 @@ Shader "NLD_URP/NLD_Charactor"
|
|||
|
||||
//当前模型接收阴影
|
||||
float4 SHADOW_COORDS = TransformWorldToShadowCoord(i.positionWS);
|
||||
//放入光照数据
|
||||
Light lightData = GetMainLight(SHADOW_COORDS);
|
||||
//多光照阴影数据
|
||||
half shadow = lightData.shadowAttenuation;
|
||||
|
||||
// 光照阴影数据
|
||||
half shadow = MainLightRealtimeShadow(SHADOW_COORDS);
|
||||
|
||||
// return half4(shadow, shadow, shadow, 1.0);
|
||||
|
||||
if ( shadow < 0.5 || r < 0.5) {
|
||||
return color * _shadowScale;
|
||||
|
|
|
|||
|
|
@ -42,9 +42,9 @@ Shader "NLD_URP/NLD_Charactor_Dead"
|
|||
#pragma vertex vert
|
||||
#pragma fragment frag
|
||||
|
||||
#pragma multi_compile _MAIN_LIGHT_SHADOWS
|
||||
#pragma multi_compile _MAIN_LIGHT_SHADOWS_CASCADE
|
||||
#pragma multi_compile _SHADOWS_SOFT
|
||||
// 开启接收阴影
|
||||
#pragma multi_compile _ _MAIN_LIGHT_SHADOWS //主光源阴影
|
||||
#pragma multi_compile _ _SHADOWS_SOFT //软阴影
|
||||
|
||||
#include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Core.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Lighting.hlsl"
|
||||
|
|
|
|||
|
|
@ -27,10 +27,6 @@ Shader "NLD_URP/NLD_Charactor_Eye"
|
|||
#pragma vertex vert
|
||||
#pragma fragment frag
|
||||
|
||||
#pragma multi_compile _MAIN_LIGHT_SHADOWS
|
||||
#pragma multi_compile _MAIN_LIGHT_SHADOWS_CASCADE
|
||||
#pragma multi_compile _SHADOWS_SOFT
|
||||
|
||||
#include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Core.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Lighting.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.universal/Shaders/SimpleLitInput.hlsl"
|
||||
|
|
|
|||
|
|
@ -24,10 +24,6 @@ Shader "NLD_URP/NLD_Charactor_Face"
|
|||
#pragma vertex vert
|
||||
#pragma fragment frag
|
||||
|
||||
#pragma multi_compile _MAIN_LIGHT_SHADOWS
|
||||
#pragma multi_compile _MAIN_LIGHT_SHADOWS_CASCADE
|
||||
#pragma multi_compile _SHADOWS_SOFT
|
||||
|
||||
#include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Core.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Lighting.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.universal/Shaders/SimpleLitInput.hlsl"
|
||||
|
|
|
|||
|
|
@ -31,9 +31,9 @@ Shader "NLD_URP/NLD_Charactor_Head"
|
|||
#pragma vertex vert
|
||||
#pragma fragment frag
|
||||
|
||||
#pragma multi_compile _MAIN_LIGHT_SHADOWS
|
||||
#pragma multi_compile _MAIN_LIGHT_SHADOWS_CASCADE
|
||||
#pragma multi_compile _SHADOWS_SOFT
|
||||
// 开启接收阴影
|
||||
#pragma multi_compile _ _MAIN_LIGHT_SHADOWS //主光源阴影
|
||||
#pragma multi_compile _ _SHADOWS_SOFT //软阴影
|
||||
|
||||
#include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Core.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Lighting.hlsl"
|
||||
|
|
|
|||
|
|
@ -42,9 +42,9 @@ Shader "NLD_URP/NLD_Charactor_Lambert"
|
|||
#pragma vertex vert
|
||||
#pragma fragment frag
|
||||
|
||||
#pragma multi_compile _MAIN_LIGHT_SHADOWS
|
||||
#pragma multi_compile _MAIN_LIGHT_SHADOWS_CASCADE
|
||||
#pragma multi_compile _SHADOWS_SOFT
|
||||
// 开启接收阴影
|
||||
#pragma multi_compile _ _MAIN_LIGHT_SHADOWS //主光源阴影
|
||||
#pragma multi_compile _ _SHADOWS_SOFT //软阴影
|
||||
|
||||
#include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Core.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Lighting.hlsl"
|
||||
|
|
|
|||
|
|
@ -36,9 +36,9 @@ Shader "NLD_URP/NLD_Charactor_Old"
|
|||
#pragma vertex vert
|
||||
#pragma fragment frag
|
||||
|
||||
#pragma multi_compile _MAIN_LIGHT_SHADOWS
|
||||
#pragma multi_compile _MAIN_LIGHT_SHADOWS_CASCADE
|
||||
#pragma multi_compile _SHADOWS_SOFT
|
||||
// 开启接收阴影
|
||||
#pragma multi_compile _ _MAIN_LIGHT_SHADOWS //主光源阴影
|
||||
#pragma multi_compile _ _SHADOWS_SOFT //软阴影
|
||||
|
||||
#include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Core.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Lighting.hlsl"
|
||||
|
|
|
|||
|
|
@ -40,9 +40,9 @@ Shader "NLD_URP/NLD_Charactor_Transparent"
|
|||
#pragma vertex vert
|
||||
#pragma fragment frag
|
||||
|
||||
#pragma multi_compile _MAIN_LIGHT_SHADOWS
|
||||
#pragma multi_compile _MAIN_LIGHT_SHADOWS_CASCADE
|
||||
#pragma multi_compile _SHADOWS_SOFT
|
||||
// 开启接收阴影
|
||||
#pragma multi_compile _ _MAIN_LIGHT_SHADOWS //主光源阴影
|
||||
#pragma multi_compile _ _SHADOWS_SOFT //软阴影
|
||||
|
||||
#include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Core.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Lighting.hlsl"
|
||||
|
|
|
|||
|
|
@ -0,0 +1,71 @@
|
|||
Shader "NLD/NLD_Test"
|
||||
{
|
||||
Properties
|
||||
{
|
||||
_MainTex ("Texture", 2D) = "white" {}
|
||||
}
|
||||
SubShader
|
||||
{
|
||||
Tags {
|
||||
"RenderType" = "Opaque"
|
||||
"RenderPipeline" = "UniversalPipeline"
|
||||
}
|
||||
LOD 100
|
||||
|
||||
Pass
|
||||
{
|
||||
HLSLPROGRAM
|
||||
#pragma vertex vert
|
||||
#pragma fragment frag
|
||||
|
||||
// 阴影相关定义
|
||||
// #pragma multi_compile _ _ADDITIONAL_LIGHTS_VERTEX _ADDITIONAL_LIGHTS //开启额外光源
|
||||
#pragma multi_compile _ _MAIN_LIGHT_SHADOWS //主光源阴影
|
||||
// #pragma multi_compile _ _MAIN_LIGHT_SHADOWS_CASCADE //主光源层级阴影是否开启
|
||||
// #pragma multi_compile _ _ADDITIONAL_LIGHT_SHADOWS //额外光源阴影
|
||||
#pragma multi_compile _ _SHADOWS_SOFT //软阴影
|
||||
|
||||
#include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Core.hlsl"
|
||||
#include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Lighting.hlsl"
|
||||
|
||||
struct appdata
|
||||
{
|
||||
float4 vertex : POSITION;
|
||||
float2 uv : TEXCOORD0;
|
||||
};
|
||||
|
||||
struct v2f
|
||||
{
|
||||
float2 uv : TEXCOORD0;
|
||||
float4 posSV : SV_POSITION;
|
||||
float3 posWS : TEXCOORD1;
|
||||
};
|
||||
|
||||
sampler2D _MainTex;
|
||||
float4 _MainTex_ST;
|
||||
|
||||
v2f vert (appdata v)
|
||||
{
|
||||
v2f o;
|
||||
o.posSV = TransformObjectToHClip(v.vertex);
|
||||
o.posWS = TransformObjectToWorld(v.vertex);
|
||||
o.uv = TRANSFORM_TEX(v.uv, _MainTex);
|
||||
return o;
|
||||
}
|
||||
|
||||
half4 frag (v2f i) : SV_Target
|
||||
{
|
||||
// sample the texture
|
||||
half4 col = tex2D(_MainTex, i.uv);
|
||||
|
||||
// 计算阴影uv
|
||||
float4 shadowCoord = TransformWorldToShadowCoord(i.posWS);
|
||||
float shadow = MainLightRealtimeShadow(shadowCoord);
|
||||
return half4(shadow, shadow, shadow, 1.0);
|
||||
|
||||
return col;
|
||||
}
|
||||
ENDHLSL
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,9 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 125c1cf5f38e3a84d8306b4026928c10
|
||||
ShaderImporter:
|
||||
externalObjects: {}
|
||||
defaultTextures: []
|
||||
nonModifiableTextures: []
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
|
|
@ -8,7 +8,7 @@ Material:
|
|||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name: mat_test
|
||||
m_Shader: {fileID: 4800000, guid: 41e81419f201b6a478c8247e031799f2, type: 3}
|
||||
m_Shader: {fileID: 4800000, guid: 125c1cf5f38e3a84d8306b4026928c10, type: 3}
|
||||
m_Parent: {fileID: 0}
|
||||
m_ModifiedSerializedProperties: 0
|
||||
m_ValidKeywords: []
|
||||
|
|
|
|||
Loading…
Reference in New Issue