代码检查:DOTS:类型关键字不一致
在 Unity DOTS(数据导向技术栈)中,某些接口要求在实现类型上使用特定修饰符。 这些修饰符对于 DOTS 源生成器的正常运行以及保障安全性和性能是必需的。
检测逻辑
检查会针对实现以下接口的类或结构体目标:
Unity.Entities.IAspect:必须同时标记为partial和readonly。Unity.Entities.IJobEntity:必须标记为partial。Unity.Entities.ISystem:必须标记为partial。
必须使用 partial 修饰符,因为 Unity 的源生成器会为这些类型创建额外部分。 为 IAspect 添加 readonly 修饰符可确保其不可变性,这是 ECS 中保障安全性和性能所必需的。
示例
struct MyAspect : IAspect
{
// ...
}
readonly partial struct MyAspect : IAspect
{
// ...
}
快速修复会自动添加缺失的修饰符。
2026年 5月 8日