MoodSwingCoreComponents.MSCamera.Zoom C# (CSharp) 메소드

Zoom() 공개 메소드

Shifts the camera position closer to the camera target.
public Zoom ( int direction ) : bool
direction int 1 to zoom closer. -1 to zoom further.
리턴 bool
        public bool Zoom(int direction)
        {
            bool toReturn = false;
            Vector3 newCameraPosition = cameraPosition - (normalizedViewVector * direction * ZOOM_SPEED);
            if (Vector3.Distance(newCameraPosition, cameraTarget) >= ZOOM_MIN_DIST &&
                Vector3.Distance(newCameraPosition, cameraTarget) <= ZOOM_MAX_DIST)
            {
                cameraPosition = newCameraPosition;
                viewVector = cameraPosition - cameraTarget;
                normalizedViewVector = Vector3.Normalize(viewVector);
                toReturn = true;
            }
            frustum = new BoundingFrustum(camera.GetView() * camera.ProjectionMatrix);

            return toReturn;
        }