SimpleTwoSide shader unity graphic rendering method
Simple two side shader based on blin_Phong method
AF_TwoSide.shader HLSL
Code (HLSL): AF_TwoSide
- Properties{_MainTex("_MainTex", 2D) = "white" {}_ColorMult("ColorMult", Float) = 1_Color0("Color 0", Color) = (1,1,1,0)_BumpMap("_BumpMap", 2D) = "bump" {}_BumpScale("_BumpScale", Float) = 1_SpecularMap("_SpecularMap", 2D) = "white" {}_SpecularColor("_SpecularColor", Color) = (1,1,1,0)_Specular("_Specular", Float) = 1_Smoothness("_Smoothness", Float) = 0.5[HideInInspector] _texcoord( "", 2D ) = "white" {}[HideInInspector] __dirty( "", Int ) = 1}SubShader{Tags{ "RenderType" = "Opaque" "Queue" = "Geometry+0" }Cull OffCGPROGRAM#include "UnityStandardUtils.cginc"#pragma target 3.0#pragma surface surf StandardSpecular keepalpha addshadow fullforwardshadowsstruct Input{float2 uv_texcoord;};uniform sampler2D _BumpMap;uniform float4 _BumpMap_ST;uniform float _BumpScale;uniform sampler2D _MainTex;uniform float4 _MainTex_ST;uniform float4 _Color0;uniform float _ColorMult;uniform sampler2D _SpecularMap;uniform float4 _SpecularMap_ST;uniform float _Specular;uniform float4 _SpecularColor;uniform float _Smoothness;void surf( Input i , inout SurfaceOutputStandardSpecular o ){float2 uv_BumpMap = i.uv_texcoord * _BumpMap_ST.xy + _BumpMap_ST.zw;o.Normal = UnpackScaleNormal( tex2D( _BumpMap, uv_BumpMap ), _BumpScale );float2 uv_MainTex = i.uv_texcoord * _MainTex_ST.xy + _MainTex_ST.zw;o.Albedo = ( ( (tex2D( _MainTex, uv_MainTex )).rgb * (_Color0).rgb ) * _ColorMult );float2 uv_SpecularMap = i.uv_texcoord * _SpecularMap_ST.xy + _SpecularMap_ST.zw;o.Specular = ( (tex2D( _SpecularMap, uv_SpecularMap )).rgb * _Specular * (_SpecularColor).rgb );o.Smoothness = _Smoothness;o.Alpha = 1;}ENDCG}Fallback "Diffuse"CustomEditor "ASEMaterialInspector"
댓글
댓글 쓰기