首页 > 代码库 > Unity3d游戏场景优化杂谈(3)

Unity3d游戏场景优化杂谈(3)

LOD(Level-of-detail)是最常用的游戏优化技术 。如果你的程序可以定制开发应用LOD的模块,当然

是很美好的事情。不过如果没有也没关系,大家可以使用UniLOD这个第三方的LOD插件。免费共享的哦(向UniLOD开发者致敬,赞美伟大的共享精神!!!)

技术分享

以下是简介:

功能众多,涉及到场景管理,模型优化,资源管理员,及显示效果变化,且不需要脚本编写,全部通过编辑器实现!目前此unity3d扩展为开源的,你可以下载到源代码来研究学习。

特色:

·1.自动简化网格体(Windows + Unity Pro only)

                     根据用户的设定自动减面。

· 2.Level-of-detail 编辑器

                     方便快捷的创建LOD组件来切换不同的品质级别或通过设定距离数值来显示

                     或隐藏物体。

                      创建你的 LOD 场景

                      方便快捷的用 LOD 组件来替换现有组件将现有的场景转换为拥有LOD管理的场景。

                       将单个的mesh和贴图成组来降低draw calls

                       将场景存储为 标准 assets 或者 asset 包

·  3.场景管理

                        Streaming 支持

                         Stream your scene as the player moves through the world

                          资源自动 loaded/unloaded

                          Stream from resource folder, or asset bundles

                           Minimal performance impact with resource buffering

                          可以根据需要调整, 速度或者内存

                          Takes care of switching quality levels as the player moves though the world

                          充分优化, 使用最少的资源

·   4.资源管理

                           所有asset bundles 和普通资源都以标准方式载入。

                           Keeps reference counts on your resources and 自动释放

·   5.完整植入 Unity 并只需要通过UnityEditor API来操作。

                          无需输入代码

Sorry,场景管理和资源管理的有些内容没搞懂就不乱翻译了。

链接:

http://unity3d8.com/content/lod扩展beta版本发布unilod-beta-levelofdetail-and-streaming-support

 

当然,Unity3d自己的地形带LOD功能的,当你刷好你的地形后,你只需要调整Pixel Error这个

参数即可。Unity3d会自动计算生成地形的LOD,无需你做其他的任何设置。

技术分享

要提醒朋友们的是,如果你使用了Lightmap,那么同时使用LOD的时候会有一些麻烦,我们的办法

是制作模型的时候事先做好第二套uv(不使用Unity的自动计算lightmapUV功能),而且所有LOD的第二套UV的分布位置都一致,很费工。不知道有没有更好的方法!!!

Unity3d游戏场景优化杂谈(3)