首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >程序化的行星、高度贴图和纹理

程序化的行星、高度贴图和纹理
EN

Stack Overflow用户
提问于 2010-11-03 06:53:01
回答 2查看 3.5K关注 0票数 1

我目前正在开发一个OpenGL过程行星生成器。我希望将它用于太空RPG,不允许玩家进入行星表面,所以我忽略了任何与漫游相关的东西。此时,我正在使用VBO绘制一个立方体,并将其映射到一个球体上,如here所示。

我熟悉大多数分形高度图生成技术,并且已经实现了我自己版本的中点位移(我知道在这种情况下没有那么有用)。

我的问题是,什么是程序化生成高度图的最佳方法。我看过libnoise,它允许我制作可倾斜的高度贴图/纹理,但据我所知,我需要生成一个网络,如下所示:

让瓦片看起来很明显。

有人能建议我走哪条最好的路线吗?

任何意见都将非常感谢。

谢谢,

亨利。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-11-03 07:12:46

看起来您理解了生成一个平坦、无缝的曲面,然后尝试将其映射到球体上的问题。

使用3D噪波功能如何?3D噪声函数接受3个坐标而不是2个坐标作为其输入,因此设想一个充满生成数字的3D数组(而不是2D数组)。因此,一旦有了3D噪波函数,就可以生成2D纹理,而不是为每个像素使用2D坐标,而是使用该像素在球体上所在位置的3D坐标。(我希望这个令人费解的句子有意义!)

看一下这个关于Perlin noise的页面:https://web.archive.org/web/20120829114554/http://local.wasp.uwa.edu.au/~pbourke/texture_colour/perlin/

我认为它准确地描述了你想要的关于球体的东西。

票数 3
EN

Stack Overflow用户

发布于 2010-11-28 21:06:25

您可能还想查看2004年的这篇文章,该文章介绍了如何将一个球体“分割”成可管理的部分。

http://www.gamedev.net/reference/articles/article2074.asp

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4082832

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档