Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/algorithm/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Algorithm 地形的自动Uv映射_Algorithm_Uv Mapping - Fatal编程技术网

Algorithm 地形的自动Uv映射

Algorithm 地形的自动Uv映射,algorithm,uv-mapping,Algorithm,Uv Mapping,我正在开发一个为游戏创建地形的框架 我面临的问题是如何对网格进行uv贴图,以便纹理不会在陡峭的位置拉伸。现在uv在[0-1]范围内,顶点uv是基于xz平面中的顶点位置(y向上)计算的。我关心两个问题: 在陡峭的区域,纹理被严重拉伸: 这不是绝对必要的,但如果有方向意识,那么在陡峭的区域,UV会变得水平,这将是非常好的。考虑下面的图像。图像左侧的分层岩石纹理很精细,因为它是水平的,看起来好像分层与海平面平行。但在右边,它不是水平的,看起来很可怕也不现实 我正在寻找一个算法来计算UV在设计时,

我正在开发一个为游戏创建地形的框架

我面临的问题是如何对网格进行uv贴图,以便纹理不会在陡峭的位置拉伸。现在uv在[0-1]范围内,顶点uv是基于xz平面中的顶点位置(y向上)计算的。我关心两个问题:

  • 在陡峭的区域,纹理被严重拉伸:
  • 这不是绝对必要的,但如果有方向意识,那么在陡峭的区域,UV会变得水平,这将是非常好的。考虑下面的图像。图像左侧的分层岩石纹理很精细,因为它是水平的,看起来好像分层与海平面平行。但在右边,它不是水平的,看起来很可怕也不现实
  • 我正在寻找一个算法来计算UV在设计时,而不是运行时,所以它需要一个计算解决方案,而不是像三平面渲染渲染渲染解决方案。我开始认为这是一个二维差分场的问题,但在这方面没有专业知识


    这是一个GPU计算项目,甚至顶点UV都存储在渲染目标中,因此迭代算法非常适合这种情况。

    参数化是一个非常复杂的领域。首先看一下Tutte嵌入。现有的许多方法都有一些可用的实现。只要去尝试适合你需要的东西。对于第二个问题,您希望以某种方式拟合渐变。这里可以考虑位置对称和旋转对称。总之,不太简单,但可行。是的,我需要类似的东西。我会深入研究这个问题。参数化是一个相当复杂的领域。首先看一下Tutte嵌入。现有的许多方法都有一些可用的实现。只要去尝试适合你需要的东西。对于第二个问题,您希望以某种方式拟合渐变。这里可以考虑位置对称和旋转对称。总之,不太简单,但可行。是的,我需要类似的东西。我会深入调查这件事。