Базарю - проблема оказалась гораздо глубже: в шейдере чанков. Артефакты начинаются только там, где пиксели интерфейса пересекают пиксели чанков. Правда вот беда - не знаю как исправить шейдер. Пишет что количество временных регистров 8 превышено, требуется 9 регистров (в районе 10 линии). Вот листинг шейдера:
Shader "Custom/Terrain" {
Properties {
_GrassTex ("Grass (RGB)", 2D) = "white" {}
_MidTex ("Middle (RGB)", 2D) = "white" {}
_RockTex ("Rock (RGB)", 2D) = "white" {}
}
SubShader {
Tags { "RenderType"="Opaque" }
LOD 200
CGPROGRAM
#pragma surface surf Lambert
sampler2D _GrassTex;
sampler2D _MidTex;
sampler2D _RockTex;
struct Input {
float2 uv_GrassTex;
float2 uv_MidTex;
float2 uv_RockTex;
float3 worldPos;
};
void surf (Input IN, inout SurfaceOutput o) {
float delta;
float hght = (IN.worldPos.y+1.5)/3.0;
if(hght>0.7){
delta = (clamp(hght,0.7,1.0)-0.7)/0.2;
o.Albedo = (tex2D(_RockTex,IN.uv_RockTex)*delta + tex2D(_MidTex,IN.uv_MidTex)*(1.0-delta)).rgb;
}else if(hght<0.2){
delta = clamp(hght,0.0,0.2)/0.2;
o.Albedo = (tex2D(_MidTex,IN.uv_MidTex)*delta + tex2D(_GrassTex,IN.uv_GrassTex)*(1.0-delta)).rgb;
}else{
o.Albedo = (tex2D(_MidTex,IN.uv_MidTex)).rgb;
}
o.Alpha = 1.0;
}
ENDCG
}
FallBack "Mobile/Diffuse"
}