当前位置:首页 >教程首页 > 游戏程序 > 虚幻引擎交互开发工程师班 >重读地平线技术分享的心得体会

重读地平线技术分享的心得体会

发布时间:2020-08-24 10:23:52

Hello . 大家好,今天给大家带来地平线的技术分享,我是神棍赵。

一、前言

近期重读了一遍地平线开发商在2017年GDC的技术分享GPU Based Procedural Placement In Horizon Zero Dawn。已经有很多人分享过这个PPT,所以我也就不再拾人牙慧,没有完全的翻译,随意写点这次重读的心得体会,与大家交流交流。说错的地方欢迎指正,感激不尽。

二、正文

首先地平线中是将道路,水,山石之类的mask,发送到GPU叠加,然后对混合结果进行采样生成植被。 正巧近期PC版发布了,感兴趣的可以买来实际体验一下生成效果。

1.png

根据适宜生长植被的mask获取点云信息,生成植被。

2.webp.jpg

这次研究PPT,貌似想明白了一些事情:

1.他们的高度图用0.5一个像素的精度, 与其地图太小有很大关系,地平线的地图为5平方英里,约13平方千米。ue4大喊一声:就这!我上我也行!

2.Ecotopes A-H, 存储的可能就是所有的生态类型分布,采用2米一个像素的精度是因为游戏中植被以乔木为主,冠径很大,不需要太精确的数据,且生态类型之间没有重叠,所以就用了一张精度不是很高的图。

3.展示生成数据用了这27张图,但不是代表只用了这些输入数据,有一小部分应该是利用已有贴图实时生成的。例如通过高度图就可以算出地形坡度,根据河流就可以算出地形的湿度,可以把地形坡度,湿度也看做一张图,所以实际生成植被的过程需要考虑非常多的因素。

3.webp.jpg

当采样点后生成点云传为cpu时,传递的是一个3x4的矩阵,只传回了旋转,位置,缩放,而没有指定具体的能植被类型与变体信息。这样就可以推测出下图中展示的生成关系图的大致内容应该就是根据缩放值选择合适的树木变体,例如缩放值小的就是幼苗,缩放值大的就选择成熟体。

4.webp.jpg

有一个专门的植被编辑器来处理植被之间的关系,但限于计算时间(实时生成),逻辑应该比较简单。

5.webp.jpg

最后有专门的工具检查生成效果,从下图可以看出没有明显的聚类关系,显然没有做迭代解算。

6.webp.jpg

编辑逻辑就是先确定生成区域的Mask, 再指定生成类型(tree/brush),最后指定具体的生态群落,主要的编辑方式就是用笔刷控制生成区域的Mask。

7.png

最终的生成效果都类似这种大的乔木,以及非常低矮的灌木,简单粗暴效果也不错。

8.png

三、总结

若问能不能在ue4 中实现类似的植被编辑工具?答案当然是能,毕竟我们站在ue4 这个巨人的肩膀上。 相信对于epic官方来讲更是小菜一碟,快三年了,EPIC 也该上菜了。

来源:Thepoly公众号

学员作品赏析
  • 2101期学员李思庭作品

    2101期学员李思庭作品

  • 2104期学员林雪茹作品

    2104期学员林雪茹作品

  • 2107期学员赵凌作品

    2107期学员赵凌作品

  • 2107期学员赵燃作品

    2107期学员赵燃作品

  • 2106期学员徐正浩作品

    2106期学员徐正浩作品

  • 2106期学员弓莉作品

    2106期学员弓莉作品

  • 2105期学员白羽新作品

    2105期学员白羽新作品

  • 2107期学员王佳蕊作品

    2107期学员王佳蕊作品

专业问题咨询

你担心的问题,火星帮你解答

微信扫码在线答疑

扫码领福利1V1在线答疑

点击咨询
添加老师微信,马上领取免费课程资源

1. 打开微信扫一扫,扫描左侧二维码

2. 添加老师微信,马上领取免费课程资源

×

同学您好!

您已成功报名0元试学活动,老师会在第一时间与您取得联系,请保持电话畅通!
确定