/// <summary> /// Constructor to create a clone of a LBTerrainGrass instance /// </summary> /// <param name="lbTerrainGrass"></param> public LBTerrainGrass(LBTerrainGrass lbTerrainGrass) { this.texture = lbTerrainGrass.texture; if (lbTerrainGrass.textureName == null) { this.textureName = string.Empty; } else { this.textureName = lbTerrainGrass.textureName; } this.minHeight = lbTerrainGrass.minHeight; this.maxHeight = lbTerrainGrass.maxHeight; this.minWidth = lbTerrainGrass.minWidth; this.maxWidth = lbTerrainGrass.maxWidth; this.healthyColour = lbTerrainGrass.healthyColour; this.dryColour = lbTerrainGrass.dryColour; this.noiseSpread = lbTerrainGrass.noiseSpread; this.minPopulatedHeight = lbTerrainGrass.minPopulatedHeight; this.maxPopulatedHeight = lbTerrainGrass.maxPopulatedHeight; this.minInclination = lbTerrainGrass.minInclination; this.maxInclination = lbTerrainGrass.maxInclination; this.influence = lbTerrainGrass.influence; this.minDensity = lbTerrainGrass.minDensity; this.density = lbTerrainGrass.density; this.detailRenderMode = lbTerrainGrass.detailRenderMode; this.isCurvatureConcave = lbTerrainGrass.isCurvatureConcave; this.curvatureDistance = lbTerrainGrass.curvatureDistance; this.curvatureMinHeightDiff = lbTerrainGrass.curvatureMinHeightDiff; this.grassPlacingMode = lbTerrainGrass.grassPlacingMode; this.grassPatchFadingMode = lbTerrainGrass.grassPatchFadingMode; this.map = lbTerrainGrass.map; this.mapColour = lbTerrainGrass.mapColour; this.mapTolerance = lbTerrainGrass.mapTolerance; this.mapInverse = lbTerrainGrass.mapInverse; this.mapToleranceBlendCurve = lbTerrainGrass.mapToleranceBlendCurve; this.mapIsPath = lbTerrainGrass.mapIsPath; this.isDisabled = lbTerrainGrass.isDisabled; if (lbTerrainGrass.filterList != null) { this.filterList = LBFilter.CopyList(lbTerrainGrass.filterList); } else { this.filterList = new List <LBFilter>(); } this.showGrass = lbTerrainGrass.showGrass; this.useNoise = lbTerrainGrass.useNoise; this.noiseTileSize = lbTerrainGrass.noiseTileSize; this.noiseOctaves = lbTerrainGrass.noiseOctaves; this.grassPlacementCutoff = lbTerrainGrass.grassPlacementCutoff; if (lbTerrainGrass.lbTerrainDataList == null) { this.lbTerrainDataList = null; } else { this.lbTerrainDataList = new List <LBTerrainData>(lbTerrainGrass.lbTerrainDataList); } this.useMeshPrefab = lbTerrainGrass.useMeshPrefab; this.meshPrefab = lbTerrainGrass.meshPrefab; if (lbTerrainGrass.meshPrefabName == null) { this.meshPrefabName = string.Empty; } else { this.meshPrefabName = lbTerrainGrass.meshPrefabName; } this.showPrefabPreview = lbTerrainGrass.showPrefabPreview; this.GUID = lbTerrainGrass.GUID; }
// Class constructors public LBTerrainGrass() { this.texture = null; // Added v1.4.2 Beta 5b this.textureName = string.Empty; this.minHeight = 0.5f; this.maxHeight = 1f; this.minWidth = 0.5f; this.maxWidth = 1f; this.healthyColour = new Color(67f / 255f, 249 / 255f, 42 / 255f, 1f); this.dryColour = new Color(205f / 255f, 188f / 255f, 26f / 255f, 1f); this.noiseSpread = 0.1f; this.minPopulatedHeight = 0.5f; this.maxPopulatedHeight = 1f; this.minInclination = 0f; this.maxInclination = 30f; this.influence = 0.5f; this.minDensity = 0; // So to a low default (2) max density to cater for mesh grasses. this.density = 2; this.detailRenderMode = DetailRenderMode.Grass; this.grassPlacingMode = GrassPlacingMode.Height; this.grassPatchFadingMode = GrassPatchFadingMode.DontFade; // Added v2.0.7 Beta 6 this.isCurvatureConcave = false; this.curvatureMinHeightDiff = 1f; this.curvatureDistance = 5f; // Added v1.1 Beta 7 this.map = null; this.mapColour = UnityEngine.Color.green; this.mapTolerance = 1; this.mapInverse = false; // Added v1.3.2 Beta 7b this.mapToleranceBlendCurve = LBMap.GetDefaultToleranceBlendCurve; this.mapIsPath = false; // Added v1.2.1 this.isDisabled = false; // Added v1.3.0 Beta 3a this.showGrass = true; // Added v1.3.1 Beta 6a this.useNoise = false; this.noiseTileSize = 10f; this.noiseOctaves = 5; this.grassPlacementCutoff = 0.5f; // Added v1.4.2 Beta 3f this.lbTerrainDataList = null; // Added v1.4.2 Beta 5c this.useMeshPrefab = false; this.meshPrefab = null; this.meshPrefabName = string.Empty; // Added v2.0.7 Beta 4a this.showPrefabPreview = false; // Added v2.0.0 // Assign a unique identifier GUID = System.Guid.NewGuid().ToString(); }