所以,我试图绘制使用openGL随时间变化的抽象形状。为此,我想使用Perlin噪声函数。这段代码(http://www.sorgonet.com/linux/noise_textures/)对我来说是一个完美的开始,除了这里找到的函数只需要两个坐标。我想要一个带有两个空间坐标的坐标,第三个坐标将随时间变化。
我的问题是:是否可以调整此功能以使用另一个坐标?
答案 0 :(得分:1)
是的,这是可能的。
您可以将时间维度视为空间维度而不会出现任何问题。
对于2D噪声,您将使用这样的2D插值,使用双线性作为示例,但该想法应该适用于bicubic等。:
第一步:
您有4个外部值,并且其中有一个点可以获得值。
+ +
x
+ +
第二步:
在Y轴上插值。
+-+--+
x
+-+--+
第三步:
在Y轴上插值。
+-+--+
|
x
|
|
+-+--+
现在我们有了插值。
现在,要添加第三个维度,我们从8个值开始并添加一个额外的步骤:在Z轴上插值。这将扩展到任意多个维度。
答案 1 :(得分:0)
3d perlin噪音怎么样? http://webstaff.itn.liu.se/~stegu/aqsis/DSOs/DSOnoises.html
为几何使用2个坐标,一个用于时间。