太大lod太大_探索游戏中的LOD技术 网格简化

什么是LOD

LOD是Level Of Details的缩写即多层次细节。在计算机图形学中,LOD就是为了支持当物体远离观察者或者物体的重要程度不同,位置不同,速度不同或者视角相关的参数不同需要减少渲染3D模型的复杂度。LOD技术增加渲染效率的本质是通过增加图形管线的工作量,主要是通过顶点数据进行交换的。大部分情况下,被减少的视角效果不会被注意到,因为对于非常远的物体或者快速移动的物体的影响是非常小的。

多层次细节就是让一个物体在相机距离不同的情况下,显示不同的模型,从而节省性能的开销。比如一个非常漂亮的建筑,顶点数和面数一定很多,玩家在游戏中控制人物相机视角离建筑很近时,看起来非常好看,当玩家走远的时候,这座建筑还在相机视线内,但距离已经很远了,看起来不是那么清晰了,但由于建筑的模型精度太高,无论远近模型的顶点和面数都不变,性能开销不变,当你的游戏里面有很多这样的建筑时,这时就需要使用LOD技术来节省性能开销了。LOD技术主要广泛用于沙盒游戏或大世界地图游戏。

e0ddcfb7cadf3bca09d5a0055629c904.png

如何使用LOD

在项目中使用LOD技术实际上关联了游戏制作过程的很多流程,如模型制作,场景制作,渲染管线,资源加载,内存控制,性能消耗都会涉及到很多需要解决的难点。项目中要充分利用LOD需要考虑以下几个方面:

需要美术人员来处理LODs

需要建立一套定制化的Pipeline

需要依赖甚至开发相关的专业软件工具

需要评估很多在Pipeline流程里面不同程度地使用LOD的产品,并且每一个产品的使用方式都不尽相同

最主要的,需要评估使用LOD带来的价值和成本的开销的比较。

网格简化处理LODs

使用LOD技术一个关键点就是需要不同面数精度的模型。所以制作模型时,需要制作多套不同面数的模型,对于几个模型还好说,如果像大世界游戏或者沙盒游戏含有成百上千个显示对象的话,都单独定制2套模型或者3套模型的时间成本和预算成本就太大了,所以需要一种方式快速生成多套不同面数的模型。

c4e3c6af0425bc0597a6bcdbb4a4bb7a.png

Mesh Decimation技术就是用于解决这个问题的。简单的说,Mesh Decimation其实就是网格简化,我们需要一套面数和精度比较高的模型,然后进行模型减面来得到不同程度的低面数模型。网格简化的实现原理主要有两种,第一种为顶点聚类(vertex clustering),第二种为增量式简化(Increment decimation)。

顶点聚类(vertex clustering)

顶点聚类原理大致分为以下几步:

1. 生成聚类(Cluster Generation)

2.计算表现因子(Computing a representative)

3.生成网格(Mesh Generation)

4.改变拓扑结构(Topology Changes)

生成聚类其实就是顶点合并,它的主要思路是用一个立方体包围盒包住整个模型,然后把包围盒分成很多的小立方体区域,最后落在同一个区域的顶点将会被合并。可以以树层次结构自顶向下或者自底向上的开始处理顶点合并。

20b2ca564fbe274877a93f2a7cdba735.png

计算表现因子主要用以下几个参数为主,顶点位

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值