Hello. 大家好,今天给大家带来星际公民的技术分享,希望对大家有所帮助。我是神棍赵!
1、前言
相信一直关注星际公民的人都知道,CIG为了做星际公民特意做了一套行星生成工具,经过不断的迭代,现在已经迭代到第4版了,细节丰富,功能强大。近日,他们放出了一段技术展示视频,让我们长长见识。

2、地形生成
首先在SD中做一个凸起的包,简单展示一下星际公民的星球是怎么编辑的,方便观察。

然后把生成的高度图输入星球编辑器中,这时就会和现有地形混合,可以从下图中看到混合后的效果。

实际工作中,会用SD做地形侵蚀,增加地形细节。第一次看到这种做法的时候确实被他们的骚操作惊到了,后来仔细一想SD确实非常适合这个工作。

右键重导入即可看到效果。输出的高度图其实是地形模板,后文会介绍地形混合相关的内容。

3、散布岩石与植被
通过制作好的高度图,在SD中生成相对应的岩石与植被的散布信息,最后导入引擎。其中怎么生成,怎么导入就不得而知了,只能说大厂NB。


4、编辑
只需要选择相应的范围然后设置为积雪覆盖,即可改变下图中光秃秃的地貌。

当选择积雪的生态类型的时候,会自动计算出适合的生态区域,就是当前蓝色的区域(猜测这个蓝色选区是通过温度,湿度,高度,斜率等参数计算出来的)。

然后点击确定即可生成,下图中地块就被积雪覆盖。

同时也生成了植被。

5、地形混合
星球生成的核心就是先由不同的基础高度图混合成生态系统图,然后通过不同的生态系统图生成整个星球。例如当前这个星球是由15种生态系统图混合而成,每个颜色代表一种生态系统图。

下图是两个生态系统图。每个生态系统图也是由左侧的基础高度图混合得来的。


这种星球生成的方式与常见的星球生成器最大的不同之处在于对生成效果的追求。普通的星球生成直接叠加noise就完事了,效果很差。要想效果好必须做地形侵蚀,可是实时计算地形侵蚀又不现实,计算量太大。最终,妥协方案就是星际公民用的这种,先做基础组件,然后拼接混合生成整个星球,兼顾了生成质量与运行效率。
6、总结
地平线面积大约13平方公里,Guerrilla Games制作了一系列GPU版生成工具。
幽灵行动:荒野面积大约400平方公里,育碧借助houdini制作了一系列生成工具。
星际公民有很多个星球,为了提高制作速度,CIG借助SD制作了一系列的星球编辑工具。
最终,这三家公司在面临不同的项目需求时,通过不同的解决方案实现了同一个目标:过程化生成(procedural generation),加快迭代速度,降低制作成本。
那么你呢?你现在的项目需要什么工具呢?又在开发什么工具?
来源:Thepoly公众号
热门课程
专业讲师指导 快速摆脱技能困惑相关文章
多种教程 总有一个适合自己专业问题咨询
你担心的问题,火星帮你解答3.精通材质贴图软件;精通各主流渲染器的设置;对主流引擎有一定了解并能还原美术效果6.简历内请附带作品资深角色模型师(CG向)......
鹿角部分我是通过在ZBrush中创建圆柱体,然后使用蛇形笔刷(SnakeHook)配合动态笔刷模式,把鹿角的大型制作出来期间对......
是的,常年被抢、上来缺口按几十个人算的,一定有角色动画专业!下面这家地处北京的制作公司表示,他们现在的主要业务是制作动画短剧、......
一样是入学时底子薄弱、但通过火星6个月课程学习获得较大提升,并顺利入职行业名企的学员案例这个专业的全称是“影视游戏3D模型大师......
全球年收入超10亿美刀的小程序游戏,正在疯狂招聘!附火星匹配专业
这里为大家整理了一组点点互动10月岗公开的热招岗位清单,主要是美术岗和技术岗,分校招和社招两组,感兴趣的同学可以尝试投递社招·......
上班啦!上班啦!又是替同学开心的一天!这位同学因为大学还没有正式毕业,所以目前是以实习生身份入职腾娱!等拿到大学毕业证的时候,......
同学您好!