Files
2026-01-08 22:30:55 +08:00

56 lines
1.3 KiB
Plaintext

// Crest Water System
// Copyright © 2024 Wave Harmonic. All rights reserved.
// Renders a specific slice of a 2D Texture Array
// https://docs.unity3d.com/Manual/SL-TextureArrays.html
Shader "Hidden/Crest/Debug/TextureArray"
{
SubShader
{
Tags { "RenderType"="Opaque" }
Cull Off
ZWrite Off
Pass
{
CGPROGRAM
#pragma vertex Vert
#pragma fragment Frag
#pragma require 2darray
#include "UnityCG.cginc"
struct Attributes
{
float4 positionOS : POSITION;
float2 uv : TEXCOORD0;
};
struct Varyings
{
float4 positionCS : SV_POSITION;
float3 uv : TEXCOORD0;
};
UNITY_DECLARE_TEX2DARRAY(_MainTex);
uint _Depth;
float _Scale;
float _Bias;
Varyings Vert(Attributes input)
{
Varyings o;
o.positionCS = UnityObjectToClipPos(input.positionOS);
o.uv = float3(input.uv.xy, _Depth);
return o;
}
half4 Frag(Varyings input) : SV_TARGET
{
return _Scale * UNITY_SAMPLE_TEX2DARRAY(_MainTex, input.uv) + _Bias;
}
ENDCG
}
}
}