docs.unity3d.com
    显示 / 隐藏目录

    属性

    属性是系统中附加到元素的一段数据。例如,粒子的颜色、粒子的位置或生成系统创建的粒子数量都是属性。

    系统可以读取或写入属性以执行自定义行为并区分元素。

    系统仅在需要时存储属性。这意味着系统不会存储任何不必要的数据,从而节省内存。

    使用属性

    写入属性

    要写入属性,请使用代码块。代码块是唯一可以将属性写入系统的图形元素。

    如果稍后的上下文读取属性,则可视化特效编辑器仅会将您写入的属性存储在模拟数据中。这意味着:

    *当您在初始化或更新上下文中写入属性时,如果稍后的更新或输出上下文读取属性,则可视化特效编辑器仅会将属性存储在模拟数据中。 *当您在输出上下文中写入属性时,可视化特效编辑器不会将属性存储在模拟数据中,而仅使用该属性进行渲染。

    读取属性

    要读取属性,请使用运算符或代码块:

    使用 **Get Attribute* 运算符。 使用 **Set Attribute* 代码块中的不同的合成模式,具体取决于属性的先前值。

    注意:

    *如果您读取可视化特效编辑器未存储在模拟数据中的属性,则该属性会传递其默认的常量值。 *目前,您只能读取粒子和 ParticleStrip 系统中的属性。要读取生成系统中的属性,请使用生成器回调。

    属性位置

    每个系统都将属性存储在其自己的特定数据容器中。但是,您可以从当前模拟数据池或系统所依赖的另一个数据池中读取属性。

    当前

    当前属性位置指的是您从中读取值的当前系统数据容器。例如:

    *来自粒子系统的粒子数据。 *来自 ParticleStrip 系统的 ParticleStrip 数据。 *来自 Spawn 上下文或通过 SendEvent EventAttribute 有效负载发送的 SpawnEvent 数据。

    Source

    源属性位置指的是您从中读取值的先前系统数据容器。在系统数据更改后,您只能从系统的第一个上下文中的源属性读取。比如,您只能访问粒子 / ParticleStrip 系统初始化上下文中的 EventAttributes 和 GPU EventAttributes。

    *在初始化粒子 / 初始化 Particle Strips 上下文中: *从传入的生成上下文中。 *从其他粒子系统,通过 GPUEvent 生成。

    可变属性

    某些属性具有可变属性。这些属性可以是不同维度的标量或矢量,具体取决于您针对模拟和/或渲染所需的组件。

    当您从可变属性中读取时,它会使用其默认值从所有其他隐式组件中读取。

    例如,您可以将 Quad 粒子的比例表达为二维向量(作为四边形的宽度和长度),而要表达 Box 粒子的比例,您可以使用一个三维向量(作为立方体的宽度、长度和深度)。当您设置可变属性时,所有通道组合的下拉选单允许您仅写入必要的通道。

    另一个例子是围绕其法线旋转精灵。您只需角度属性的 Z 组件 (angleZ),所以无需存储 angleX 和 angleY.

    返回到顶部
    Copyright © 2023 Unity Technologies — 商标和使用条款
    • 法律条款
    • 隐私政策
    • Cookie
    • 不要出售或分享我的个人信息
    • Your Privacy Choices (Cookie Settings)