【问题标题】:Unity - How to zoom in and out with camera movement?Unity - 如何通过相机移动放大和缩小?
【发布时间】:2020-01-17 20:24:21
【问题描述】:

我正在与一家独立工作室合作一个项目,我被要求改变相机的工作方式 所以当玩家向上看时,相机会放大,当玩家向下看时,相机会缩小。

我的解决方案有效,但它太活泼了。相机会在瞬间变焦。我尝试添加更多的 larping 或平滑,但没有帮助。我敢肯定有更优雅的方式来做到这一点。 很高兴有人能提供帮助。

float currentPitch = Values.pitch;
    if(currentPitch > lastFramPitch){
        Values.runTimeDistanceFromTarget.z += Values.zoomSensitivity;
        Values.runTimeDistanceFromTarget.z = Mathf.Lerp(Values.runTimeDistanceFromTarget.z , Values.zoomIn , Values.zoomSensitivity);
    }
    else{
                    Values.runTimeDistanceFromTarget.z -= Values.zoomSensitivity;
        Values.runTimeDistanceFromTarget.z = Mathf.Lerp(Values.runTimeDistanceFromTarget.z , Values.zoomOut , Values.zoomSensitivity);
    }

    lastFramPitch = currentPitch ; 

【问题讨论】:

  • 这不是一个好的解决方案,但也许您可以尝试更改相机的 FOV(视野)。尝试需要 1 分钟,在某些情况下会正常工作。
  • Cinemachine 我的老兄;D

标签: unity3d camera zooming


【解决方案1】:

Cinemachine 开箱即用,参数易于调整。它还可以让您随时在任何相机之间切换。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-08-16
    • 2015-04-28
    • 1970-01-01
    • 2021-11-12
    • 1970-01-01
    • 2018-07-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多