主要观点:Lattice 是针对 Unity ECS 的高性能可视化脚本系统,本周达到重要里程碑,程序已完全编译为.NET IL。其目标是设计能编译为快速线性代码的可视化语言,受 Rust“零成本抽象”启发,新编译管道去除节点图表示,输出变为局部变量,主体变为普通静态方法。
关键信息:
- 过去多次写关于 Lattice 的博客都迷失,此次决定先开始写,追求数量。
- 生成 C#存在问题,IL 更优,可在运行时修改脚本且易处理,用 Sigil 库捕获类型错误等。
- 加入 IR 表示降低编译复杂度,仅 7 种操作符,IL 生成步只需为这 7 种操作符生成代码,IL 生成器约 500 行代码。
- 新后端使 Lattice 速度变快,接近 C#,可自动并行化和 Burst 编译,目前满足需求,将转向游戏流程和用户体验工作。
重要细节: - 提到 Bolt、NodeCanvas 和 Playmaker 都解释其节点图,Lattice 发射单个静态方法一次执行游戏中的所有晶格脚本,.NET 和 Mono JIT 擅长处理纯静态方法。
- 介绍了 IR 表示下各种节点的含义,如 Function 是静态 C#方法句柄等。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。