Unity学习-优化_LOD技术

最近项目的需求被策划那边卡流程了,在大改,没什么事情做

于是开始自己找点不会的东西来学一下了

这里会记录我得学习经历,采用费曼学习法来提示自己

LOD

Unity会根据摄像机的远近距离调整模型的显示效果

其中效果是需要我们去提供的

在给物体添加LOD Group组件之后  会出现有4块颜色不同的区域,这里就是告诉我们的层级权重关系

在scene视图下我们可以拖动上面的摄像机小图标可以预览实际效果

其中分为4个层级

1:LOD0 100% 权重显示

2:LOD1 60% 权重显示

3:LOD2 30%权重显示

4:这是看不到的位置,做剔除处理

这上面的30% 60% 100%不是一个具体参数,只是在告诉我们这个物体的距离和显示关系。越小越看不到

点击其中一个LOD

可以增加renderers,这里的检索范围是Hierachy里面的物体,也就是被创建出来的物体,而且只会检索带MeshRender组件的物体

我们在每一个阶段放一个CUBE,位置相同,颜色不同以作区分,因为在实际的用处中,这里会替换成实际的模型 ,3个显示等级

对应【1种物体的3种规格模型】,没一种规格的模型顶点,贴图都会做不同的精度设置 达到我们优化的目的

这里我们用3种颜色代替3种精度达到我们想要的效果

拖动摄像机,即可预览实际效果

首先设置3种显示效果

1.创建3个CUBE

2.新建3个材质球,达到我们自定义CUBE颜色的目的

3.将材质球赋给各个CUBE

如图

cube1:

cube2:

cube3:

当实际的摄像机和物体的距离在LOD1的阶段时显示为红色

在距离达到LOD1位置的生活,显示为黑色

LOD2的生活 显示为绿色

到这里,我们就可以从逻辑上面达到可以根据摄像机的距离,来控制物体的显示效果了

接下来就可以和美术沟通,如果对应实际需求了。

这样做有一个弊端,每个游戏物体都需要对应3套精度的模型,在效率上会增加,但是优化的效果不错。

而且在场景比较简单的情况下,实用LOD本身会占用一部分的开销,如果一个简单的场景,本身的开销并不大

实用LOD的开销甚至比优化掉的开销还打,就会得不偿失了。

至于具体决定使不使用就看小伙伴们的项目组啦~

原文地址:https://www.cnblogs.com/leixuan111/p/10726022.html

时间: 2024-10-10 04:44:01

Unity学习-优化_LOD技术的相关文章

Unity学习-优化_卡顿原因定位以及优化方案

除了Unity的一些组件优化技巧之外,更多的细节处于代码层面上 最近学习优化,看到一篇文章,写的很详细,从底层原理到我们 的实际处理,都有一些非常好的建议,可以推荐给小伙伴们看看 https://www.jianshu.com/p/289de89a6609 ===========如何定位程序的哪一个环节产生了过大的开销============ 使用Uinty的Profiler工具,可以比较精准快速的定位程序的哪一个位置产生了大开销 首先在build setting里面勾选Autoconnect

Unity学习-优化_图集归类以及Unity和texturepackter的动态批处理

(前面是废话,可以略过,分割线下面是内容) 前两天研究完了LOD 和 MipMap  感觉很简单,实现起来不用多久. 但是发现如果将某些功能运用在商业代码上,为了提高效率,要做很多前期工作. 这几天一直在学习游戏开发优化方面的技巧,感觉都很片面,实际的LOD 和 MipMap这些功能只有在一些需要大量摄像机移动的场景用的比较多 固定视角或者是锁死深度的游戏  其实这方面用的比较少,而目前市场上大部分都是锁死视角或者锁死深度的游戏.. 于是这两天重点去研究了下关于图集的优化. 优化图集的目的是为了

Unity性能优化——LOD技术

LOD,中文名多层次细节,是游戏中最常用的技术,它按照模型的位置和重要程度决定物体渲染的资源分配,降低非重要物体的面数和细节度,从而获得高效率的渲染运算.今天我们来实现使用它来做一个简单的优化例子. 我们没有模型(程序员的悲哀)就用Particle粒子特效来做试验吧.在场景中建立一个空物体,取名LODEffects,在空物体下面建立一个Particle并复制两份都做为子物体.这们用这三个Particle可以当作不同细节的模型,分别调整它们的ParticleSystem组件下Emission的Ra

Unity内存优化技术测试案例

笔者介绍:姜雪伟,IT公司技术合伙人,IT高级讲师,CSDN社区专家,特邀编辑,畅销书作者,已出版书籍:<手把手教你架构3D游戏引擎>电子工业出版社和<Unity3D实战核心技术详解>电子工业出版社等. CSDN视频网址:http://edu.csdn.net/lecturer/144 Unity引擎优化技术,无非涉及到三点:CPU优化,GPU优化,内存优化. 先谈谈内存优化:大概可以分成三大部分: 1. Unity3D内部的内存 2. Mono的托管内存 3. 引入的DLL或者第

Unity性能优化(4)-官方教程Optimizing graphics rendering in Unity games翻译

本文是Unity官方教程,性能优化系列的第四篇<Optimizing graphics rendering in Unity games>的翻译. 相关文章: Unity性能优化(1)-官方教程The Profiler window翻译 Unity性能优化(2)-官方教程Diagnosing performance problems using the Profiler window翻译 Unity性能优化(3)-官方教程Optimizing garbage collection in Uni

大型网站优化-memcache技术

大型网站优化-memcache技术 memory+cache 内存缓存 memcache简介 memcache是一套分布式的高速缓存系统,由LiveJournal的Brad Fitzpatrick开发,目前被许多网站使用以提升网站的访问速度,尤其对于一些大型的.需要频繁访问数据库的网站访问速度提升效果十分显著 .这是一套开放源代码软件,以BSD license授权发布.[摘取自百度百科] 官网:http://memcached.org/ 分布式:多台Memcache服务器来管理数据的架构. 缓存

Unity性能优化(2)-官方文档简译

本文是Unity官方教程,性能优化系列的第二篇<Diagnosing performance problems using the Profiler window>的简单翻译. 简介 如果游戏运行缓慢,卡顿,我们知道游戏存在性能问题.在我们尝试解决问题前,需要先知道引起问题的原因.不同问题需要不同的解决方案.如果我们靠猜测或者其他项目的经验去解决问题,那么我们可能会浪费很多时间,甚至使得问题更严重. 这时我们需要性能分析,性能分析程序测量游戏运行时的各个方面性能.通过性能分析工具,我们能够透过

Unity内存优化

对项目优化有很多,如:mesh合并,减少DrawCall和模型骨骼以及物理计算,合并材质球,优化代码等等. 优化: 1. 更新不透明贴图的压缩格式为ETC 4bit,因为android市场的手机中的GPU有多种,每家的GPU支持不同的压缩格式,但他们都兼容ETC格式. 2.对于透明贴图,我们只能选择RGBA 16bit 或者RGBA 32bit. 3.减少FPS 在ProjectSetting-> Quality中的VSync Count 参数会影响你的FPS,EveryVBlank相当于FPS

学习大数据技术,需要具备哪些【数学知识】?你了解了吗?

谈起大数据技术,很多人都觉得是高大上的一门技术,学起来应该是困难重重!其实对于大数据技术而言,难的不是大数据技术本身,而是需要太多的基础知识,比如说:数学知识.英语能力.编程基础等等. 数学,我们从小就开始学习,一直在跟各种数据打交道,各种公式等等,是大数据学习的必备技术之一. 英语,对于大数据技术文章,比较先进的还是外文比较多,需要一定的英语基础,当然了翻译软件是个好东西,但必要的英语能力也是必须的. 编程,这个就不用我多说了吧,计算机语言,你学不会,该如何向电脑发布指令! 好了,回归我们今天