вроде начал потихоньку разбираться с шейдерами, но вот чет не поучается никак прикрутить спекуляр.
Код
Shader "Custom/PlanetShader" {
Properties
{
_MainTex("Texture", 2D) = "white" {}
_LightTex("Light Text", 2D) = "black" {}
_SpecTex("Spec Text", 2D) = "white" {}
_RimColor("Rim Color", Color) = (0.26,0.19,0.16,0.0)
_SpecularColor("Specular Color", Color) = (0.26,0.19,0.16,0.0)
_RimPower("Rim Power", Range(0.5,8.0)) = 3.0
_RimStrenght("Rim Strenght", Range(0.0,10.0)) = 3.0
}
SubShader
{
Tags { "RenderType" = "Opaque" }
CGPROGRAM
#pragma surface surf Lambert [ noambient ]
struct Input
{
float2 uv_MainTex;
float2 uv_LightTex;
float2 uv_SpecTex;
float3 viewDir;
float3 lightDir;
};
sampler2D _MainTex;
sampler2D _LightTex;
sampler2D _SpecTex;
float4 _RimColor;
float4 _SpecularColor;
float _RimPower;
float _RimStrenght;
void surf (Input IN, inout SurfaceOutput o)
{
half rim = 1.0 - saturate(dot(normalize(IN.viewDir), o.Normal));
o.Albedo = tex2D(_MainTex, IN.uv_MainTex).rgb +( _RimColor.rgb * pow(rim, _RimPower))*_RimStrenght;
o.Specular = _SpecularColor * tex2D(_SpecTex, IN.uv_SpecTex).a;
o.Emission = tex2D(_LightTex, IN.uv_LightTex).rgb;
}
ENDCG
}
Fallback "Diffuse"
}
шейдер компилится, работает без ошибок, но блика не появляется никакого.
может ктонибудь просвятить, что здесь не так?