From 5b19af7f51ad4504fc426b8387442f6b868b5f61 Mon Sep 17 00:00:00 2001 From: chai Date: Thu, 30 Sep 2021 18:15:25 +0800 Subject: *misc --- Assets/Bundle/Shaders/Common/common_gbuffer.shader | 68 ++++++++++++++++++++++ 1 file changed, 68 insertions(+) create mode 100644 Assets/Bundle/Shaders/Common/common_gbuffer.shader (limited to 'Assets/Bundle/Shaders/Common/common_gbuffer.shader') diff --git a/Assets/Bundle/Shaders/Common/common_gbuffer.shader b/Assets/Bundle/Shaders/Common/common_gbuffer.shader new file mode 100644 index 00000000..485a52c1 --- /dev/null +++ b/Assets/Bundle/Shaders/Common/common_gbuffer.shader @@ -0,0 +1,68 @@ +Shader "Erika/Common/GBuffer" +{ + Properties + { + _MainTex ("Texture", 2D) = "white" {} + } + SubShader + { + Tags { "RenderType"="Opaque" } + LOD 100 + + Pass + { + CGPROGRAM + #pragma vertex vert + #pragma fragment frag + + #include "UnityCG.cginc" + + struct appdata + { + float3 vertex : POSITION; + float3 normal : NORMAL; + float3 tangent : TANGENT; + float2 uv : TEXCOORD0; + }; + + struct v2f + { + float2 uv : TEXCOORD0; + float3 normal : TEXCOORD1; + float3 worldPos : TEXCOORD2; + float4 vertex : SV_POSITION; + }; + + struct Output + { + float4 diffuse : SV_Target0; + float4 normal : SV_Target1; + float4 position : SV_Target2; + float4 texCoord : SV_Target3; + }; + + sampler2D _MainTex; + float4 _MainTex_ST; + + v2f vert (appdata v) + { + v2f o; + o.vertex = UnityObjectToClipPos(v.vertex); + o.uv = TRANSFORM_TEX(v.uv, _MainTex); + o.worldPos = mul(unity_ObjectToWorld, float4(v.vertex, 1)).xyz; + return o; + } + + Output frag (v2f i) + { + Output o; + fixed4 col = tex2D(_MainTex, i.uv); + o.diffuse = fixed4(1,0,0,1); + o.normal = fixed4(1,1,0,1); + o.position = fixed4(i.worldPos, 1); + return o; + } + ENDCG + } + } +} -- cgit v1.1-26-g67d0