GameController Namespace

Der GameController-Namespace bietet Unterstützung für externe Gamecontroller.

Klassen

Name Beschreibung
GCColor

Der GameController-Namespace bietet Unterstützung für externe Gamecontroller.

GCController

Ein Gamecontroller, entweder formpassend oder erweitert drahtlos.

GCController.Notifications

Von der GCController Klasse gepostete Benachrichtigungen.

GCControllerAxisInput

Ein GCControllerElement Joystick, der einen Joystick darstellt.

GCControllerButtonInput

A GCControllerElement representing a game-controller button.

GCControllerDirectionPad

A GCControllerElement representing a direction-pad.

GCControllerElement

Die Basisklasse für Eingabeelemente eines Gamecontrollers.

GCControllerHomeButtonSettingsManager

Bietet Zugriff auf die Systemeinstellungen für das Verhalten der Starttaste des Controllers.

GCControllerInputState

Der GameController-Namespace bietet Unterstützung für externe Gamecontroller.

GCControllerLiveInput

Der GameController-Namespace bietet Unterstützung für externe Gamecontroller.

GCControllerTouchpad

Der GameController-Namespace bietet Unterstützung für externe Gamecontroller.

GCControllerUserCustomizations

Der GameController-Namespace bietet Unterstützung für externe Gamecontroller.

GCControllerUserCustomizations.Notifications

Von der GCControllerUserCustomizations Klasse gepostete Benachrichtigungen.

GCDeviceBattery

Der GameController-Namespace bietet Unterstützung für externe Gamecontroller.

GCDeviceCursor

Der GameController-Namespace bietet Unterstützung für externe Gamecontroller.

GCDeviceHaptics

Der GameController-Namespace bietet Unterstützung für externe Gamecontroller.

GCDeviceLight

Der GameController-Namespace bietet Unterstützung für externe Gamecontroller.

GCDirectionalGamepad

Der GameController-Namespace bietet Unterstützung für externe Gamecontroller.

GCDualSenseAdaptiveTrigger

Der GameController-Namespace bietet Unterstützung für externe Gamecontroller.

GCDualSenseGamepad

Der GameController-Namespace bietet Unterstützung für externe Gamecontroller.

GCDualShockGamepad

Der GameController-Namespace bietet Unterstützung für externe Gamecontroller.

GCEventInteraction

Der GameController-Namespace bietet Unterstützung für externe Gamecontroller.

GCEventViewController

Ansichtscontroller, der die Ereignisübermittlung zwischen der Responderkette und dem Gamecontroller wechseln kann.

GCExtendedGamepad

Ein Gamepad mit zwei Schultertasten, zwei Triggern, zwei Ministicks, einem D-Pad und einem direktionalen Tastenarray.

GCExtendedGamepadSnapshot

Eine serialisierbare Momentaufnahme des Zustands des Gamecontrollers.

GCGameControllerActivationContext

Der GameController-Namespace bietet Unterstützung für externe Gamecontroller.

GCGameControllerSceneDelegate

Dies ist eine Klasse, die die Schnittstelle IGCGameControllerSceneDelegate implementiert (für das Protokoll GCGameControllerSceneDelegate).

Unterklasse dieser Klasse zum einfachen Erstellen eines Typs, der das Protokoll implementiert.

Eine Alternative besteht darin, eine Unterklasse von NSObject und dann die Schnittstelle IGCGameControllerSceneDelegatezu erstellen.

GCGamepad

Ein Gamepad mit zwei Schultertasten, einem D-Pad und einem direktionalen Schaltflächenarray.

GCGamepadSnapshot

Eine serialisierbare Momentaufnahme des Zustands des Gamecontrollers.

GCGearShifterElement

Der GameController-Namespace bietet Unterstützung für externe Gamecontroller.

GCHapticsLocality

Der GameController-Namespace bietet Unterstützung für externe Gamecontroller.

GCInput

Der GameController-Namespace bietet Unterstützung für externe Gamecontroller.

GCInputAxisNameExtensions

Erweiterungsmethoden für die GCInputAxisName Enumeration.

GCInputButtonNameExtensions

Erweiterungsmethoden für die GCInputButtonName Enumeration.

GCInputDirectionalExtensions

Erweiterungsmethoden für die GCInputDirectional Enumeration.

GCInputDirectionPadNameExtensions

Erweiterungsmethoden für die GCInputDirectionPadName Enumeration.

GCInputElementNameExtensions

Erweiterungsmethoden für die GCInputElementName Enumeration.

GCInputMicroGamepadExtensions

Erweiterungsmethoden für die GCInputMicroGamepad Enumeration.

GCInputXbox

Der GameController-Namespace bietet Unterstützung für externe Gamecontroller.

GCKey

Der GameController-Namespace bietet Unterstützung für externe Gamecontroller.

GCKeyboard

Der GameController-Namespace bietet Unterstützung für externe Gamecontroller.

GCKeyboard.Notifications

Von der GCKeyboard Klasse gepostete Benachrichtigungen.

GCKeyboardInput

Der GameController-Namespace bietet Unterstützung für externe Gamecontroller.

GCKeyCode

Der GameController-Namespace bietet Unterstützung für externe Gamecontroller.

GCMicroGamepad

Eine logische Zuordnung von Hardwarecontroller-Steuerelementen zu einer Reihe von In-Game-Elementen.

GCMicroGamepadSnapshot

Ruft Momentaufnahmen des Zustands eines Mikro-Gamepads ab.

GCMotion

Enthält Positionsdaten eines Gamecontrollers.

GCMouse

Der GameController-Namespace bietet Unterstützung für externe Gamecontroller.

GCMouse.Notifications

Von der GCMouse Klasse gepostete Benachrichtigungen.

GCMouseInput

Der GameController-Namespace bietet Unterstützung für externe Gamecontroller.

GCPhysicalInputElementCollection<KeyIdentifierType,ElementIdentifierType>

Der GameController-Namespace bietet Unterstützung für externe Gamecontroller.

GCPhysicalInputProfile

Der GameController-Namespace bietet Unterstützung für externe Gamecontroller.

GCProductCategory

Der GameController-Namespace bietet Unterstützung für externe Gamecontroller.

GCRacingWheel

Der GameController-Namespace bietet Unterstützung für externe Gamecontroller.

GCRacingWheel.Notifications

Von der GCRacingWheel Klasse gepostete Benachrichtigungen.

GCRacingWheelInput

Der GameController-Namespace bietet Unterstützung für externe Gamecontroller.

GCRacingWheelInputState

Der GameController-Namespace bietet Unterstützung für externe Gamecontroller.

GCSteeringWheelElement

Der GameController-Namespace bietet Unterstützung für externe Gamecontroller.

GCVirtualController

Der GameController-Namespace bietet Unterstützung für externe Gamecontroller.

GCVirtualControllerConfiguration

Der GameController-Namespace bietet Unterstützung für externe Gamecontroller.

GCVirtualControllerElementConfiguration

Der GameController-Namespace bietet Unterstützung für externe Gamecontroller.

GCXboxGamepad

Der GameController-Namespace bietet Unterstützung für externe Gamecontroller.

UISceneConnectionOptions_GameController

Der GameController-Namespace bietet Unterstützung für externe Gamecontroller.

Strukturen

Name Beschreibung
GCAcceleration

Der GameController-Namespace bietet Unterstützung für externe Gamecontroller.

GCDualSenseAdaptiveTriggerPositionalAmplitudes

Der GameController-Namespace bietet Unterstützung für externe Gamecontroller.

GCDualSenseAdaptiveTriggerPositionalResistiveStrengths

Der GameController-Namespace bietet Unterstützung für externe Gamecontroller.

GCExtendedGamepadSnapshotData

Der GameController-Namespace bietet Unterstützung für externe Gamecontroller.

GCExtendedGamepadSnapShotDataV100

Der Zustand eines GCExtendedGamepad. Produziert von TryGetSnapShotData(NSData, GCExtendedGamepadSnapShotDataV100).

GCGamepadSnapShotDataV100

Der Zustand eines GCGamepad. Produziert von TryGetSnapshotData(NSData, GCGamepadSnapShotDataV100).

GCMicroGamepadSnapshotData

Der GameController-Namespace bietet Unterstützung für externe Gamecontroller.

GCMicroGamepadSnapShotDataV100

Stellt den sofortigen Zustand eines Mikro-Gamepads im V100-Format zu einem bestimmten Zeitpunkt dar.

GCPoint2

Stellt ein geordnetes Paar von Gleitkomma-X- und Y-Koordinaten dar, das einen Punkt in einer zweidimensionalen Ebene definiert.

GCQuaternion

Der GameController-Namespace bietet Unterstützung für externe Gamecontroller.

GCRotationRate

Der GameController-Namespace bietet Unterstützung für externe Gamecontroller.

Schnittstellen

Name Beschreibung
IGCAxis2DInput

Diese Schnittstelle stellt das Objective-C-Protokoll GCAxis2DInputdar.

IGCAxisElement

Diese Schnittstelle stellt das Objective-C-Protokoll GCAxisElementdar.

IGCAxisInput

Diese Schnittstelle stellt das Objective-C-Protokoll GCAxisInputdar.

IGCButtonElement

Diese Schnittstelle stellt das Objective-C-Protokoll GCButtonElementdar.

IGCDevice

Diese Schnittstelle stellt das Objective-C-Protokoll GCDevicedar.

IGCDevicePhysicalInput

Diese Schnittstelle stellt das Objective-C-Protokoll GCDevicePhysicalInputdar.

IGCDevicePhysicalInputState

Diese Schnittstelle stellt das Objective-C-Protokoll GCDevicePhysicalInputStatedar.

IGCDevicePhysicalInputStateDiff

Diese Schnittstelle stellt das Objective-C-Protokoll GCDevicePhysicalInputStateDiffdar.

IGCDirectionPadElement

Diese Schnittstelle stellt das Objective-C-Protokoll GCDirectionPadElementdar.

IGCGameControllerSceneDelegate

Diese Schnittstelle stellt das Objective-C-Protokoll GCGameControllerSceneDelegatedar.

IGCLinearInput

Diese Schnittstelle stellt das Objective-C-Protokoll GCLinearInputdar.

IGCPhysicalInputElement

Diese Schnittstelle stellt das Objective-C-Protokoll GCPhysicalInputElementdar.

IGCPhysicalInputSource

Diese Schnittstelle stellt das Objective-C-Protokoll GCPhysicalInputSourcedar.

IGCPressedStateInput

Diese Schnittstelle stellt das Objective-C-Protokoll GCPressedStateInputdar.

IGCRelativeInput

Diese Schnittstelle stellt das Objective-C-Protokoll GCRelativeInputdar.

IGCSwitchElement

Diese Schnittstelle stellt das Objective-C-Protokoll GCSwitchElementdar.

IGCSwitchPositionInput

Diese Schnittstelle stellt das Objective-C-Protokoll GCSwitchPositionInputdar.

IGCTouchedStateInput

Diese Schnittstelle stellt das Objective-C-Protokoll GCTouchedStateInputdar.

Enumerationen

Name Beschreibung
GCControllerHomeButtonSettingCustomizationStatus

Gibt an, ob der Benutzer eine Einstellung für die Starttaste des Controllers angepasst hat.

GCControllerHomeButtonSettingInAppAction

Gibt an, wie das System auf einen Steuerschalter "Start" reagiert, während die Anwendung ganz vorne ist.

GCControllerHomeButtonSettingsCustomizationActivity

Gibt die Einstellung für die Controller-Startschaltfläche an, die angepasst werden soll.

GCControllerHomeButtonSettingSystemAction

Gibt die Systemaktion an, die als Reaktion auf die Taste "Start" des Controllers ausgeführt wurde.

GCControllerPlayerIndex

Listet die Indizes des Spielercontrollers auf.

GCDeviceBatteryState

Der GameController-Namespace bietet Unterstützung für externe Gamecontroller.

GCDevicePhysicalInputElementChange

Der GameController-Namespace bietet Unterstützung für externe Gamecontroller.

GCDualSenseAdaptiveTriggerMode

Der GameController-Namespace bietet Unterstützung für externe Gamecontroller.

GCDualSenseAdaptiveTriggerStatus

Der GameController-Namespace bietet Unterstützung für externe Gamecontroller.

GCExtendedGamepadSnapshotDataVersion

Der GameController-Namespace bietet Unterstützung für externe Gamecontroller.

GCInputAxisName

Der GameController-Namespace bietet Unterstützung für externe Gamecontroller.

GCInputButtonName

Der GameController-Namespace bietet Unterstützung für externe Gamecontroller.

GCInputDirectional

Der GameController-Namespace bietet Unterstützung für externe Gamecontroller.

GCInputDirectionPadName

Der GameController-Namespace bietet Unterstützung für externe Gamecontroller.

GCInputElementName

Der GameController-Namespace bietet Unterstützung für externe Gamecontroller.

GCInputMicroGamepad

Der GameController-Namespace bietet Unterstützung für externe Gamecontroller.

GCMicroGamepadSnapshotDataVersion

Der GameController-Namespace bietet Unterstützung für externe Gamecontroller.

GCPhysicalInputSourceDirection

Der GameController-Namespace bietet Unterstützung für externe Gamecontroller.

GCSystemGestureState

Der GameController-Namespace bietet Unterstützung für externe Gamecontroller.

GCTouchState

Der GameController-Namespace bietet Unterstützung für externe Gamecontroller.

GCUIEventTypes

Der GameController-Namespace bietet Unterstützung für externe Gamecontroller.

Delegaten

Name Beschreibung
ElementValueDidChangeHandler

Der GameController-Namespace bietet Unterstützung für externe Gamecontroller.

GCAxis2DInputValueDidChangeCallback

Der GameController-Namespace bietet Unterstützung für externe Gamecontroller.

GCControllerAxisValueChangedHandler

Der Delegat, der als Wertänderungshandler für ValueChangedHandler.

GCControllerButtonTouchedChanged

Der GameController-Namespace bietet Unterstützung für externe Gamecontroller.

GCControllerButtonValueChanged

Delegieren für ValueChangedHandler und PressedChangedHandler.

GCControllerDirectionPadValueChangedHandler

Der Delegat, der als Wertänderungshandler für ValueChangedHandler.

GCControllerHomeButtonSettingsDidChangeHandler

Der Handler, der aufgerufen wird, nachdem sich die Einstellungen für die Startschaltfläche des Controllers geändert haben.

GCControllerTouchpadHandler

Der GameController-Namespace bietet Unterstützung für externe Gamecontroller.

GCExtendedGamepadValueChangedHandler

Der Delegat, der als Wertänderungshandler für ValueChangedHandler.

GCGamepadValueChangedHandler

Der Delegat, der als Wertänderungshandler für ValueChangedHandler.

GCKeyboardValueChangedHandler

Der GameController-Namespace bietet Unterstützung für externe Gamecontroller.

GCMicroGamepadValueChangedHandler

Ein Handler, der aufgerufen wird, wenn ein einzelnes Element eines Controllers geändert wird.

GCMouseMoved

Der GameController-Namespace bietet Unterstützung für externe Gamecontroller.

GCVirtualControllerElementUpdateBlock

Der GameController-Namespace bietet Unterstützung für externe Gamecontroller.

InputStateAvailableHandler

Der GameController-Namespace bietet Unterstützung für externe Gamecontroller.

Hinweise

Gamecontroller sind in zwei Formen verfügbar: "Formanpassungscontroller", die ein iOS-Gerät und "erweiterte drahtlose" Controller enthalten, die drahtlos mit einem iOS-Gerät oder einem Mac verbunden sind.

Gamecontroller müssen optionale Komponenten sein: Spieleentwickler müssen ihr Spiel von Benutzern spielen lassen, die nicht über Gamecontroller verfügen.

Formularanpassungscontroller werden automatisch vom System erkannt. Erweiterte Drahtlose Controller werden vom System nach dem Aufrufen StartWirelessControllerDiscovery des Anwendungsentwicklers ermittelt und führen dazu, dass der ObserveDidConnect Benachrichtigungshandler ausgelöst wird. Wenn drahtlose Controller getrennt werden, wird die ObserveDidDisconnect Benachrichtigung ausgelöst.

Es gibt zwei unterstützte Profile für Gamecontroller: GCGamepad und GCExtendedGamepad. A GCController verfügt über einen Wert ungleich NULL für seine Gamepad Eigenschaft ExtendedGamepad , der Anwendungsentwickler muss diese lesen, um den Typ zu bestimmen.

GCGamepads haben zwei Schultertasten, ein D-Pad (siehe GCControllerDirectionPad) und 4 Gesichtstasten mit der Bezeichnung Y-B-A-X.

GCExtendedGamepads haben die gleichen Elemente, plus zwei Triggertasten und zwei Joysticks (siehe GCControllerAxisInput). Apple konzeptionelle Schematik zeigt zusätzlich ein LED-Array an, aber es gibt derzeit keinen programmgesteuerten Zugriff auf dieses Element.

Es gibt drei Möglichkeiten zum Lesen von Gamecontrollerdaten:

TechniqueMethode(n)Verwenden
AbfrageEigenschaften wie IsPressed oder XAxisDirekt aus der Spielschleife lesen (siehe Update).
EreignisgesteuertEigenschaft des ValueChangedHandler Elements (z. B ValueChangedHandler. )GameController verarbeitet Updates im Hauptthread. Das Framework stellt sicher, dass gleichzeitig vorkommende Ereignisse zu einer Reihe einzelner Rückrufe führen.
Koordinierte Momentaufnahme SaveSnapshot, SaveSnapshotSnapshots the controller state. Geeignet für Marshalling, Serialisierung oder verzögerte Verarbeitung.

Die hauptklassen im Game Controller-Namespace sind in der folgenden Abbildung dargestellt: