最近因为一个laya 3d小游戏而需要开发一个雪地的效果,所以先做了Unity 的雪地Shader效果!
SnowTracks.shader这个要加在将作为雪地的物体上,其次雪地的贴图自己在网上找一个就行:
Shader "test/SnowTracks" {
Properties{
_Tess("Tessellation", Range(1,32)) = 4
_SnowColor("Snow Color", color) = (1,1,1,0)
_SnowTex("Snow (RGB)", 2D) = "white" {}
_GroundColor("Ground Color", color) = (1,1,1,0)
_GroundTex("Ground (RGB)", 2D) = "white" {}
_Splat("SplatMap", 2D) = "black" {}
_Displacement("Displacement", Range(0, 1.0)) = 0.3
_Glossiness("Smoothness", Range(0, 1.0)) = 0.5
_Metallic("Metallic", Range(0, 1.0)) = 0
/*_NormalMap("Normalmap", 2D) = "bump" {}
_SpecColor("Spec color", color) = (0.5,0.5,0.5,0.5)*/
}
SubShader{
Tags{ "RenderType" = "Opaque" }
LOD 300
CGPROGRAM
#pragma surface surf Standard fullforwardshadows vertex:disp tessellate:tessDistance nolightmap
#pragma target 4.6
#include "Tessellation.cginc"
struct appdata {
float4 vertex : POSITION;
float4 tangent : TANGENT;
float3 normal : NO