0

我正在开发一个用于程序纹理生成的库(https://github.com/mikera/clisk),它开始很好地融合在一起。

我现在正在尝试找出制作可平铺 2D 纹理的好方法。

一种似乎可行的方法是将 (0,0) - (1,1) 2D 纹理空间映射到 3D 纹理内的表面上,使表面连接左边缘和右边缘以及顶部和底部边缘纹理(例如圆环)。这样做,应该确保 2D 纹理是自动平铺的。

由于我已经拥有良好的(不可平铺的)3D 纹理(柏林噪声、分形噪声等),这似乎是允许从任意 3D 纹理创建可平铺 2D 纹理的好方法。

所以我的问题:

  • 这是一种有效的技术吗?
  • 如果是这样,我应该映射到什么样的表面以最大限度地减少扭曲/获得好看的平铺效果?
  • 有什么需要注意的陷阱吗?
4

1 回答 1

2

为此使用 3D 噪声会产生失真,答案是使用 4D 噪声,尽管这不是唯一的方法 - 您还可以使 2D 函数平铺。

这里有几个有用的链接:

于 2012-06-27T09:30:18.223 回答