您的位置:首页 > 移动开发 > Unity3D

Unity LOD LODGroup (LOD Bias)

2015-09-17 15:00 363 查看
LOD是( Level of Detail)的缩写,表示细节级别。

LODGroup

使用这个技术,一般是在解决运行时流畅度的问题,采用的是空间换时间的方式

根据摄像机离对象的远近,切换不同细节级别的对象,达到一种目的:近处的对象细节丰富,远处的对象忽略很多细节,从而减少渲染计算,提高流畅度。

流畅度的提高,是靠切换不同级别的对象,这就使的原来一个对象,现在需要几种不同级别的对象,这增加了运行时内存的使用,也增加了美术的工作量

使用方法:mfc11的专栏 Unity3D LOD Group

Shader LOD

- 这个是另外一种控制细节级别的技术

- 在一个Shader当中,可以给不同的subshader指定不同的LOD属性,例如:

SubShader {
LOD 200
Pass {
//insert shader pass here
}
}
SubShader {
LOD 100
Pass {
//insert shader pass here
}
SubShader {
LOD 0
Pass {
//insert shader pass here
}
}


然后,就可以在脚本代码中指定一次全局
Shader.globalMaximumLOD
值,该值是LOD所执行的最大值,也就是说所有shader中的subshader的LOD值小于该全局值,该subshader才被执行。当然,也可以单独设置
Shader.maximumLOD
控制个别shader(??这里有疑问)

参考:Unity Technologies - jonas echterhoff

LOD Bias

- 执行unity编辑器菜单:Edit > Project Settings > Quality,会打开Quality Setting窗口

- 参考 : 官方文档 Quality Setting

- LOD Bias主要控制根据物体才屏幕中的百分比来控制LOD的变化,表现用大白话描述即是:如果该值小那么,摄像机离物体距离稍微有些变化,不同细节物体即会切换,该值大,那么摄像机需要与物体有很大的距离才会切换。

- 目的:就是控制整个场景的细节。当应用运行的平台比较好,会倾向使用较高级别的画质,这时就把离摄像机虽然很远(相对来说)的物体也让他以好的级别渲染,这样整体画质更好;反之,设备较差,那么,会希望离摄像机最近时才展示最好级别的物体对象,具体稍微远(相对来说)立马切换成稍差级别的物体。这样在整体画质级别不变的情况下,保持流畅。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: