我刚学习Unity3d一段时间,然后我有一个关于相机跟随和背景移动不顺畅的问题 . 我用ragidbody2d创建了一个立方体,然后我使用两种不同的方法来使相机跟随:a . 我在立方体b中制作相机 . 我使用脚本来控制相机(使用后期更新)
我添加了一些转换为精灵的图片(大小为1024 * 512) . 我让他们背景 .
播放时,两种方法都有同样的问题,背景移动不顺畅,但根本不完全平滑,它会不时出现 .
我尝试了在快速移动的角色中发现的官方2D示例,背景也不顺畅 . 但有一些像Unity一样的Unity制作的游戏,当我玩它时,没有这个问题 . 我不知道如何解决这个问题,相机配置了吗? Scirpt?纹理的类型?压缩方式?或者需要使用一些插件?请帮帮我 . 谢谢 .
3 回答
这可能是因为您正在使用的更新未同步 .
主要更新(触发每个帧,它们之间的时间不同(Time.deltaTime)),FixedUpdate(触发每个物理更新,这是固定时间(Time.fixedTime))和LateUpdate(每帧,但最后一次) ) .
如果您正在尝试跟随受物理影响的刚体,建议将摄像机更新功能设置为Late-或FixedUpdate .
如果在其检查器中设置刚体的插值,则可以在“更新”功能中使用它:
一个刚性每x个固定时间获得它的位置更新,当FixedUpdate只被调用一次时,Update函数可以被触发5次,反之亦然 . 这将产生奇怪的结果,因此设置刚体插值将使那些未同步的更新之间的事情变得平滑 .
此外,您可以使用Lerp方法平滑移动相机 . 一个例子:
更多关于lerping here
希望这可以帮助
我发现另一个问题是我根本不移动相机,只需移动一个GameObject,它有一些图片作为背景 . 移动GameObject的脚本是
更新()
要么
reuslt是背景移动不顺畅的视觉滞后,但根本不完全平滑,它会不时出现 .
是否有一些配置错误?图形仿真?还是其他什么?
使用“LateUpdate”在调用所有Update函数后调用LateUpdate . 这对于命令脚本执行很有用 . 例如,跟随摄像机应始终在LateUpdate中实现,因为它跟踪可能已在Update内移动的对象 .