为什么我的相机运动如此紧张

本文关键字:紧张 运动 我的 相机 为什么 | 更新日期: 2023-09-27 18:16:39

我花了好几天的时间来调整游戏的镜头运动,但始终无法达到合理的平滑程度。我能对这段代码做些什么修正来提高平滑度吗?我也尝试过moveTowards()函数,它没有帮助。

/**************************** CAMERA MOVEMENT *********************************/
void FixedUpdate () {
            //Do we need to spawn new platforms yet? 
            Vector2 playerHeight = playerTransform.position;
            if (playerHeight.y > nextPlatformCheck) {
                    PlatformMaintenaince (); //Spawn new platforms
            }
            //Update camera position if the player has climbed 
            Vector2 currentCameraHeight = transform.position;
            if (playerTransform.position.y > currentCameraHeight.y) 
            {
            transform.position = Vector2.Lerp(new Vector2(transform.position.x,0.0f), new Vector2(0.0f, playerHeight.y), smooth * Time.deltaTime);
            } 
            else {
                    // If player is too low, gameover.
                    if ((playerHeight.y) < (currentCameraHeight.y - 5.5)) {
                            GameOver();
                    }
            }
    }

为什么我的相机运动如此紧张

使用Update函数代替fixeduupdate。fixeduupdate只在一定帧数之后被调用。

所有的镜头移动计算都应该在LateUpdate ()中进行,让Update()获得球员位置,然后让镜头在更新计算后使用该位置