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

    输出事件处理程序

    VFXOutputEventAbstractHandler 是一个 API Helper 处理程序,它挂接到一个输出事件中,允许您根据事件执行脚本。

    Visual Effect Graph 提供一组示例脚本作为示例。有关如何安装示例的信息,请参见安装示例脚本。

    输出事件处理程序 API

    要创建您自己的输出事件处理程序,请编写一个脚本来扩展“UnityEngine.VFX.Utility.VFXOutputEventAbstractHandler”类。

    通过编写扩展此类的 MonoBehaviour,可以减少执行挂钩所需的代码量。这是因为基类负责过滤事件并调用以下方法:

    “override void OnVFXOutputEvent(VFXEventAttribute eventAttribute)”

    在实现此方法时,Unity 会在每次事件触发时调用它并传入事件的属性。

    示例

    以下示例在收到事件时将游戏对象传送到给定位置。

    [RequireComponent(typeof(VisualEffect))]
    public class VFXOutputEventTeleportObject : VFXOutputEventAbstractHandler
    {
        public Transform target;
    
        static readonly int kPosition = Shader.PropertyToID("position");
    
        public override void OnVFXOutputEvent(VFXEventAttribute eventAttribute)
        {
            if(target != null)
                target.position = eventAttribute.GetVector3(kPosition);
        }
    }
    

    使用输出事件 Helper

    为了帮助您创建自己的 VFXOutputEventAbstractHandler,Visual Effect Graph 包提供一组示例脚本,您可以通过包管理器安装这些脚本。有关如何使用这些示例脚本的信息,请参见示例内容。

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