protected override float GenerateBaseHeight(float worldX, float worldZ, IZoneNoiseSettings settings) { var distanceFromCenter = Vector2.Distance(Vector2.zero, new Vector2(worldX, worldZ)); distanceFromCenter = Mathf.Max(distanceFromCenter, 0.1f); var height = Mathf.Clamp((100/distanceFromCenter), 0, 50); return settings.Height + height; }
protected override float GenerateBaseHeight(float worldX, float worldZ, IZoneNoiseSettings settings) { var distanceFromCenter = Vector2.Distance(Vector2.zero, new Vector2(worldX, worldZ)); distanceFromCenter = Mathf.Max(distanceFromCenter, 0.1f); var height = Mathf.Clamp((100 / distanceFromCenter), 0, 50); return(settings.Height + height); }
protected override float GenerateBaseHeight(float worldX, float worldZ, IZoneNoiseSettings settings) { var height = base.GenerateBaseHeight(worldX, worldZ, settings); var mountInfluence = Land.GetInfluence(new Vector2(worldX, worldZ))[ZoneType.Mountains]; //Slightly raise up heightmap of Mountain zone if (mountInfluence > 0.7f) { var additional = (mountInfluence + 0.3f); height *= additional; } return height; }
protected override float GenerateBaseHeight(float worldX, float worldZ, IZoneNoiseSettings settings) { var height = base.GenerateBaseHeight(worldX, worldZ, settings); var mountInfluence = Land.GetInfluence(new Vector2(worldX, worldZ))[ZoneType.Mountains]; //Slightly raise up heightmap of Mountain zone if (mountInfluence > 0.7f) { var additional = (mountInfluence + 0.3f); height *= additional; } return(height); }
protected virtual float GenerateBaseHeight(float worldX, float worldZ, IZoneNoiseSettings settings) { //Workaround of stupid Unity PerlinNoise symmetry worldX += 1000; worldZ += 1000; var yValue = 0f; yValue += Mathf.PerlinNoise(worldX * _landSettings.LandNoiseSettings.InScale1, worldZ * _landSettings.LandNoiseSettings.InScale1) * settings.OutScale1; yValue += Mathf.PerlinNoise(worldX * _landSettings.LandNoiseSettings.InScale2, worldZ * _landSettings.LandNoiseSettings.InScale2) * settings.OutScale2; yValue += Mathf.PerlinNoise(worldX * _landSettings.LandNoiseSettings.InScale3, worldZ * _landSettings.LandNoiseSettings.InScale3) * settings.OutScale3; yValue += settings.Height; return(yValue); }
protected virtual float GenerateBaseHeight(float worldX, float worldZ, IZoneNoiseSettings settings) { //Workaround of stupid Unity PerlinNoise symmetry worldX += 1000; worldZ += 1000; var yValue = 0f; yValue += Mathf.PerlinNoise(worldX*_landSettings.LandNoiseSettings.InScale1, worldZ*_landSettings.LandNoiseSettings.InScale1)* settings.OutScale1; yValue += Mathf.PerlinNoise(worldX*_landSettings.LandNoiseSettings.InScale2, worldZ*_landSettings.LandNoiseSettings.InScale2)* settings.OutScale2; yValue += Mathf.PerlinNoise(worldX*_landSettings.LandNoiseSettings.InScale3, worldZ*_landSettings.LandNoiseSettings.InScale3)* settings.OutScale3; yValue += settings.Height; return yValue; }
protected override float GenerateBaseHeight(float worldX, float worldZ, IZoneNoiseSettings settings) { return 0; }
protected override float GenerateBaseHeight(float worldX, float worldZ, IZoneNoiseSettings settings) { return(0); }