-
-
Save todorok1/b359fa1b1dd07c285346e134e74b1b71 to your computer and use it in GitHub Desktop.
パーリンノイズを重ね合わせてより自然な地形を作ることを目指したサンプル
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/// <Summary> | |
/// 複数のパーリンノイズをかけ合わせるメソッドです。 | |
/// </Summary> | |
float GetMultiplePerlinNoise(float xPos, float yPos) | |
{ | |
// 乱数のシードを設定します。 | |
Random.InitState(seed); | |
// パーリンノイズの値を指定回数だけ乗算します。 | |
float perlinValue = Mathf.PerlinNoise(xPos, yPos); | |
for (int i = 0; i < multipleTimes; i++) | |
{ | |
float offsetValue = Random.value; | |
float xOffset = offsetValue * fieldSizeX; | |
float yOffset = offsetValue * fieldSizeZ; | |
float scaleOffset = Random.Range(0.8f, 1.25f); | |
float xValue = (xPos + xOffset) * scaleOffset; | |
float yValue = (yPos + yOffset) * scaleOffset; | |
float value = Mathf.PerlinNoise(xValue, yValue); | |
perlinValue *= Mathf.Clamp01(value); | |
} | |
return perlinValue; | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment