【GAMES104】 游戏中的大地渲染

本文探讨游戏中地形渲染的方法,包括使用高程图、地形网格细分、避免T-Junction问题,以及材质融合和动态地形处理。介绍了四叉树剖分、虚拟纹理技术以及为解决浮点精度问题的Camera-Relative Rendering策略。
摘要由CSDN通过智能技术生成

一、地形几何

最开始,也是最简单表达一个地形的方法就是高程图(Heightfield),也就是用明暗颜色代表地形高度的图。虽然简单,但是当高程图与纹理和光影搭配的时候也有很高的表现力。

那么如何处理地形渲染的问题,最简单的方法就是在每隔一段距离做一个网格,根据高程图去移动网格顶点,但问题也很明显,当世界特别大的时候存储就成了问题。

那么接下来就是老生常谈的网格细分(Mesh Tessellation)的问题了,实际上在渲染地形的时候只需要渲染相机可以观察到的地方。这其中要保持两个原则:1、离相机越近越密集,fov越小越密集;2、要保证在简化合并的时候,采样点变少,地形高低误差不能超过一个阈值(Error Bound,这个阈值是在视空间上,理性情况下不要超过一个像素)。

将三角形做的疏密相间,最经典的方法就是基于三角形的剖分(Triangle-Based Subdivision) 。在我们的网格中连接对角线成为两个等腰直角三角形,如果密度不够就在三角形最长边做等分(如上图)。当然这样也有一个叫做 T-Junction 的问题,就是当同一条边相邻的三角形精度不同的时候,高精度的在这条边上的顶点是有起伏的,会产生露

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值