RaycastWorld() private static method

private static RaycastWorld ( Vector2 position, RaycastHit &hit ) : bool
position Vector2
hit UnityEngine.RaycastHit
return bool
コード例 #1
0
 private static void HandleMouseUp(SceneView view, int id, int button, int clickCount)
 {
     if (GUIUtility.hotControl == id)
     {
         SceneViewMotion.ResetDragState();
         RaycastHit raycastHit;
         if (button == 2 && !SceneViewMotion.s_Dragged && SceneViewMotion.RaycastWorld(Event.current.mousePosition, out raycastHit))
         {
             Vector3 b       = view.pivot - view.rotation * Vector3.forward * view.cameraDistance;
             float   newSize = view.size;
             if (!view.orthographic)
             {
                 newSize = view.size * Vector3.Dot(raycastHit.point - b, view.rotation * Vector3.forward) / view.cameraDistance;
             }
             view.LookAt(raycastHit.point, view.rotation, newSize);
         }
         Event.current.Use();
     }
 }