ReSharper 2026.1 Help

代码检查:基于字符串的图形属性查找效率低下

AnimatorMaterialShader 的设置和获取方法可以接受字符串参数,以标识要返回或设置的属性。 例如, Animator.GetBoolMaterial.SetTextureShader.GetGlobalValue 等。 每次调用该方法时,Unity 都会将字符串名称转换为整数 ID 以标识属性。 该整数 ID 是一个稳定值,可以预先计算,并在 setter 和 getter 的重载中使用,从而减少每次方法调用时计算 ID 的开销。

此检查将突出显示对 设置Get 函数的基于名称的 AnimatorShaderMaterial 的任何使用。 还提供了一种快速修复方法,将引入或重用静态只读整数字段,用于计算和缓存名称的整数 ID,并在 setter 或 getter 方法中替代字符串参数。 对于 Animator 方法,ID 通过 Animator.StringToHash 计算,并且 Shader.PropertyToID 用于 ShaderMaterial

2026年 5月 8日