C# 脚本与Unity Visual Scripting 交互,第一步(使用C# 脚本触发Script Graph的事件)(Custom Scripting Event)
2022/9/13 1:23:14
本文主要是介绍C# 脚本与Unity Visual Scripting 交互,第一步(使用C# 脚本触发Script Graph的事件)(Custom Scripting Event),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
写在前面
感谢Unity 川哥的帮助,解决了单独调用GameObject的需求
首先 需要在Unity 中创建一个自定义事件脚本(注释非常重要)
using System.Collections; using System.Collections.Generic; using Unity.VisualScripting; using UnityEngine; /// <summary> /// UnitTitle 在Script Graph 中展示的名字 /// UnitCategory 在Script Graph 展示的目录层级 /// EventUnit<int> 泛型 int 是输出参数的类型 /// </summary> [UnitTitle("TestEvent")] [UnitCategory("Events\\MyEvents")] public class TestEvent : EventUnit<int> { /// <summary> /// 定义参数输出 /// </summary> [DoNotSerialize] public ValueOutput result { get; private set; }// The Event output data to return when protected override bool register => true; /// <summary> /// 其实 /// </summary> /// <param name="reference"></param> /// <returns></returns> public override EventHook GetHook(GraphReference reference) { // 特别声明 如果不传递 gameObject 则调用时 会调用所有 Script Graph 使用的事件 return new EventHook(nameof(TestEvent),reference.gameObject); } /// <summary> /// 定义函数 展示输出事件 /// </summary> protected override void Definition() { base.Definition(); // 设置输出的类型和显示的名字 result = ValueOutput<int>("output"); } /// <summary> /// 设置参数传入流中 /// </summary> /// <param name="flow"></param> /// <param name="data"></param> protected override void AssignArguments(Flow flow, int data) { flow.SetValue(result, data); } }
编写完成后记得保存代码,并且在项目设置中点击刷新一下Visual Scripting的Nodes
还记得在代码 写的目录和 名称吗
- Events\\MyEvents
- TestEvent
成功添加了这个节点 输出目前是一个int 类型
为了让大家看的清楚一点 我输出了
编写一个触发脚本
成功触发了,这时候我就可以愉快的将 Unity的连连看和自己写的逻辑联系在一起了
这篇关于C# 脚本与Unity Visual Scripting 交互,第一步(使用C# 脚本触发Script Graph的事件)(Custom Scripting Event)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2022-03-01沐雪多租宝商城源码从.NetCore3.1升级到.Net6的步骤
- 2024-12-06使用Microsoft.Extensions.AI在.NET中生成嵌入向量
- 2024-11-18微软研究:RAG系统的四个层次提升理解与回答能力
- 2024-11-15C#中怎么从PEM格式的证书中提取公钥?-icode9专业技术文章分享
- 2024-11-14云架构设计——如何用diagrams.net绘制专业的AWS架构图?
- 2024-05-08首个适配Visual Studio平台的国产智能编程助手CodeGeeX正式上线!C#程序员必备效率神器!
- 2024-03-30C#设计模式之十六迭代器模式(Iterator Pattern)【行为型】
- 2024-03-29c# datetime tryparse
- 2024-02-21list find index c#
- 2024-01-24convert toint32 c#