位置: 编程技术 - 正文

三分钟了解LOD在游戏里面的运用 性能优化(lohd)

编辑:rootadmin

推荐整理分享三分钟了解LOD在游戏里面的运用 性能优化(lohd),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:lodf,lodz,lodha,lodl,lod,loq,lodz,loded,lodz,内容如对您有帮助,希望把文章链接给更多的朋友!

of Detail的简称,简单来说即为多细节层次,不少朋友经常听到这个名称,但是并不知道如何把这个技术运用在游戏里面,如果用百度查到的说法是:LOD技术指根据物体模型的节点在显示环境中所处的位置和重要度,决定物体渲染的资源分配,降低非重要物体的面数和细节度,从而获得高效率的渲染运算。以上的解释可能很多人看了是一头雾水,还是不了解LOD的实际运用,以下让我们通过一个简单的案例来说明LOD的巧妙之处。我们使用了3dsmax来说明LOD模型的制作,下载附件后打开场景文件,里面是三个面数不同的油桶造型,由左到右分别代表了高模,一般与低模的模型结构。 选择左边的油桶模型,如图所示,这个模型的数据为三角面,顶点数。 选择右边的模型,这个低模的数据很符合我们的要求,一般来说,用三个模型来制作LOD的效果就很足够了,例如建筑场景里面,最远端的房子只能看到类&#;盒子的效果,而镜头前面的楼房则是可以清楚的看到里面的许多细节,但是镜头推进到远处的楼房时,原来的盒子立即换成另一个可以战胜细节的模型,这个就是LOD的运作原理。 将模型保存为FBX后,导入Unity进行测试,命名的方式建议是在物件的后面加上LOD的层级代号,这样比较方便我们直接用名称来选择高模与低模。 在制作LOD之前,我们需要注意一个事情,那就是将不同面数的模型放在同一个位置,否则会发生模型位置错乱的情况,如图所示,使用Reset方式将中间的模型与低模移到与高模相同的位置。 接着建立一个空的Game Object,将其命名为prop_Barrell,我们准备用在这个空组件上面添加LOD的属性。 选择Component > Rendering > LODGroup,然后就可以对LOD开始进行设置的工作。 在LODGroup的设置里面列出了LOD的层级,底下的Add用来添加LOD所对应的模型,操作方法是先选择LOD : 0,按下Add,选择场景里面的prop_barell_LOD0模型。 系统弹出一个提示,询问是否将这个选择的模型设置子物体,选择Yes,Reparent即可。 如图所示,在选择Reparent后,LOD0的模型自动的设置为prop_Barell的子物件。 设置完成LOD:0的层级后,选择LOD:1,按下Add,选择场景内的prop_barell_LOD1,接着选择LOD:2,按下Add,选择prop_barell_LOD2后即可完成整个LOD的设置。 现在滑动LODGroup上方的相机图标来测试LOD的效果,模型在近处时使用的是LOD0所设置的高模,移到LOD1时则是显示为一般进度的模型,而在LOD3的层级时,模型就换为低模,移到最后的Culled插件,模型已经完全的消失了。 此外,我们还可以任意的修改每一个层级的作用范围,只要拖动LOD分隔的线段即可,然后再根据相机的预览来调整出最合适的LOD效果。 Unity的资源商店也提供了功能更为强大的LOD设置插件,以下为试用版的位置,如果是用于商业项目,请支持正版。Smart LOD 1.0 - 大场景的优化神器 Level of Detail 就研究了一下 以前用的是Unity3.5 free版本,没有这个功能,真实泪奔。。。。。。。

As your scenes get larger, performance becomes a bigger consideration. One of the ways to manage this is to have meshes with different levels of detail depending on how far the camera is from the object. This is called Level of Detail (abbreviated asLOD)

由于场景变大,就要更加考虑性能的问题。有一种管理方法,取决于摄像机离对象的远近,网&#;有不同的细节级别,这就是所谓的细节级别( Level of Detail)(LOD的缩写)

Here's one of the ways to set up an object with different LODs.

下面是建立具有不同LODs对象的方法。

Create an empty Game Object in the scene 在场景创建一个空的游戏物体。Create 2 versions of the mesh, a high-res mesh (for LOD:0, when camera is the closest), and a low-res mesh (forLOD:1, when camera is further away) 创建2个版本的网&#;,高清晰度网&#;(L0D:0,当摄像机最接近时),和一个低分辨率网&#;(L0D:1,当摄像机较远)Add a LODGroup component to this object (Component->Rendering->LOD Group)给这个对象添加LODGroup 组件(Component->Rendering->LOD Group)Drag in the object with the high-res mesh onto the first Renderers box forLOD:0. Say yes to the "Reparent game objects?" dialog 把高分辨率网&#;的对象拖到的第一个渲染器框 L0D:0。对话框"Reparent game objects?" 按下yes按钮Drag in the object with the low-res mesh onto the first Renderers box forLOD:1. Say yes to the "Reparent game objects?" dialog 把低分辨率网&#;的对象拖到的第二个渲染器框 L0D:1。对话框"Reparent game objects?" 按下yes按钮Right Click on LOD:2 and remove it. 在LOD:2上右键单击并删除它。

At this point the empty object should contain both versions of the mesh, and "know" which mesh to show depending on how far away the camera is.

此时,空对象应包含两个版本的网&#;,"知道"网&#;取决于相机远离程度显示不同的版本。

You can preview the effect of this, by dragging the camera icon left and right in the window for theLODGroup component.

您可以预览这个效果,通过拖拽摄像机图标到LODGroup组件窗口(的LOD:0,LOD:1的矩形框)。

camera at LOD 0(在LOD 0时的摄像机)

camera at LOD 1(在LOD 1时的摄像机)

In the Scene View, you should be able to see

三分钟了解LOD在游戏里面的运用 性能优化(lohd)

在场景视图,你应该能够看到:

Percentage of the view this object occupies 这个对象占用视图的百分比What LOD is currently being displayed 当前显示的是哪个LODThe number of triangles 三角形的数量LOD-based naming conventions in the asset import pipeline在资产的导入管线基于LOD的命名约定

In order to simplify setup of LODs, Unity has a naming convention for models that are being imported.

为了简化LOD设置,Unity在模型导入时有一个命名约定。

Simply create your meshes in your modelling tool with names ending with _LOD0, _LOD1, _LOD2, etc., and the LOD group with appropriate settings will be created for you.

简单地创建你网&#;,名称后缀为_LOD0,_LOD1,_LOD2等,会为你创建LOD组,并作出相应的设置。

Note that the convention assumes that the LOD 0 is the highest resolution model.

请注意,该约定假定最高分辨率的网&#;的LOD后面的数字是最小的。

Setting up LODs for different platforms对于不同的平台设置LOD

You can tweak your LOD settings for each platform in Quality Settings, in particular the properties of LOD bias and Maximum LOD Level.

在质量设置你可以为每个平台条件LOD设置,特别是LOD偏移和最大LOD层次。

Utilities 实用工具

Here are some options that help you work with LODs

下面是一些选项,可有助于你更好的使用LOD工作。

Recalculate Bounds重新计算边界If there is new geometry added to the LODGroup, that is not reflected in the bounding volume, press this to update the bounds. One example where this is needed is when one of the geometries is part of aprefab, and new geometry is added to that prefab. Geometry added directly to the LODGroup will automatically updates the bounds如果有新的几何体添加到LODGroup,未被映射到边界体内,按这个按钮来更新边界。一个例子,当几何体之一是prefab的一部分,以及新的几何体被添加到这个prefab。几何体直接添加到LODGroup将自动更新边界。Update Lightmaps更新光照贴图Updates the Scale in Lightmap property in the lightmaps based on the LOD level boundaries.更新光照贴图基于LOD层次边界光照贴图属性比例。Upload to Importer上传给导入器Uploads the LOD level boundaries to the importer上传LOD层次边界给导入器

Unity Shader流光贴图效果 ShaderCustom/FlowLight{//动态流光效果Properties{_MainTex(Base(RGB),2D)=white{}_FlowTex(LightTexture(A),2D)=black{}//光照贴图_uvSpeed(UVSpeed,float)=2//流光速度}SubShader{Tags{RenderType=

Unity3D Shader入门指南 动机自己使用Unity3D也有一段时间了,但是很多时候是流于表面,更多地是把这个引擎简单地用作脚本控制,而对更深入一些的层次几乎没有了解。虽然

Unity基于ZXing.Net实现二维码的制作 在Unity中,我们也可以实现二维码的制作,这需要借助Zxing的帮助,首先下载ZXing.Net。我这边下载的是ZXing.Net0..0.0大家可以点击这个链接直接下载:http:

标签: lohd

本文链接地址:https://www.jiuchutong.com/biancheng/384569.html 转载请保留说明!

上一篇:游戏简单控制逻辑 一个轻量级的状态机(控制游戏类型)

下一篇:Unity Shader流光贴图效果(unity shader 外发光)

  • 企业收取的租金应当计入
  • 公司换股东需要本人去吗
  • 税务免抵调库是什么意思
  • 基本户可以直接转账给个人吗
  • 库存暂估入账
  • 项目奖金个人所得税怎么算
  • 发票未到暂估账务处理
  • 不动产什么时候可以抵扣进项税额
  • 职工福利费专票账务处理
  • 小规模纳税人变成一般纳税人之前的发票变更
  • 个体营业执照从哪里查询
  • 制作原始人类用的工具
  • 预付绩效工资是什么意思
  • 应付未付的职工工资属于什么会计科目
  • 进项税和销项税怎么区分
  • 计提递延所得税的会计分录
  • 研发费用报表列报
  • 发生可抵扣暂时性差异是调增还是调减
  • 所得税 季报
  • 工程施工开发票如何进行会计核算?
  • 电脑有些进程关不掉
  • 维修进水的笔记怎么写
  • 手机型号不在鸿蒙系统里
  • 为什么盈余公积补亏不会影响留存收益
  • 购买产品优惠计入什么科目
  • 银行年费通过什么渠道交
  • 商场充值卡发票在哪开
  • 怎么激活对话框取消
  • PHP:mb_stripos()的用法_mbstring函数
  • 会计分录的书写规范
  • phpsutdy
  • 基金会债券收入吗
  • 苏格兰高地什么意思
  • python进行傅立叶变换
  • reactjs路由跳转
  • 预收账款增值税纳税义务
  • 阿尔萨斯葡萄园
  • php实现分页查询
  • PHP用mysql_insert_id()函数获得刚插入数据或当前发布文章的ID
  • 长期股权投资会计准则
  • 增值税在纳税申报表中怎么得出
  • 奖金属于职工福利薪酬吗
  • 小规模纳税人开具增值税专用发票
  • 残疾人保障金的工资总额怎么填
  • 纳税调整调减有哪些
  • 认缴资本怎么填
  • 所得税会计核算要点及程序有哪些
  • 待处理财产损益是什么意思
  • 广告类的公司
  • 进口货物发生纳税义务时间为
  • 医院工会费是什么
  • 销售暂估业务处理
  • 定金帐务处理
  • 暂估入库估多了怎么办
  • 销售会员卡怎么开票
  • mac上mysql安装
  • 政府禁用windows8
  • ubuntu 125%
  • 苹果电脑怎么打开u盘
  • windows8怎么关闭广告弹窗
  • rundll32exe应用程序错误
  • -f linux命令
  • win7旗舰版64位系统无法进入安全模式怎么办?
  • win8系统如何关闭防火墙
  • 系统升级后c盘空间小了
  • win10交接wifi
  • Android setVisibility的总结~
  • Extjs Ext.MessageBox.confirm 确认对话框详解
  • javascript中的函数也称为什么
  • javascript sort排序
  • 深入探究替换词
  • 有关中秋节的古诗
  • nodejs音乐播放器
  • 数据类型 python
  • 网页全屏是哪个键
  • js工具类库
  • 销售黄金饰品
  • 绵阳市十大纳税企业排名
  • 大连市国家税务局官网登录
  • 江苏电子税务局网站首页公共服务
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设