Copied Main Menu to gameplay scene Added Pause functionality (ESC key) Save & Restore discovered zones Applied vertical offset to asteroids (no more intersections!) Nebula shader optimized to improve early exit Nebula shader outputs light scattering to second render target Modified depth of field shader to use nebula light scattering
62 lines
1.2 KiB
Text
62 lines
1.2 KiB
Text
Shader "Hidden/MrtTest"
|
|
{
|
|
Properties
|
|
{
|
|
_MainTex("", 2D) = "white"{}
|
|
_SecondTex("", 2D) = "white"{}
|
|
_ThirdTex("", 2D) = "white"{}
|
|
}
|
|
|
|
CGINCLUDE
|
|
|
|
#include "UnityCG.cginc"
|
|
|
|
sampler2D _MainTex;
|
|
sampler2D _SecondTex;
|
|
sampler2D _ThirdTex;
|
|
|
|
// MRT shader
|
|
struct FragmentOutput
|
|
{
|
|
half4 dest0 : SV_Target0;
|
|
half4 dest1 : SV_Target1;
|
|
};
|
|
|
|
FragmentOutput frag_mrt(v2f_img i) : SV_Target
|
|
{
|
|
FragmentOutput o;
|
|
o.dest0 = frac(i.uv.x * 10);
|
|
o.dest1 = frac(i.uv.y * 10);
|
|
return o;
|
|
}
|
|
|
|
// Simple combiner
|
|
half4 frag_combine(v2f_img i) : SV_Target
|
|
{
|
|
half4 t1 = tex2D(_MainTex, i.uv);
|
|
half4 t2 = tex2D(_SecondTex, i.uv);
|
|
half4 t3 = tex2D(_ThirdTex, i.uv);
|
|
return half4(t1.r, t2.g, t3.b, 1);
|
|
}
|
|
|
|
ENDCG
|
|
|
|
SubShader
|
|
{
|
|
Cull Off ZWrite Off ZTest Always
|
|
Pass
|
|
{
|
|
CGPROGRAM
|
|
#pragma vertex vert_img
|
|
#pragma fragment frag_mrt
|
|
ENDCG
|
|
}
|
|
Pass
|
|
{
|
|
CGPROGRAM
|
|
#pragma vertex vert_img
|
|
#pragma fragment frag_combine
|
|
ENDCG
|
|
}
|
|
}
|
|
}
|