public Vector3 GetHitPointSpin() { Vector3[] hitPoints = CameraUtil.GetHitPoints(camera, plane); Vector3 min; Vector3 max; CameraUtil.GetMinMaxVector3(hitPoints, out min, out max); return(max - min); }
public void LogHitPoints() { Vector3[] hitPoints = CameraUtil.GetHitPoints(camera, plane); Vector3 min; Vector3 max; CameraUtil.GetMinMaxVector3(hitPoints, out min, out max); Debug.LogFormat("cornors:{0}, min:{1}, max:{2}, max-min:{3}", hitPoints.IEnumerableToString(), min, max, max - min); }
void ShowCameraFrustum() { Vector3[] nearCorners; Vector3[] farCorners; CameraUtil.GetCameraCornors(camera, out nearCorners, out farCorners); DrawFrustum(nearCorners, farCorners); Vector3[] hitPoints = CameraUtil.LinePlaneIntersectPoints(nearCorners, farCorners, plane); DrawFrustumIntersectPlane(hitPoints, interectColor); Vector3 min; Vector3 max; CameraUtil.GetMinMaxVector3(hitPoints, out min, out max); }
private void OnDrawGizmos() { Vector3[] nearCorners = CameraUtil.CameraClipPlanePoints(camera, camera.nearClipPlane); Vector3[] farCorners = CameraUtil.CameraClipPlanePoints(camera, camera.farClipPlane); Vector3[] hitPoints = CameraUtil.GetHitPoints(nearCorners, farCorners, plane); Vector3 min; Vector3 max; CameraUtil.GetMinMaxVector3(hitPoints, out min, out max); DrawCube(nearCorners, Color.red); DrawCube(farCorners, Color.blue); DrawLines(nearCorners, farCorners, Color.green); DrawCube(hitPoints, interectColor); DrawCube(min, max, Color.cyan); DrawViewRay(Color.black); }