Files
Fishing2/Packages/com.waveharmonic.crest/Runtime/Shaders/Data/Input/WaterDepthFromGeometry.shader
2026-01-08 22:30:55 +08:00

58 lines
1.4 KiB
Plaintext

// Crest Water System
// Copyright © 2024 Wave Harmonic. All rights reserved.
// Renders water depth - signed distance from sea level to sea floor
Shader "Crest/Inputs/Depth/Water Depth From Geometry"
{
Properties
{
[HideInInspector]
_Crest_Version("Version", Integer) = 0
}
SubShader
{
ZTest Always
ZWrite Off
Pass
{
BlendOp Max
ColorMask R
CGPROGRAM
#pragma vertex Vert
#pragma fragment Frag
#include "UnityCG.cginc"
#include "Packages/com.waveharmonic.crest/Runtime/Shaders/Library/Constants.hlsl"
struct Attributes
{
float3 positionOS : POSITION;
};
struct Varyings
{
float4 positionCS : SV_POSITION;
float terrainHeight : TEXCOORD0;
};
Varyings Vert(Attributes input)
{
Varyings o;
o.positionCS = UnityObjectToClipPos(input.positionOS);
o.terrainHeight = mul(unity_ObjectToWorld, float4(input.positionOS, 1.0)).y;
return o;
}
float4 Frag(Varyings input) : SV_Target
{
return float4(input.terrainHeight, 0.0, 0.0, 0.0);
}
ENDCG
}
}
CustomEditor "WaveHarmonic.Crest.Editor.CustomShaderGUI"
}