コード例 #1
0
ファイル: KerbTrack.cs プロジェクト: linuxgurugamer/KerbTrack
        public static void ChangeTracker(Enums.Trackers t)
        {
            try
            {
                if (tracker != null)
                {
                    tracker.Stop();
                }

                switch (t)
                {
                /*case Enums.Trackers.FreeTrack:
                 *  {
                 *      Debug.Log("[KerbTrack] Using FreeTrack");
                 *      tracker = new FreeTrackTracker();
                 *      break;
                 *  }*/
                case Enums.Trackers.TrackIR:
                {
                    Debug.Log("[KerbTrack] Using TrackIR");
                    tracker = new TrackIRTracker();
                    break;
                }

                /*case Enums.Trackers.OculusRift:
                 *  {
                 *      Debug.Log("[KerbTrack] Using Oculus Rift");
                 *      tracker = new OVRTracker();
                 *      break;
                 *  }*/
                case Enums.Trackers.Joystick:
                {
                    Debug.Log("KerbTrack: Using Joystick");
                    tracker = new JoystickTracker();
                    break;
                }

                case Enums.Trackers.OpentrackUdp:
                {
                    Debug.Log("KerbTrack: Using OpentrackUdp");
                    tracker = new OpentrackUdpTracker();
                    break;
                }
                }

                trackerEnabled = true;
            }
            catch (Exception)
            {
                trackerEnabled = false;
                throw;
            }
        }
コード例 #2
0
        private static void SettingsGui()
        {
            KerbTrack.mapTrackingEnabled      = GUILayout.Toggle(KerbTrack.mapTrackingEnabled, "Enabled in map view");
            KerbTrack.externalTrackingEnabled = GUILayout.Toggle(KerbTrack.externalTrackingEnabled, "Enabled in external view");

            int oldTracker = KerbTrack.activeTracker;

            KerbTrack.activeTracker = GuiUtils.RadioButton(trackerNames, KerbTrack.activeTracker);
            if (oldTracker != KerbTrack.activeTracker)
            {
                KerbTrack.ChangeTracker((Enums.Trackers)KerbTrack.activeTracker);
            }

            Enums.Trackers currentTracker = (Enums.Trackers)KerbTrack.activeTracker;
            switch (currentTracker)
            {
            /*case Enums.Trackers.FreeTrack:
             *  GUILayout.Label("<b>FreeTrack</b>\r\nThis is used for FaceTrackNoIR. Freetrackclient.dll must be placed next to KSP.exe, and must be a 64-bit version if 64-bit KSP is used.");
             *  break;*/
            case Enums.Trackers.TrackIR:
                GUILayout.Label("<b>TrackIR</b>\r\nSupports TrackIR and other systems which emulate it, such as opentrack.\r\n" +
                                "<b>opentrack</b>\r\nWhen using opentrack, select the Input tracker appripriate to your hardware setup, and select \"freetrack 2.0 Enhanced\" as the Output.\r\n" +
                                "In the Output settings, ensure \"Use TrackIR\" or \"Enable both\" is selected.");
                break;

            /*case Enums.Trackers.OculusRift:
             *  GUILayout.Label("<b>Oculus Rift</b>\r\nRequires an older version of the Oculus Rift runtime (2015), and only 64-bit is supported.\r\n" +
             *      "It's recommended to select \"TrackIR\" as your tracker and use opentrack instead.\r\n" +
             *      "Place \"Oculus OVR PosRotWrapper 64-bit.dll\" next to KSP.exe.");
             *  break;*/
            case Enums.Trackers.Joystick:
                GUILayout.Label("<b>Joystick</b>\r\nUse your joystick axes as input. Good for assigning to a spare axis on a joystick if you don't have a head tracker.\r\n" +
                                "If you have a head tracker that isn't supported, try setting it to output as a joystick and using this setting to receive it in KerbTrack.");
                break;

            case Enums.Trackers.OpentrackUdp:
                GUILayout.Label("<b>Opentrack Udp</b>\r\n Supports opentrack's udp protocol, listening on port 4242.");
                break;
            }
        }
コード例 #3
0
ファイル: KerbTrack.cs プロジェクト: DanielKinsman/KerbTrack
 public string GetTrackerName(Enums.Trackers t)
 {
     return(Enum.GetName(t.GetType(), t));
 }