| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 | #ifndef ENVIRONMENT_SKYCORE#define ENVIRONMENT_SKYCORE//skyinputhalf4 _SkyUpColor1;fixed _SkyUpColor2Hight;half4 _SkyUpColor2;half4 _SkyUpColor2Back;half4 _SkyDownColor;half4 _HorizontalColor;half4 _HorizontalColorBack;fixed _HorizontalColorLength;fixed3 _SunDir;half   _SunSize;half4  _SunColor;half4 _SunGlowColor;half3 GetSkyBoxCol(fixed3 viewDir) {	fixed y = viewDir.y;	fixed vDotS =pow( saturate(dot(_SunDir, viewDir)),2);	half3 upColor = lerp(_SkyUpColor2Back, _SkyUpColor2,vDotS);	fixed upFactor = smoothstep(0, _SkyUpColor2Hight, y);	half3 upColor2 = lerp(upColor, _SkyUpColor1, upFactor);	fixed upDownFactor = step(0, y);	half3 upDownColor = lerp(_SkyDownColor, upColor2, upDownFactor);	fixed horizontaFactor = 1 - smoothstep(0, _HorizontalColorLength, abs(y));	half3 horizontalCol = lerp(_HorizontalColorBack, _HorizontalColor, vDotS);	half3 skyBoxColor = lerp(upDownColor, horizontalCol,pow( horizontaFactor,5));	return skyBoxColor;}half3 GetSkyBoxAndSunCol(fixed3 viewDir) {	half3 skyboxCol = GetSkyBoxCol(viewDir);	fixed sDotV = saturate(dot(_SunDir, viewDir));	fixed sunFactor = step(0.998, sDotV);	half3 skyboxAndSunCol = lerp(skyboxCol, _SunColor, sunFactor);		return skyboxAndSunCol + pow(_SunGlowColor * smoothstep(0.8,1,sDotV),2);}#endif
 |