4

ズーム カメラ スクリプトを動作させようとしていますが、動作しません。スクリプトの他の部分は正常に機能しますが、これを除いて、マウスのスクロール ホイールと関係があると思います。

void LateUpdate()
{
    if (!EventSystem.current.IsPointerOverGameObject())
    {     
        if(Input.GetAxis("Mouse ScrollWheel")<0)
        {
            CameraZoom();
        }
    }
}

public void CameraZoom()
{
    if (!EventSystem.current.IsPointerOverGameObject())
    {
        distance = Mathf.Clamp(distance - Input.GetAxis("Mouse ScrollWheel") * zoomFactor, distanceMin, distanceMax);
        RaycastHit hit;

        if (Physics.Linecast(target.position, transform.position, out hit))
        {
            distance -= hit.distance;
        }
    }
}

マウスホイールを動かしたときにズームしたいだけですが、他のスクリプト、主に簡単なタッチからアクセスできるように、パブリックボイドにする必要があります。

4

1 に答える 1

1

このコードを LateUpdate() ではなく Update() に入れてみてください。

void Update()
{
if (!EventSystem.current.IsPointerOverGameObject())
    {     
    if(Input.GetAxis("Mouse ScrollWheel")<0)
        {
            CameraZoom();
        }
    }
}
于 2016-03-07T14:53:31.353 に答える