Unity3D localscale问题

Sal*_*alx 2 c# transform scale unity-game-engine

如下代码:

Debug.LogWarning("updating scale fix, scalefactor: "+scaleFactor+" - Current scale is: "+cell.transform.localScale.x);
cell.transform.localScale.Set (scaleFactor,scaleFactor,scaleFactor);
Debug.LogWarning("Scale after fix: " + cell.transform.localScale.x);
Run Code Online (Sandbox Code Playgroud)

产生以下输出:

updating scale fix, scalefactor: 0.9 - Current scale is 0.8921105
UnityEngine.Debug:LogWarning(Object)

Scale after fix: 0.8921105
UnityEngine.Debug:LogWarning(Object)
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?我只是假设由于这些事情是紧接着发生的,因此应该更新规模。还是在框架完成之后发生?

任何帮助表示赞赏。

art*_*art 5

localScale是一个属性,因此它返回现实localScale副本(的Vector3是一个结构)尝试cell.transform.localScale = new Vector3 (scaleFactor, scaleFactor, scaleFactor);cell.transform.localScale = Vector3.one * scaleFactor;