Unity3d unity Mathf.PerlinNoise不在0和1之间

Unity3d unity Mathf.PerlinNoise不在0和1之间,unity3d,game-development,math-functions,Unity3d,Game Development,Math Functions,有谁知道为什么会这样: Debug.Log(Mathf.PerlinNoise(190911.45f, 2290937.40f)); 给我:1.044323它应该在0和1之间,不是吗? 如果它能大于1,它能小于0吗?我正在用精灵制作一张地图,一切都正常:)但如果值大于1,我会得到空的空格 我使用一个随机种子,这就是为什么数字如此之大,如果你想知道的话 我希望有人能帮我,谢谢:)来自Unity文档 注意:返回值可能略微超过1.0f。如果0.0到1.0范围对您很重要,则可能需要钳制

有谁知道为什么会这样:

    Debug.Log(Mathf.PerlinNoise(190911.45f, 2290937.40f));  
给我:1.044323它应该在0和1之间,不是吗?

如果它能大于1,它能小于0吗?我正在用精灵制作一张地图,一切都正常:)但如果值大于1,我会得到空的空格

我使用一个随机种子,这就是为什么数字如此之大,如果你想知道的话


我希望有人能帮我,谢谢:)

来自Unity文档

注意:返回值可能略微超过1.0f。如果0.0到1.0范围对您很重要,则可能需要钳制返回值

因此您需要使用
float normalized=Mathf.Clamp(Mathf.PerlinNoise(190911.45f,2290937.40f),0,1f)

其中第二个参数是最小值,而第三个参数是最大值