您好,欢迎访问宜昌市隼壹珍商贸有限公司
400 890 5375Sublime Text 虽不支持直接编辑UE蓝图,但能高效辅助C++与蓝图交互开发:快速编写/检查反射宏、跳转引擎类定义、批量添加UPROPERTY/UFUNCTION声明,提升暴露逻辑给蓝图的准确性和效率。
Sublime Text 本身不直接支持 Unreal Engine 蓝图脚本开发(蓝图是可视化资产,存储为 .uasset 文件,无法用文本编辑器直接编写逻辑),但它可以高效辅助 C++ 与蓝图交互的开发工作——尤其是编写暴露给蓝图的 C++ 类、函数、变量,以及快速查看/编辑生成的头文件、源文件和反射宏。
UE 编辑器内置的 Visual Studio 或 Rider 启动慢、资源占用高;而 Sublime 启动快、轻量、插件生态灵活,适合专注写代码、查定义、批量修改。关键在于:它能精准配合 UE 的 C++ 反射机制,帮你写对 UFUNCTION(BlueprintCallable)、UPROPERTY(VisibleAnywhere, BlueprintReadWrite) 等声明,避免蓝图里看不到函数或变量。
BlueprintCallable 写成 BlueprintCallble)UObject、UStaticMeshComponent 等引擎类定义UPROPERTY(BlueprintReadWrite))不是所有 C++ 函数都能出现在蓝图节点栏里。必须满足三要素:声明规范、编译通过、类已设为“可被蓝图继承”。以下是最小可靠模板:
// MyActor.hUCLASS(Blueprintable)class AMyActor : public AActor{ GENERATED_BODY()public: UFUNCTION(BlueprintCallable, Catego
ry="MyCategory") void DoSomething(const FString& Message, int32 Count);};
// MyActor.cppvoid AMyActor::DoSomething(const FString& Message, int32 Count){ GEngine->AddOnScreenDebugMessage(-1, 3.f, FColor::Green, Message);}
BlueprintCallable 是必需的;加 Category 让函数归组,蓝图搜索更准FString、int32、float、bool、UObject*、TSubclassOf;避免裸指针、STL 容器、自定义 struct(除非用 USTRUCT(BlueprintType) 显式暴露)GEditor),否则打包后崩溃变量暴露比函数更易出错。常见误区是只加 UPROPERTY() 却漏掉具体标识符,导致蓝图里灰显或不可见。
UPROPERTY(EditAnywhere, BlueprintReadWrite) → 蓝图实例中可读写(如角色血量)UPROPERTY(VisibleDefaultsOnly, BlueprintReadOnly) → 仅在类默认值面板显示,蓝图实例不可改(如初始武器类型)UPROPERTY(VisibleInstanceOnly) → 仅运行时在细节面板显示(调试用)USTRUCT(BlueprintType) 标记,且每个成员也要加 UPROPERTY()
TArray 或 TArray,别用 std::vector
不用重装工具链,几项配置就能大幅提升效率:
UnrealBuildTool.exe,保存即编译(需提前生成 VS 解决方案)Engine/Source/Runtime/ 和你项目的 Intermediate/Build/Win64/... 路径加入索引,让跳转和补全更准spell_check 和 draw_white_space,减少干扰;启用 highlight_line 提升当前行辨识度基本上就这些。Sublime 不替代 UE 编辑器或调试器,但它能把 C++ 侧的“暴露给蓝图”这件事做得更稳、更快、更少出低级错误。