我正在创建一个简单的脚本,告诉游戏对象它需要跟随另一个游戏对象,并保持一定的距离。
代码:
问题是:下面的游戏对象在闪烁。当您观看它时,它似乎比跟随的游戏对象落后几帧。我之前在我的早期原型中注意到了这一点,但现在对于我的新游戏来说非常关键。所以我认为这是一个相当普遍的问题。
有没有解决这种不良行为的解决方案?
谢谢。
代码:
void Update()
{
objPos = GameObject.FindGameObjectWithTag("Player").transform.position;
transform.position = new Vector3(objPos.x + 0.5f, objPos.y + 0.5f);
}
问题是:下面的游戏对象在闪烁。当您观看它时,它似乎比跟随的游戏对象落后几帧。我之前在我的早期原型中注意到了这一点,但现在对于我的新游戏来说非常关键。所以我认为这是一个相当普遍的问题。
有没有解决这种不良行为的解决方案?
谢谢。
LateUpdate()
是否有任何重要作用?当您玩游戏时,您是否启用了VSync?当持续处于60FPS时与未锁定时观察其行为肯定是值得的。您确定闪烁与精灵顺序(即层中的顺序)无关吗?如果它们在同一层上,则会导致可见的闪烁,因为这些对象的z-Order会随机更改。就性能而言,修复objPos
是明智的(例如,使其公共并在检查器中分配),每次搜索可能造成成本。 - Maximilian Gerhardt