我对随机生成器几乎没有经验,我使用过C语言中的标准rand函数和Perlin噪声。
但是现在,我需要一个分辨率为NxNxN(其中N可能为1e6或更大)的立方体,用白噪声填充(没有Perlin平滑或其他),我可以“选择”一个值,如果我重新选择相同的值,则每次都应该是相同的结果。它应该被种子化,以便如果我再次启动应用程序,结果需要相同。它不应该是安全的或其他什么,只要足够随机,以至于人类不能通过思考来预测价值。如果他真的用计算机分析它,那么它是可以预测的。
就像我将使用标准的C rand函数,设置种子并在3个维度的嵌套for循环中生成随机数,直到达到坐标。当然,这样做非常慢。我需要一些快速的东西!
我在互联网上搜索了很多,但同时也没有找到什么。也许我正在寻找错误的关键字,但我没有找到任何我可以使用的东西。
有人能帮助我入门吗?代码?链接?我并不在乎是否理解算法,但它应该易于实现和使用,特别是应该快速。
但是现在,我需要一个分辨率为NxNxN(其中N可能为1e6或更大)的立方体,用白噪声填充(没有Perlin平滑或其他),我可以“选择”一个值,如果我重新选择相同的值,则每次都应该是相同的结果。它应该被种子化,以便如果我再次启动应用程序,结果需要相同。它不应该是安全的或其他什么,只要足够随机,以至于人类不能通过思考来预测价值。如果他真的用计算机分析它,那么它是可以预测的。
就像我将使用标准的C rand函数,设置种子并在3个维度的嵌套for循环中生成随机数,直到达到坐标。当然,这样做非常慢。我需要一些快速的东西!
我在互联网上搜索了很多,但同时也没有找到什么。也许我正在寻找错误的关键字,但我没有找到任何我可以使用的东西。
有人能帮助我入门吗?代码?链接?我并不在乎是否理解算法,但它应该易于实现和使用,特别是应该快速。