【UE 粒子练习】08——LOD概述

2023-09-21 19:53:34

目录

概念 

应用举例

一、检查当前粒子系统中是否设置了LOD  

二、添加LOD

三、LOD设置(单个粒子发射器)

四、LOD设置(多个粒子发射器)


概念 

        在 Unreal Engine 中,LOD(Level of Detail,细节层次)是一种优化技术,用于在不同距离或屏幕空间尺寸下使用不同的模型或网格,以提高性能并减少资源消耗。LOD 技术的主要目标是在远距离或较小的屏幕上使用较低分辨率的模型,而在近距离或较大的屏幕上使用高分辨率的模型。在粒子系统中也具有 LOD,LOD 粒子系统通过在不同距离和视图条件下使用不同的粒子级别,降低了性能开销。

应用举例

一、检查当前粒子系统中是否设置了LOD  

首先随便打开一个粒子效果

 我们在如下输入框中输入大于0的数字发现它会自动变回0则表示当前粒子系统没有设置LOD,只有默认的一个LOD

或者通过另一种方法,我们首先点击粒子系统中的空白区域

然后在细节面板中发现“LOD设置”或“LOD距离”选项中只有一组元素则表示没有设置新的LOD,只有默认的LOD

二、添加LOD

点击如下按钮添加LOD,左边的是在当前项前添加LOD,右边的是在当前项后添加LOD

当我们添加了一个LOD后,可以在细节面板中看见“LOD设置”和“LOD距离”中此时拥有2数组元素

此时我们就可以在如下输入框中输入0或1

三、LOD设置(单个粒子发射器)

“LOD距离检查时间”默认为0.25,表示4s检查一次

 

 如果我们把“LOD距离”中的第二个元素设置为300,表示当我们距离粒子超过300时就会使用LOD1

下面开始分别编辑处于LOD0中的粒子系统,以及处于LOD1中的粒子系统,通过如下控件来切换:

 当切换到LOD1时可以发现我们无法编辑发射器中的模块(可以看到每个模块都糊上了斑点)

点击模块可以看到细节面板中都是灰色的

此时如果我们想在LOD1中改变某些模块,可以鼠标右键点击需要修改的模块(这里我点击的是生成模块)然后选择“从更高级复制”

点击后就可以在LOD1中编辑生成模块了

这里我将生成比率改为1(1s生成1个粒子,如果设置的是0.5的话就表示2s生成一个粒子)

此时运行游戏,可以看到当我们距离粒子很近的时候烟雾粒子数量很多,当远离一段距离后粒子就会减少:

四、LOD设置(多个粒子发射器)

 首先我们复制一份发射器

为了区分这两个发射器产生的粒子,我将第二个发射器的初始位置做了一点修改

 然后修改一下颜色,此时我们就可以知道左边的烟雾是第二个发射器产生的粒子

此时他们都处于LOD0层级

若我们希望在LOD1层级不显示第二个发射器的粒子,我们可以在LOD1点击如下按钮来隐藏粒子

由于LOD切换的距离太小,这里将LOD1触发的条件改为超过粒子1000个单位时才会从LOD0转为LOD1

效果如下,可以看到当我们远离粒子系统超过一定距离后,粒子系统的第二个发射器产生的粒子消失,第一个发射器产生的粒子数量骤减

更多推荐

SSM - Springboot - MyBatis-Plus 全栈体系(十二)

第二章SpringFramework六、Spring声明式事务1.声明式事务概念1.编程式事务编程式事务是指手动编写程序来管理事务,即通过编写代码的方式直接控制事务的提交和回滚。在Java中,通常使用事务管理器(如Spring中的PlatformTransactionManager)来实现编程式事务。编程式事务的主要优

IM6ULL学习第18章Linux 系统对中断的处理

栈什么是栈栈是一段内存空间。ARM处理器程序的运行过程ARM芯片属于精简指令集(RISC:ReducedInstructionSetComputing)特点:1、对内存只有读和写两种指令,2、所有的数据运算都是在CPU内部完成的。举例实现a=a+b;CPU先在内存中读取a,b的值放入到CPU的寄存器(这里的寄存器不是指

openGauss学习笔记-76 openGauss 数据库管理-内存优化表MOT管理-内存表特性-MOT简介

文章目录openGauss学习笔记-76openGauss数据库管理-内存优化表MOT管理-内存表特性-MOT简介76MOT简介openGauss学习笔记-76openGauss数据库管理-内存优化表MOT管理-内存表特性-MOT简介本节介绍了openGauss内存优化表(Memory-OptimizedTable,M

error:03000086:digital envelope routines::initialization error问题解决

目录问题描述:error:03000086:digitalenveloperoutines::initializationerror问题原因:nodejsV17版本发布了OpenSSL3.0对算法和秘钥大小增加了更为严格的限制,nodeJsv17之前版本没影响,但V17和之后版本会出现这个错误。解决方案:方法一:Vsc

Golang开发--defer关键字

defer是Go语言中的一个关键字,用于延迟执行函数或方法的调用。defer语句会将其后面的函数或方法调用推迟到当前函数返回之前执行,无论函数是正常返回还是发生异常。funcmain(){deferfmt.Println("defer1")deferfmt.Println("defer2")fmt.Println("H

Hadoop-Hbase

1.Hbase安装1.1安装zookeeper、hbase解压至/opt/soft,并分别改名配置环境变量并source生效#ZKexportZOOKEEPER_HOME=/opt/soft/zk345exportPATH=$ZOOKEEPER_HOME/bin:$PATH#HBASE_HOMEexportHBASE_

【Java毕设项目】基于SpringBoot+Vue科研管理系统的设计与实现

博主主页:一季春秋博主简介:专注Java技术领域和毕业设计项目实战、Java、微信小程序、安卓等技术开发,远程调试部署、代码讲解、文档指导、ppt制作等技术指导。主要内容:毕业设计(Java项目、小程序等)、简历模板、学习资料、面试题库、技术咨询。🍅文末获取联系🍅精彩专栏推荐订阅👇🏻👇🏻不然下次找不到哟Sp

【业务功能118】微服务-springcloud-springboot-Kubernetes集群-k8s集群-KubeSphere-OpenELB部署及应用

OpenELB部署及应用一、OpenELB介绍网址:openelb.ioOpenELB是一个开源的云原生负载均衡器实现,可以在基于裸金属服务器、边缘以及虚拟化的Kubernetes环境中使用LoadBalancer类型的Service对外暴露服务。OpenELB项目最初由KubeSphere社区发起,目前已作为CNCF

html网页制作期末大作业-网上花店商城html+css+javascript

一、简介html网页制作期末大作业-网上花店商城html+css+javascript8个页面适用学生作业课程设计花店、期末作业花店、毕业设计花店​二、部分网页截图三、部分网页源码1.首页代码<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><title>花

前后端分离毕设项目之springboot同城上门喂遛宠物系统(内含文档+源码+教程)

博主介绍:✌全网粉丝10W+,前互联网大厂软件研发、集结硕博英豪成立工作室。专注于计算机相关专业毕业设计项目实战6年之久,选择我们就是选择放心、选择安心毕业✌🍅由于篇幅限制,想要获取完整文章或者源码,或者代做,拉到文章底部即可看到个人VX。🍅2023年-2024年最新计算机毕业设计本科选题大全汇总感兴趣的可以先收藏

如何做好测试?(一)不就是功能测试和性能测试?

测试是软件开发过程中的一项重要活动,旨在评估系统或应用程序的质量、功能、性能、安全性等方面。测试通过执行预定义的测试用例、场景或操作,以发现潜在的错误、缺陷、异常行为或性能问题,并提供有关系统是否满足预期要求的信息。测试的目的是验证软件是否满足规格说明书、需求文档或用户期望的功能和性能要求。它有助于提高软件的可靠性、稳

热文推荐