JetBrains Rider 2026.1 Help

代码检查:在对象实例化后立即设置 'parent' 属性效率低下

所有 Unity 游戏对象都有一个转换组件,用于指定对象在变换层次结构中相对于其父级的位置、旋转和缩放。 调用 Object.Instantiate 创建对象新实例但未设置父级变换时,会创建一个新的根层次结构。 可以通过调用 Transform.SetParent 或为 Transform.parent 赋值,稍后设置父级。

调用 Instantiate 再单独设置父级是一种不必要的高开销操作,因为新建的根层次结构会被分配、初始化并立刻丢弃。 建议在调用 Instantiate 时设置父级变换,以避免不必要的分配。

此检查会在 Object.Instantiate 调用时,高亮显示未指定 parent 参数但在方法中稍后设置的情况。 它还会添加一个快速修复,将父级添加到对 Instantiate 的调用中,并移除对 parent 的赋值或对 SetParent 的调用。

2026年 5月 8日