我的专栏目录
小IVan:专题概述及目录我们在开发好graph窗口后,下一步就是要能在工具中可视化编程。我们需要为我们的工具添加节点。
我们需要捋一下思路:
【1】我们需要再窗口里添加节点,我们需要一个UI的节点类。
【2】其次这个UI的节点类只是UI,当选中节点后它的Detail面板的属性数据是由UObject子类来提供的,也就是逻辑层的节点类。
【3】我们有了节点,我们要创建它,回想以下其它虚幻内置的编辑器的节点创建,是右键,弹出一个节点选择面板。所以现在我们需要一个Action类,这个类需要反应倒我们右键弹出的那个窗口里,然后再由这个action创建UI节点。
【4】怎么样让Graph识别右键菜单的Action呢,这时候就需要给Graph一个UEdGraphSchema类。
要给一个Graph加入可视化节点,大改就需要如上步骤。下面就来一步一步实现它吧。
我们分别再声明两个类(我的代码精简得不能再精简了,简明扼要说明核心函数实现核心效果)
FMyTestSchemaAction是邮件菜单类,它为Graph提供了右键菜单选项。UMyTestGraphSchema类则是Graph类的控件类,它负责Graph中节点的链接,连线的各种逻辑。我们只要再这个类的GetGraphContextActions函数中添加了我们自己的FMyTestSchemaAction,就可以再右键菜单中找到我们需要创建的节点。
还需要把UMyTestGraphSchema指认给我们的Graph
效果如下:
但是这个时候点下去什么都不会发生,因为我们没有给FMyTestSchemaAction任何创建动作。
我们需要在FMyTestSchemaAction中补上执行创建的操作
效果如下:
Enjoy it !