SuperAPI AI 工具集

unity-csharp-reference

编程与开发

查看项目

更新于 10-15 16:46

技能介绍

用途:以只读方式浏览 Unity Technologies 官方 UnityCsReference C# 源码本地缓存,回答 Unity API 精确签名、特性、行为、内部实现与性能副作用等问题,比较不同 Unity 版本 API 差异,并验证 LLM 建议的 Unity 脚本是否符合官方源码。它是 unity-csharp-navigate(项目源码)和 unity-csharp-edit(写入)的姊妹技能;涉及项目级读取或写入时应转交。

主要能力:按 Unity 版本缓存官方源码;find-symbol 按类型名快速查符号(class/interface/struct/enum,基于每版本磁盘索引 ~/.unity/cache/UnityCsReference/<version>/.unity-cli-index/symbols.json);grep 做带上下文的行级模式查找;search 做过滤后的文件命中;view 按行区间查看文件;diff 比较两个已缓存版本(符号模式 --symbol 或路径模式 --path);resolve-symbol-at 根据项目文件光标位置定位类型;embed-build + embed-search 支持自然语言语义检索。

使用方式:新环境先执行 runtime-checklist.md 中的运行时检查;用 unity-cli reference fetch --accept-license 为项目 Unity 版本填充缓存(每版本一次);随后按需使用 unity-cli reference status --output json、find-symbol --name Animator --kind class、grep "class Animator " --context 3、view Runtime/Export/Animation/Animator.bindings.cs --start-line 100 --max-lines 60、diff --from 2022.3.10f1 --to 2023.2.20f1 --symbol UnityEngine.Animator、resolve-symbol-at Assets/Scripts/Player.cs --line 42 --column 18、embed-build --version 2023.2.20f1、embed-search --query "animator state callback" --version 2023.2.20f1、clean --keep 1 --dry-run。已知精确符号名时优先 find-symbol,自由文本或成员级匹配再用 grep。语义检索首次调用会下载约 130MB 的 BGE-Small-EN ONNX 模型(缓存在平台默认 fastembed 缓存),并写入每版本 .unity-cli-index/embeddings.bin,后续查询仅做单次嵌入与线性余弦扫描。

适用场景:确认 Animator.Play 等 API 实现以预测是否分配内存;比较 UnityWebRequest.Get 在 2022.3 与 Unity 6 之间的差异;在接入构建管线前确认 EditorApplication.delayCall 签名。

限制:不用于读取项目本地脚本(应使用 unity-csharp-navigate),不用于写入或重构 C# 代码(应使用 unity-csharp-edit),不处理 Unity 场景状态、包或资源(应使用对应场景、资源或编辑器技能)。需接受许可并预先填充缓存;完整用法细节以随附文档为准,其他收费、平台或效果信息暂未提供。