UnrealCSharp API完全参考开发者必备的查询手册【免费下载链接】UnrealCSharpUnrealCSharp, based on .NET 10 (CoreCLR/Mono), is a C# programming plugin for UE.项目地址: https://gitcode.com/gh_mirrors/un/UnrealCSharpUnrealCSharp是基于.NET 10CoreCLR/Mono开发的UE C#编程插件为开发者提供了在虚幻引擎中使用C#进行游戏开发的强大能力。本手册将全面介绍UnrealCSharp的API结构、核心功能模块及常用类与方法帮助开发者快速掌握并高效使用这一工具。核心API模块概览 UnrealCSharp的API主要集中在Script/UE目录下按照功能划分为多个核心模块每个模块提供特定领域的功能支持CoreUObject提供虚幻引擎核心对象系统的C#封装包括对象管理、类定义等基础功能Dynamic包含各类特性Attribute定义用于C#与UE蓝图系统的交互Library实现核心功能的具体逻辑是API的底层实现部分Log提供日志记录功能方便调试和运行时信息输出常用基础类详解 Object类Object类是UnrealCSharp中所有UE对象的基类提供了对象生命周期管理的核心方法public UClass GetClass()获取对象的类信息public FString GetName()获取对象名称public bool IsValid()检查对象是否有效public void AddToRoot()将对象添加到根集防止被垃圾回收public void RemoveFromRoot()从根集中移除对象TArray类TArray是UnrealCSharp提供的动态数组类型支持各种常见的数组操作public void Empty(int InExpectedNumElements 0)清空数组public int Num()获取数组元素数量public bool IsEmpty()检查数组是否为空public void Add(T InValue)添加元素到数组public int Remove(T InValue)移除指定元素public T Get(int Index)获取指定索引的元素TMap类TMap提供键值对映射功能适用于需要快速查找的数据场景public void Empty(int InExpectedNumElements 0)清空映射public int Num()获取键值对数量public bool IsEmpty()检查映射是否为空public void Add(TKey InKey, TValue InValue)添加键值对public int Remove(TKey InKey)移除指定键的键值对public TValue Find(TKey InKey)查找指定键对应的值输入系统API ⌨️UnrealCSharp提供了对UE输入系统的完整封装主要通过InputComponent类实现InputComponent类public void BindAction(FName InActionName, EInputEvent InKeyEvent, UObject InObject, ActionFKey InAction)绑定动作事件public void BindAxis(FName InAxisName, UObject InObject, Actionfloat InAction)绑定轴事件public void BindAxisKey(FKey InKey, UObject InObject, Actionfloat InAction)绑定轴按键事件public void BindKey(FKey InKey, EInputEvent InKeyEvent, UObject InObject, ActionFKey InAction)绑定按键事件public void RemoveAction(FName InActionName, EInputEvent InKeyEvent, UObject InObject, ActionFKey InAction)移除动作绑定EnhancedInputComponent类增强输入组件提供了更灵活的输入绑定方式public FEnhancedInputActionEventBinding BindAction(UInputAction InInputAction, ETriggerEvent InTriggerEvent, UObject InObject, Delegate InDelegate)绑定增强输入动作常用特性Attribute UnrealCSharp提供了丰富的特性用于控制C#类、函数和属性在UE编辑器中的行为类特性[Blueprintable]允许该类被蓝图继承[BlueprintType]将该类标记为蓝图可用类型[Category(CategoryName)]指定类在编辑器中的分类[DisplayName(DisplayName)]设置类在编辑器中显示的名称函数特性[BlueprintCallable]允许函数在蓝图中被调用[BlueprintImplementableEvent]声明蓝图可实现的事件[BlueprintNativeEvent]声明蓝图可重写的原生事件[Pure]标记函数为纯函数无副作用属性特性[EditAnywhere]允许属性在任何地方被编辑[EditDefaultsOnly]仅允许在默认属性窗口中编辑[BlueprintReadWrite]允许属性在蓝图中读写[BlueprintReadOnly]仅允许属性在蓝图中读取字符串处理API UnrealCSharp提供了多种字符串类型适应不同的使用场景FString类public FString ToLower()转换为小写public FString ToUpper()转换为大写public bool Contains(FString InSubstring)检查是否包含子字符串public int Len()获取字符串长度FName类FName是UE中用于高效查找的字符串类型public FName(string InName)构造函数public bool IsNone()检查是否为空public string ToString()转换为普通字符串如何开始使用UnrealCSharp API 克隆仓库git clone https://gitcode.com/gh_mirrors/un/UnrealCSharp参考Template目录下的示例代码如DynamicActor.cs和DynamicObject.cs查阅Script/UE目录下的API源代码了解详细实现使用Log类进行调试Log.Info(调试信息)API最佳实践 对于频繁访问的对象使用AddToRoot()和RemoveFromRoot()管理生命周期优先使用UE特定的集合类型TArray、TMap、TSet而非.NET原生集合利用特性Attribute控制蓝图交互减少C#与蓝图之间的手动绑定使用IsValid()检查对象有效性避免空引用异常对于大型数组操作使用Empty()指定预期大小以提高性能总结UnrealCSharp API为开发者提供了在虚幻引擎中使用C#进行开发的完整工具集。通过本手册介绍的核心类、方法和特性开发者可以快速上手并充分利用C#的优势进行UE游戏开发。建议结合源代码和示例项目深入学习以掌握API的高级用法和最佳实践。【免费下载链接】UnrealCSharpUnrealCSharp, based on .NET 10 (CoreCLR/Mono), is a C# programming plugin for UE.项目地址: https://gitcode.com/gh_mirrors/un/UnrealCSharp创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考