Niagara—— 概述

news2024/11/26 17:43:07

目录

一,核心组件

Systems

Emitters

Modules 

Parameters

二,创建系统或发射器向导

System向导

Emetter向导

三,Niagara VFX工作流程

创建系统

创建或添加发射器

创建或添加模块


        Niagara是最新一代VFX系统,无需程序员的帮助,即可创建丰富多彩的效果;高级用户还可自定义模块modules;Niagara系统是在UE场景中能被调用的最小单位;一个Niagara系统可以有多个发射器节点组成,发射器节点有先后顺序,继承,需求关系;Niagara是点(属性)模拟器,模拟每粒子位置、速度、颜色等属性,然后根据这些属性渲染最终效果;

一,核心组件

  • Systems
  • Emitters
  • Modules
  • Parameters

Systems

  • systems是构建效果容器,创建不同类型效果元素以实现整体效果;可修改一些系统系统级别的行为,以应用于所有效果元素;

  • 系统编辑器System Editor,时间线Timeline面板显示系统中包含的所有发射器,且用于管理这些发射器;

Emitters

        发射器用于在Niagara系统中生成粒子,控制粒子怎样生成、粒子生命周期内怎样演变、外观及行为;发射器是由各种任务模块组成的;

  • Emitter Spawn,定义发射器在CPU创建时的行为;
  • Emitter Update,定义CPU上每帧发生的发射器级别的模块,可使粒子每帧持有生成;
  • Particle Spawn,粒子生成时调用一次,定义粒子初始细节,如出生时的位置、颜色、大小等;
  • Particle Update,粒子每帧均调用,在生命周期内逐帧更改的特征,如颜色大小变化、受力情况(如gravity、curl noise、或point attraction);
  • Event Handler,在一个或多个发射器内创建生成事件,在其他发射器创建监听事件以触发生成事件;
  • Render,定义粒子显示,可设置一个或多个渲染器;

Modules 

        Modules是Niagara效果的基础block,可为每个group添加module;Modules是按顺序从上往下处理的;可将Module作为执行某些数学运算的容器;Module是使用高级着色语言HLSL,可以可视化节点构建;双击module可进入模块内部,以查看内部运算;甚至可以复制和创建自己的模块;

  

Parameters

        Parameter是一种数据的抽象化,参数类型定义参数所表示的数据;参数类型可分为四种:

  • Primitive,定义各种精度和通道宽度的数值数据;
  • Enum,定义一组固定的值,使用时指定其中一个值;
  • Struct,定义一组合并的Primitive和Enum类型;
  • Data Interfaces,定义能够从外部数据源提供数据的函数;可能来自UE其他部件的数据,或来自外部的数据;

        通过Set new or existing parameter directly可在发射器添加一个自定义参数模块Set Parameter,在点击(+),即可设置一个新参数;

二,创建系统或发射器向导

        创建Niagara发射器或系统时,出现对话框,会提供各种模板以供选择哪种类型的发射器或系统;

System向导

        在Content Browser右击,选择FX > Niagara System,出现的对话框会提供以下选项,以创建新系统:

  • New system from selected emitter(s),从被选择的发射器中创建新系统;可选择Templates(无继承)、Parent Emitters(继承)、及Behavior Examples(无继承)中的一种或多种,或它们的混合;
    • Templates,作为构建不同类型发射器的起点,无继承的发射器模板被复制到系统;
    • Parent Emitters,继承父发射器,接受来自父发射器的变化;
    • Behavior Examples,功能上如何工作的指南,每个示例显示用于实现特定功能的简化设置,无继承的发射器模板被复制到系统;
  • New system from a template or behavior example,从系统模板或行为案例中创建新系统;可选择Templates、或Behavior Examples中的一种;
  • Copy existing system,从工程项目内复制一个现有系统,会保持发射器原有的继承关系;
  • Create empty system,创建一无发射器的空系统;

Emetter向导

        在Content Browser右击,选择FX > Niagara Emitter,出现的对话框会提供以下选项,以创建新发射器:

  • New emitter,从发射器模板或行为案例中创建新发射器;可选择Templates(无继承)、Parent Emitters(继承)、及Behavior Examples(无继承)中的一种;
    • Templates,作为构建不同类型发射器的起点,无继承的发射器模板被复制到系统;
    • Parent Emitters,继承父发射器,接受来自父发射器的变化;
    • Behavior Examples,功能上如何工作的指南,每个示例显示用于实现特定功能的简化设置,无继承的发射器模板被复制到系统;
  • Copy existing emitter,从工程项目内复制一个现有发射器;
  • Create an empty emitter,创建一无模块或渲染器的空发射器;

三,Niagara VFX工作流程

  • 创建系统
  • 创建或添加发射器
  • 创建或添加模块

创建系统

        首先创建一个Niagara系统,以便在其添加一个或多个发射器,随后在设置每个发射器的属性;

创建或添加发射器

        在Niagara编辑器中,通过改变模块的属性来调整发射器,或针对效果添加新的模块;

此外,还可复制添加发射器到系统中;

创建或添加模块

        可点击发射器group后的(+) ,来添加现有的模板;Niagara中预装了大量模块,大部分情况下,无需创建自定义模块即可达到效果;

自定义模块的数据流方式如下:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/573641.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Junit测试框架详解

目录 Junit框架 导入Junit到项目 Junit注解 Test Disabled BeforeAll / AfterAll BeforeEach / AfterEach 参数化 单参数 多参数 CSV获取参数 方法获取参数 断言 assertEquals / assertNotEquals assertNull / assertNotNull 用例执行顺序 测试套件Suite 指定…

使用IIS创建WEB服务

文章目录 前言一、Web服务是什么?1.Web服务概述2.如何获取网页资源3.常见Web服务端软件4.什么是IIS 二、安装IIS1.安装Web服务器角色2.准备网页文件3.配置Web站点4.客户端浏览例:配置IIS站点 三、虚拟主机概述1.虚拟Web主机2.虚拟主机的几种类型3.基于端…

软考信管高级——进度管理

进度管理内容 缩短活动工期方法 赶工,投入更多资源或增加工作时间,以缩短关键活动的工期快速跟进,并行施工,以缩短关键路径长度使用高素质的资源或经验更丰富的人员减小活动范围或降低活动要求改进方法或技术,以提高…

活动回顾|解锁 AIGC 密码,探寻企业发展新商机

5月24日,Google Cloud 与 Cloud Ace 联合主办的线下活动顺利落下帷幕。 本次活动,有近 40 位企业精英到场支持。三位 Google Cloud 演讲嘉宾就本次活动主题,为大家带来了比较深度的演讲内容,干货满满。 (*以下的嘉宾演…

期末复习总结【MySQL】聚合查询 + 多表联合查询(重点)

文章目录 前言一、聚合查询1, 聚合函数2, 聚合函数使用示例3, GROUP BY 子句4, HAVING 子句 二、联合查询(重点)1, 笛卡尔积2, 内连接2.1, 示例12.2, 示例22.3, 示例3 3, 外连接4, 自连接 总结 前言 各位读者好, 我是小陈, 这是我的个人主页, 希望我的专栏能够帮助到你: &#…

存量时代下,互联网玩家如何“自我造血”?

毫无疑问,互联网已经进入存量时代。 在过去高增长的增量时代,许多互联网企业追求规模效应,痴迷于“先规模后盈利”的打法,力图用规模构建护城河。然而,随着行业整体增长速度放缓,规模扩张变得更为艰难&…

面了个字节跳动拿 38K 出来的测试,让我见识到了跳槽的天花板

最近内卷严重,各种跳槽裁员,相信很多小伙伴也在准备金九银十的面试计划。 作为一个入职5年的老人家,目前工资比较乐观,但是我还是会选择跳槽,因为感觉在一个舒适圈待久了,人过得太过安逸,晋升涨…

【JavaSE】Java基础语法(十六):抽象类

文章目录 1. 抽象类的概述2. 抽象类的特点3. 抽象类的实用价值4. 抽象类的案例 1. 抽象类的概述 当我们在做子类共性功能抽取时,有些方法在父类中并没有具体的体现,这个时候就需要抽象类了! 在Java中,一个没有方法体的方法应该定义…

基于TCP、UDP网络编程

文章目录 网络协议分层套接字UDP和TCP差异UDP的APIDatagramSocketDatagramPacket 基于UDP Socket 实现一个回显程序TCP的APISocket的API基于TCP实现回显程序 网络协议分层 应用层: 应用程序拿到数据怎么用传输层: 负责关注传输过程中起点和终点网络层 &…

windows环境下nginx+ftp服务器搭建简易文件服务器

这里写目录标题 1,前言2,FTP服务器搭建3,nginx安装 1,前言 几种文件服务器的对比 1,直接使用ftp服务器,访问图片路径为 ftp://账户:密码192.168.0.106/31275-105.jpg不采用这种方式,不安全容易…

【高效科研工具(二):使用NewbingChat(方法+问题)| Newbing帮你阅读paper、解析paper】

高效科研工具(二):使用NewbingChat(方法问题)| Newbing帮你阅读paper、解析paper 目录 0、前言 1、NewbingChat 介绍 2、NewbingChat 注册方法 3、NewbingChat 遇到的问题 (🇺🇸位置切换问题、…

STM32H7B0VBT6使用Free RTOS配置SD卡+Fatfs文件管理系统

作者:Jack_G 时间:2023.05.26 版本:V1.0 上次修改时间: 环境: \quad \quad \quad \quad STM32Cube MX V6.8.1 \quad \quad \quad \quad STM32CubeH7 Firmware Package V1.11.0 / 04-Nov-2022 \quad \quad \quad \qu…

基于混合蛙跳的路径规划算法

路径规划算法:基于混合蛙跳优化的路径规划算法- 附代码 文章目录 路径规划算法:基于混合蛙跳优化的路径规划算法- 附代码1.算法原理1.1 环境设定1.2 约束条件1.3 适应度函数 2.算法结果3.MATLAB代码4.参考文献 摘要:本文主要介绍利用智能优化…

改变开发的未来 | 探索无服务器与人工智能的协同效应

近年来,无服务器计算和人工智能深刻改变着应用程序的开发方式。 无服务器计算实现无需管理底层基础架构就能构建和运行应用程序,而人工智能则让应用程序依据数据和算例做出智能决策。借助云计算,开发者打开了一个应用程序开发、构建的全新世…

Linux网络编程——有限状态机

在逻辑单元内部的一种高效的编程方法:有限状态机。 有的应用层协议头部包含数据包类型字段,每种类型可以映射为逻辑单元的一种执行状态,服务器可以根据它来编写相应的处理逻辑,下面代码展示的是状态独立的有限状态机 STATE_MACH…

Python中模块的使用3

在运行Python程序时,总会用到Python的标准库模块。一些标准库模块被内嵌到Python解释器中,通过调用这些模块提供的函数,可以实现特殊的功能。sys模块就是Python的一个标准库模块,该模块被被内嵌到Python解释器中。 1 sys模块的导…

阿里云备案服务码申请方法流程

阿里云备案服务码是什么?ICP备案服务码怎么获取?阿里云备案服务码分为免费和付费两种,申请备案服务码是有限制条件的,需要你的阿里云账号下有可用于申请备案服务码的云产品,如云服务器、建站产品、虚拟主机等&#xff…

计算机组成原理-指令系统-指令格式及寻址方式

目录 一、指令的定义 1.1 扩展操作码指令格式 二、指令寻址方式 2.1 顺序寻址 2.2 跳跃寻址 三、 数据寻址 3.1 直接寻址 3.2 间接寻址 3.3 寄存器寻址 ​ 3.4 寄存器间接寻址 3.5 隐含寻址 3.6 立即寻址 3.7 偏移地址 3.7.1 基址寻址 3.7.2 变址寻址 3.7.3 相对寻址…

ICLR2023 | Mole-BERT: 对分子GNN预训练的反思

原文标题:MOLE-BERT: RETHINKING PRE-TRAINING GRAPH NEURAL NETWORKS FOR MOLECULES 原文链接:Mole-BERT: Rethinking Pre-training Graph Neural Networks for Molecules | OpenReview https://github.com/junxia97/Mole-BERT 一、Introduction At…

TreeMap(1):TreeMap介绍

1 TreeMap的特点 概念: TreeMap是一个双列集合,是Map的子类。底层由红黑树结构构成。 特点: 元素中键不能重复元素会按照大小顺序排序 2 TreeMap的数据结构 2.1二叉查找树 2.1.1二叉查找树的定义 特点: 若左子树不空&#…