我正在努力进行一场无休止的跳投,变成一种更加糟糕的比赛。上升的相机是超级顺畅的,但在下来的路上它非常生涩。
我不知道如何使用脚本跟随播放器而不是混蛋。
相机正在上升:
float newHeightOfCamera = Mathf.Lerp(currentCameraHeight, playerHeightY, Time.deltaTime * 10);
transform.position = new Vector3(transform.position.x, newHeightOfCamera, transform.position.z);
相机停机:
float newHeightOfCamera = Mathf.Lerp(currentCameraHeight, playerHeightY - fallCamera, Time.deltaTime);
transform.position = new Vector3(transform.position.x, newHeightOfCamera - cameraFallLocation, transform.position.z);
在向下的路上,播放器会移动到屏幕顶部并设置为固定速度。
pc.GetComponent<Rigidbody2D>().velocity = new Vector2(0, fallSpeed); //changes falling speed
答案 0 :(得分:0)
我仍在等待回复我的评论,但是对于90%的问题,只需将所有代码示例从Update
移至LateUpdate
(或甚至从{{1到FixedUpdate
)。在大多数情况下这就足够了。但是,我们还需要了解更多细节,以确保它是解决方案。
答案 1 :(得分:0)
对不起,我从这个游戏中休息了,因为它令人沮丧。这就是我想出来的
这是为了堕落。我最终不需要相机赶上我只是想让它静止。
float newHeightOfCamera = playerHeightY - fallCamera;
transform.position = new Vector3(transform.position.x, newHeightOfCamera - cameraFallLocation, transform.position.z);
fallCamera是相机的位置。我希望角色在上升时位于屏幕底部,在下降时位于屏幕顶部。