| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107 |
- Shader "InTerra/Built-in/Terrain (Standard With Features)"
- {
- Properties {
- [HideInInspector] _MainTex ("BaseMap (RGB)", 2D) = "white" {}
- [HideInInspector] _Color ("Main Color", Color) = (1,1,1,1)
- [HideInInspector] _TerrainHolesTexture("Holes Map (RGB)", 2D) = "white" {}
- [HideInInspector] _Control2("_Control", 2D) = "bump" {}
- [HideInInspector][linear] _Control1("_Control1", 2D) = "black" {}
- _HT_distance("Distance", vector) = (3,10,0,25)
- _HT_distance_scale("Scale", Range(0,0.5)) = 0.25
- _HT_cover("Cover strenght", Range(0,1)) = 0.6
- _HeightTransition("Height blending Sharpness", Range(0,60)) = 50
- _Distance_HeightTransition("Distance Height blending Sharpness ", Range(0,60)) = 10
- _TriplanarSharpness("Triplanar Sharpness", Range(4,10)) = 9
- _ParallaxAffineStepsTerrain("", Float) = 3
- _MipMapFade("Parallax MipMap fade", vector) = (3,15,0,35)
- _MipMapLevel("Parallax MipMap level", Float) = 0
- _TerrainColorTintTexture("Color Tint Texture", 2D) = "white" {}
- _TerrainColorTintStrenght("Color Tint Strenght", Range(1, 0)) = 0
- _TerrainNormalTintTexture("Additional Normal Texture", 2D) = "bump" {}
- _TerrainNormalTintStrenght("Additional Normal Strenght", Range(0, 1)) = 0.0
- _TerrainNormalTintDistance("Additional Normal Distance", vector) = (3,10,0,25)
- [HideInInspector] _TerrainSizeXZPosY("", Vector) = (0,0,0)
- [HideInInspector] _NumLayersCount("", Float) = 0
- [HideInInspector] _TriplanarOneToAllSteep("", Float) = 0
- _WorldMapping("", Float) = 0
- _HeightmapBlending("", Float) = 1
- _Terrain_Parallax("", Float) = 0
- _Tracks("", Float) = 0
- _TwoLayersOnly("", Float) = 0
- _GlobalWetness("", Range(0,1)) = 0
- _TrackAO("", Range(0,1)) = 0.8
- _TrackEdgeNormals("Track Edge Normals", Float) = 2
- _TrackDetailTexture("Track Color Detail Texture", 2D) = "white" {}
- [Normal] _TrackDetailNormalTexture("Track Normal Detail Texture", 2D) = "bump" {}
- _TrackDetailNormalStrenght("Track Detail Normal Strenght", Float) = 1
- _TrackNormalStrenght("Track Normal Strenght", Float) = 1
- _TrackEdgeSharpness("Track Edge Normals", Range(0.001,4)) = 1
- _TrackHeightOffset("Track Heightmap Offset", Range(-1,1)) = 0
- _TrackMultiplyStrenght("Track Multiply strenght", Float) = 3
- _TrackHeightTransition("Track Normal Strenght", Range(0, 60)) = 20
- _ParallaxTrackAffineSteps("", Float) = 3
- _ParallaxTrackSteps("", Float) = 5
- _Gamma("", Float) = 0
- _MipMapMinLod("", Float) = 0
- }
- SubShader {
- Tags {
- "Queue" = "Geometry-100"
- "RenderType" = "Opaque"
- "TerrainCompatible" = "True"
- }
- CGPROGRAM
- #pragma surface surf Standard vertex:SplatmapVert finalcolor:SplatmapFinalColor finalgbuffer:SplatmapFinalGBuffer addshadow fullforwardshadows
- #pragma instancing_options assumeuniformscaling nomatrices nolightprobe nolightmap forwardadd
- #pragma multi_compile_fog // needed because finalcolor oppresses fog code generation.
- #define _ALPHATEST_ON //you can delete this line if you are not using Terrain Hole
- #pragma target 3.5
- #include "UnityPBSLighting.cginc"
-
- #pragma shader_feature_local __ _TERRAIN_TRIPLANAR_ONE _TERRAIN_TRIPLANAR
- #pragma shader_feature_local _TERRAIN_DISTANCEBLEND
- #define INTERRA_TERRAIN
- #define TERRAIN_INSTANCED_PERPIXEL_NORMAL
- #define TERRAIN_SURFACE_OUTPUT SurfaceOutputStandard
- #include "InTerra_DefinedGlobalKeywords.cginc"
- #include "InTerra_InputsAndFunctions.cginc"
- #include "InTerra_Mixing.cginc"
- //============================================================================
- //--------------------------------- SURFACE ---------------------------------
- //============================================================================
- void surf (Input IN, inout SurfaceOutputStandard o) {
- half weight;
- fixed4 mixedDiffuse;
- #ifdef _LAYERS_EIGHT
- weight = 1;
- #endif
- SplatmapMix(IN, weight, mixedDiffuse, o.Normal, o.Occlusion, o.Metallic);
- o.Albedo = mixedDiffuse.rgb;
- o.Alpha = weight;
- o.Smoothness = mixedDiffuse.a;
- }
- ENDCG
- UsePass "Hidden/Nature/Terrain/Utilities/PICKING"
- UsePass "Hidden/Nature/Terrain/Utilities/SELECTION"
- }
- Dependency "AddPassShader" = "Hidden/InTerra/InTerra-AddPass"
- Dependency "BaseMapShader" = "Hidden/InTerra/InTerra-Base"
- Dependency "BaseMapGenShader" = "Hidden/InTerra/InTerra-BaseGen"
- Fallback "Nature/Terrain/Diffuse"
-
- CustomEditor "InTerra.InTerra_TerrainShaderGUI"
- }
|