Unity LOD-Level of Detail(多层次细节)用法教程
Unity LOD 多层次细节
|
本文提供全流程,中文翻译。 Chinar 坚持将简单的生活方式,带给世人! (拥有更好的阅读体验 —— 高分辨率用户请根据需求调整网页缩放比例) |
|
Chinar —— 心分享、心创新! 助力快速理解 Unity中多层次细节组的具体用法 为新手节省宝贵的时间,避免采坑! |
Chinar 教程效果:
全文高清图片,点击即可放大观看 (很多人竟然不知道)
1
Level of detail —— 多层次细节
性能优化时,我们有时需要对物体进行处理,来让游戏跑起来更流畅
多层次细节处理,就是让一个物体,在相机距离不同的情况下,显示不同的模型,从而节省性能的开销
开发者做个非常精致的房子,顶点数/面数一定很多
玩家在游戏中,控制人物相机视角离一座房子近的时候,看起来非常精致好看!游戏体验很好!(假设性能开销为100)
当玩家走远的时候,这座房子还在那里,但已经走了很远了,房子看起来不是那么清晰了
但由于房子的模型精度太高无论远近,模型的顶点和面数都不变
Gpu都需要去处理,并绘制房子的图形效果。性能开销还是100
那么就有些浪费性能了,当玩家走远的时候,我们只需要让玩家看到一个房子还在那里即可,因为无论精细度多高,玩家看起来房子都很小,看不清
这是一个房子还好说,现如今没有什么cpu绘制不了这么一个房子。但游戏对象肯定不止一个,大型游戏可能有一堆,几百个,上千个物体
所以作为开发者,我们无需把一个精度那么高的模型,还放在那里,给CPU GPU增加工作量
这时候我们就可以用 LOD 技术,来对模型进行 分层级显示
视角离近时,我们让物体显示精细度高的模型
视角离远时,我们让物体显示精细度低的模型
这就是 Level of detail 多层次细节优化
2
Example —— Unity 层次优化例子
Unity 为我们提供了一个组件 LOD Group
开发者可以极为方便创建,并进行 LOD 优化
在层次面板中创建一个空物体,并创建3个子物体: Cube 、 Sphere 、 Capsule
3
Set LOD Group —— 添加设置层次细节组
Add ComPonent 添加组件 LOD Group
并将 3 个子物体,对应设置到组件相应的参数的层级中
注意:
其实游戏开发时,多数都是在参数中直接关联 预设物 ,而并非层次面板中的游戏对象
所以,LOD技术带来性能优化的同时,存在的一个 缺点就是会增大程序包的体积
因为本来一个模型,现在要准备起码2个/3个/4个,打包时自然而然程序包体积就会增大!
4
Ultimate Impact —— 最终效果
现在你可以缩放镜头,来查看效果了,就这么简单
LOD Group 组件会根据你设置的 距离百分比,来显示相应的游戏对象
5
Set Parameter —— 设置参数
层级显示的距离的远近,可以通过调节组件上方的显示百分比来调节
LOD Group 组件会根据你设置的 距离百分比,来显示相应的游戏对象
下边演示了,绑定预设物与设置距离的具体操作步骤
至此:LOD教程基本用法完美结束
支持
May Be —— 搞开发,总有一天要做的事!
|
拥有自己的服务器,无需再找攻略! Chinar 提供一站式教程,闭眼式创建! 为新手节省宝贵时间,避免采坑! |
先点击领取 —— 阿里全产品优惠券 (享受最低优惠)
1 —— 云服务器超全购买流程 (新手必备!)
2 —— 阿里ECS云服务器自定义配置 - 购买教程(新手必备!)
3—— Windows 服务器配置、运行、建站一条龙 !
4 —— Linux 服务器配置、运行、建站一条龙 !
" role="presentation" style="position: relative;">
技术交流群:806091680 ! Chinar 欢迎你的加入
END
本博客为非营利性个人原创,除部分有明确署名的作品外,所刊登的所有作品的著作权均为本人所拥有,本人保留所有法定权利。违者必究
对于需要复制、转载、链接和传播博客文章或内容的,请及时和本博主进行联系,留言,Email: ichinar@icloud.com
对于经本博主明确授权和许可使用文章及内容的,使用时请注明文章或内容出处并注明网址
Unity LOD-Level of Detail(多层次细节)用法教程的更多相关文章
- Unity3D for VR 学习(10): Unity LOD Group 组件
LOD (Level of Detail), 远小近大思想. LOD,在Unity中是用到了空间换时间的优化方法:即程序加载2套模型,导致包会增大:在运行时刻,远处的用面数少的模型–模糊一些,近处用面 ...
- unity 模型层次细节
http://blog.csdn.net/qq_25210959/article/details/51734517 层次细节(LOD),它是根据物体在游戏画面中所占视图的百分比来调用不同复杂度的模型的 ...
- Level Of Detail
[Level Of Detail] LOD0离摄像机最近,LODN离摄像机最远.LOD Group组件的用法是,将此组件挂在根节点上,然后每一个LOD挂同样多的Renderer(通常是子对象). At ...
- Unity 3D UGUI Toggle用法教程
UGUI Toggle用法教程 本文提供全流程,中文翻译. Chinar 坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) Chinar -- 心分 ...
- Unity Lod
LOD是Level Of Detais 的简称,多细节层次,根据摄像机与物体距离,unity会自动切换模型.一般离摄像机近的时候显示高模,离摄像机远的时候显示低模,借此来提升性能. 如果你在Blend ...
- [Leetcode] Binary tree level order traversal二叉树层次遍历
Given a binary tree, return the level order traversal of its nodes' values. (ie, from left to right, ...
- hdu 1622 Trees on the level(二叉树的层次遍历)
题目链接:https://vjudge.net/contest/209862#problem/B 题目大意: Trees on the level Time Limit: 2000/1000 MS ( ...
- 32-2题:LeetCode102. Binary Tree Level Order Traversal二叉树层次遍历/分行从上到下打印二叉树
题目 给定一个二叉树,返回其按层次遍历的节点值. (即逐层地,从左到右访问所有节点). 例如: 给定二叉树: [3,9,20,null,null,15,7], 3 / \ 9 20 / \ 15 7 ...
- Unity Procedural Level Generator 基础总结与功能优化
Procedural Level Generator是在Unity应用商店中发布的一款免费的轻量级关卡生成器: 可以直接搜索关键字在应用商店中查找并下载. 和我之前生成关卡的想法不同,这个插件生成地图 ...
随机推荐
- Table展开行
在element-ui的官网例子中,有展开行的功能,但是只能点击某行的箭头位置,才可以展开当行的内容.这不能满足业务需求,我们老大需要点击该行的任何一个位置都能展开这行内容显示.上网找了好多例子,都能 ...
- memory prefix pre,pro,penta,pseudo out _p 1
1● pre 前的,预先 2● pro 在前,很多,赞同 3● penta 5,五 4● pseaudo 伪,假 pseudo
- centos 安装 composer
1 安装 composer curl -sS https://getcomposer.org/installer | php 2 添加到环境变量 mv co ...
- 比较不错的几款开源的WPF Charts报表控件
UWP Community Toolkit 1. ModernUIChart Code: http://modernuicharts.codeplex.com/ Available Charts Co ...
- xshell提示必须安装最新的更新
今天大家的xshell基本都出了这个问题 调整时间,调整到比较前的时间,打开xshell即可. 然后工具->选项 把更新去了
- nginx负载均衡实验
Nginx负载均衡概述 Web服务器,直接面向用户,往往要承载大量并发请求,单台服务器难以负荷,我使用多台WEB服务器组成集群,前端使用Nginx负载均衡,将请求分散的打到我们的后端服务器集群中,实现 ...
- swiftlint 你所要知道的所有!!
swiftin Should the opening brace of a function or control flow statement be on a new line or not ?:) ...
- ftp上传操作
采用 :FtpWebRequest 进行操作ftp. 1.代码上传文件必须是被动模式 UsePassive=false 2.最好采用二进制传输 UseBinary=true 注意缓冲区大小,还有注意 ...
- Java实验2
1.给定一组字符,编程输出里面数值最大者. package experiment; import java.util.Arrays; public class ShenYue { public sta ...
- system的消息队列实例
1\创建或打开消息队列函数原型:int msgget(key_t key, int msgflg)参数第一个参数为ftok方法创建的一个kety_t或者为一个整数值第二个参数为逻辑控制,IPC_CRE ...