Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Shader "Custom/GunShaderDeferred" {
- Properties {
- _Color ("Color", Color) = (1,1,1,1)
- _MainTex ("Albedo (RGB)", 2D) = "white" {}
- _Glossiness ("Smoothness", Range(0,1)) = 0.5
- _Metallic ("Metallic", Range(0,1)) = 0.0
- }
- SubShader {
- Tags { "RenderType"="Transparent" "Queue"="Geometry+1" }
- LOD 200
- Pass {
- Cull Back
- ZTest Always
- Tags { "LightMode" = "Deferred" }
- CGPROGRAM
- #pragma vertex vert_surf
- #pragma fragment frag_surf
- #include "UnityCG.cginc"
- sampler2D _MainTex;
- struct Input {
- float2 uv_MainTex;
- };
- // vertex-to-fragment interpolation data
- struct v2f_surf {
- float4 pos : SV_POSITION;
- float2 pack0 : TEXCOORD0; // _MainTex
- half3 worldNormal : TEXCOORD1;
- float3 worldPos : TEXCOORD2;
- };
- float4 _MainTex_ST;
- // vertex shader
- v2f_surf vert_surf (appdata_full v) {
- v2f_surf o;
- UNITY_INITIALIZE_OUTPUT(v2f_surf,o);
- o.pos = mul (UNITY_MATRIX_MVP, v.vertex);
- o.pack0.xy = TRANSFORM_TEX(v.texcoord, _MainTex);
- float3 worldPos = mul(_Object2World, v.vertex).xyz;
- fixed3 worldNormal = UnityObjectToWorldNormal(v.normal);
- o.worldPos = worldPos;
- o.worldNormal = worldNormal;
- return o;
- }
- // fragment shader
- void frag_surf (v2f_surf IN,
- out half4 outEmission : SV_Target3)
- {
- outEmission = float4(1,1,1,1);
- }
- ENDCG
- }
- CGPROGRAM
- // Physically based Standard lighting model, and enable shadows on all light types
- #pragma surface surf Standard fullforwardshadows
- // Use shader model 3.0 target, to get nicer looking lighting
- #pragma target 3.0
- sampler2D _MainTex;
- struct Input {
- float2 uv_MainTex;
- };
- half _Glossiness;
- half _Metallic;
- fixed4 _Color;
- void surf (Input IN, inout SurfaceOutputStandard o) {
- // Albedo comes from a texture tinted by color
- fixed4 c = tex2D (_MainTex, IN.uv_MainTex) * _Color;
- o.Albedo = c.rgb;
- // Metallic and smoothness come from slider variables
- o.Metallic = _Metallic;
- o.Smoothness = _Glossiness;
- o.Alpha = c.a;
- }
- ENDCG
- }
- Fallback "Mobile/VertexLit"
- }
Advertisement
Add Comment
Please, Sign In to add comment