团结引擎动画系统|Event Graph CodeGen:一键编译图逻辑,提升运行时性能

为了让可视化脚本在复杂场景下依然保持极致流畅, CodeGen(代码生成) 功能应运而生。点击Compile按钮可将项目中的 EventGraph(事件图) 与 Functions(函数图) 从图的解释执行切换为编译后的 C# 代码运行,彻底释放运行时性能。

丨核心优势

  • 解释执行 → 编译执行:原来在运行时逐节点解释图逻辑,现在直接运行预编译的 C# 代码,大幅降低 CPU 开销与内存分配。

  • 零破坏性接入:生成 C# 代码后,运行时系统会自动检测并优先使用编译版本,无需手动修改任何引用或逻辑。

  • 无感知切换:旧有图解算逻辑保留,只在存在生成代码时自动启用高性能路径,方便调试与回退。

  • 安全可追溯:生成的代码放置于 Assets/AnimGraph.Generated文件夹,结构清晰,便于版本管理与排查。

丨如何使用

  1. 在 AnimGraph 编辑器中打开图。

  2. 确保 EventGraph 和 Functions 逻辑已完成且测试通过。

  3. 点击工具栏上的 Compile 按钮。

  4. 生成的 C# 代码将自动存入 Assets/AnimGraph.Generated 下。

  5. 之后再运行项目时,引擎会自动检测并加载编译后的代码,跳过图解算过程,直接执行高性能逻辑。

如需回到解释执行模式,只需删除对应的生成文件即可。

丨适用场景

  • 每帧调用的高频逻辑(如动画更新、角色运动等)

  • 角色多,性能需求高

  • 函数库庞大、连线复杂的工程

丨注意事项

  • 点击 Compile 前请确保图逻辑无编译错误,避免生成无效或错误的代码。

  • 生成的 C# 脚本,请避免手动编辑。

  • 现阶段若要切换为图运行,需要删除对应的生成脚本。

  • 建议将 AnimGraph.Generated 加入版本控制,以保持团队一致性。

结果比较

在150个角色,每个角色运行300多个节点下,编译后直接走C#逻辑更新,可有效提升运行速度和减少运行开销。

未使用Code Gen

使用了Code Gen

相关推荐
寒霜雨刃20 小时前
【原创】海光Z100 DCU适配vLLM实录(二):W4A16大M Prefill结构重写、GDN融合与长上下文HIP Attention
深度学习·神经网络·amd·rocm·ai infra·海光z100·gfx906
IJCAST1 天前
IJCAST最新一期已经发布
人工智能·深度学习·神经网络
chunmiao30321 天前
OpenAI 官宣断供 Cursor,AI 编程迎来第一次模型断供
人工智能·深度学习
147API1 天前
评测分数不理想,什么时候值得补蒸馏数据
人工智能·深度学习·机器学习
β添砖java1 天前
深度学习26转置卷积
人工智能·深度学习
JoannaJuanCV1 天前
VLM学习-SFT(监督微调)
深度学习·学习·机器学习·大模型·视觉大模型·vlm·视觉编码器
玩转单片机与嵌入式1 天前
深入浅出TinyML 21:INT8量化改变了模型中的哪些数据?
stm32·深度学习·tinyml
满怀冰雪1 天前
23-PaddleClas 数据集、配置文件与训练参数详解
人工智能·python·深度学习·paddlepaddle
手写码匠1 天前
华为云Flexus+DeepSeek征文|华为云MaaS DeepSeek推理服务 × Flexus云服务器 × Dify一键部署:性能评测实战
人工智能·深度学习·算法·aigc
十三画者1 天前
【文献分享】ExoFILT:基于深度学习的外泌事件单颗粒追踪数据分类器
人工智能·深度学习·机器学习·数据挖掘·数据分析