有人知道为什么这样吗:
Debug.Log(Mathf.PerlinNoise(190911.45f, 2290937.40f));
给我:1.044323应该在0到1之间吗?
如果它可以大于1,它可以小于0吗?我正在使用精灵创建地图,并且一切正常:)除外,如果该值大于1,我将获得空白。
我使用随机种子,这就是为什么数量如此之大的原因,如果您想知道的话。
我希望有人能帮助我,谢谢:)
答案 0 :(得分:2)
从Unity文档中,
注意:返回值可能会稍微超过1.0f。如果0.0到1.0的范围对您很重要,则可能需要限制返回值。
因此您需要使用float normalized = Mathf.Clamp(Mathf.PerlinNoise(190911.45f, 2290937.40f),0,1f)
第二个参数是最小值,而第三个参数是最大值。