为球体(行星)制作无缝高度图纹理

时间:2015-10-13 08:36:22

标签: algorithm textures heightmap

我试图为具有柏林噪音的球形行星生成高度图。如何使用无缝左/右边框制作?我在极点上平滑了高度图,但无法理解我如何循环左右两侧。

这就是我的纹理现在看起来很喜欢的方式:

heightmap

1 个答案:

答案 0 :(得分:3)

  1. 镜像(按y轴)

    这非常适合制作无缝背景纹理。但正如您所提到的,纹理不得包含不同的模式,否则很明显。这可以用作纹理生成器的起点

    mirror by y

  2. <强>变形算法

    有矢量和光栅变形取决于图像的内容。您可以尝试使用通过线性插值完成的简单光栅变形(如果分辨率与您的情况相同),但这会使纹理模糊,这可能会对某些图像造成干扰。对于初学者,你可以尝试一起变形纹理及其镜像:

    这是cosine重量分布(50%:侧面50%,100%:中间0%):

    raster interpolation morph raster interpolation morph

    这是constant重量分布(50%:50%):

    enter image description here enter image description here

  3. 调整后的纹理生成器

    您可以调整当前纹理生成器以无缝渲染

    1. 创建/使用无缝纹理背景(由#1,#2甚至#3创建)
    2. 使用循环x轴添加随机数的随机要素

      • 所以,如果x从左边出来,它将从右边进入......
      • x' = x%xs其中xs是纹理x分辨率