这是一个基础模板工程,可以在Unreal下使用Puerts和ImGui(由UnrealImGui)开发Editor工具
本项目同时也维护PuertsXImGui
这个核心联结插件
原版UnrealImGui仅支持UE运行时。这里封装了一个SImGuiWidgetEd
把ImGui的显示嵌进了编辑器界面
魔改Puerts使其在ts模块修改时可以抛出通知,PuertsXImGui
模块接收到事件后重启JS虚拟机达到热更新的目的
源码修改点:
Plugins/Puerts/Source/Puerts/Public/PuertsModule.h
:新增一个FOnModuleChange OnModuleChange
委托Plugins/Puerts/Source/PuertsEditor/Private/FileSystemOperation.cpp
:UFileSystemOperation::PuertsNotifyChange
新增IPuertsModule::Get().OnModuleChange.Broadcast(*Path)
事件发送
重新封装了InputText
,InputTextMultiline
,InputTextWithHint
,利用其回调函数通过FUnrealImGuiModule::NotifyActiveImGuiInputText
将用户输入数据发送到UE侧做处理。UE通过GetTextInputMethodSystem
API来处理IME相关的功能