Steamworks-dokumentaatio
ISteamController-käyttöliittymä (vanhentunut)
Steam Controller -ohjaimen tuen ohjelmointirajapinta.

Tämä ohjelmointirajapinta on vanhentunut, uudempi on ISteamInput. Lisätietoja siitä löytyy ISteamInput-käyttöliittymä-dokumentaatiosta.

Lisätietoja löytyy Steam-syöte-dokumentaatiosta.

Jäsenfunktiot

ISteamController-käyttöliittymän jäsenfunktioita kutsutaan globaalilla SteamController()-aksessorifunktiolla.

ActivateActionSet

void ActivateActionSet( ControllerHandle_t controllerHandle, ControllerActionSetHandle_t actionSetHandle );
NimiTyyppiKuvaus
controllerHandleControllerHandle_tOhjaimen kahva, jolle haluat aktivoida toimintosarjan.
actionSetHandleControllerActionSetHandle_tToimintosarjan kahva, jonka haluat aktivoida.

Uudelleenmäärittää ohjaimen käyttämään määritettyä toimintosarjaa (esimerkiksi "valikko", "kävele" tai "aja").

Tämä vie vähän resursseja, ja sitä voidaan turvallisesti kutsua toistuvasti. On usein helpompaa kutsua sitä tilan silmukoista kuin yrittää sijoittaa se kaikkiin tilasiirtymiin.

Esimerkki:
void updateStateLoop() { switch( currentState ) { case MENU: SteamController()->ActivateActionSet( controllerHandle1, menuSetHandle ); doMenuStuff(); break; case WALKING: SteamController()->ActivateActionSet( controllerHandle1, walkingSetHandle ); doWalkingStuff(); break; case DRIVING: SteamController()->ActivateActionSet( controllerHandle1, drivingSetHandle ); doDrivingStuff(); break; case FIGHTING: SteamController()->ActivateActionSet( controllerHandle1, fightingSetHandle ); doFightingStuff(); break; } }

Aktivoi kaikki ohjaimet

Ohjaimet kannattaa usein aktivoida kerralla, eikä yksittäin. Ohjaimen kahvana tulisi käyttää tässä STEAM_CONTROLLER_HANDLE_ALL_CONTROLLERS-vakiota. Voit käyttää tätä arvoa myös missä tahansa funktiossa, joka vaatii yksittäisen ohjaimen kahvan.

Esimerkki:
void updateStateLoop() { switch( currentState ) { case MENU: SteamController()->ActivateActionSet( STEAM_CONTROLLER_HANDLE_ALL_CONTROLLERS, menuSetHandle ); doMenuStuff(); break; case WALKING: SteamController()->ActivateActionSet( STEAM_CONTROLLER_HANDLE_ALL_CONTROLLERS, walkingSetHandle ); doWalkingStuff(); break; case DRIVING: SteamController()->ActivateActionSet( STEAM_CONTROLLER_HANDLE_ALL_CONTROLLERS, drivingSetHandle ); doDrivingStuff(); break; case FIGHTING: SteamController()->ActivateActionSet( STEAM_CONTROLLER_HANDLE_ALL_CONTROLLERS, fightingSetHandle ); doFightingStuff(); break; } }

ActivateActionSetLayer

void ActivateActionSetLayer( ControllerHandle_t controllerHandle, ControllerActionSetHandle_t actionSetLayerHandle );
NimiTyyppiKuvaus
controllerHandleControllerHandle_tOhjaimen kahva, jolle haluat aktivoida toimintosarjan kerroksen.
actionSetHandleControllerActionSetHandle_tToimintosarjan kerroksen kahva, jonka haluat aktivoida.

Uudelleenmäärittää ohjaimen käyttämään tiettyä toimintosarjan kerrosta.

Toimintosarjan kerrokset -dokumentaatiossa on lisätietoja sekä yksityiskohtainen käytännön esimerkki.

Esimerkki:
SteamController()->ActivateActionSetLayer( controllerHandle1, myActionSetLayer );

DeactivateActionSetLayer

void DeactivateActionSetLayer( ControllerHandle_t controllerHandle, ControllerActionSetHandle_t actionSetLayerHandle );
NimiTyyppiKuvaus
controllerHandleControllerHandle_tOhjaimen kahva, jolta haluat poistaa toimintosarjan kerroksen aktivoinnin.
actionSetHandleControllerActionSetHandle_tToimintosarjan kerroksen kahva, jonka aktivoinnin haluat poistaa.

Uudelleenmäärittää ohjaimen, jotta se lopettaa määritetyn toimintosarjan kerroksen käyttämisen.

Esimerkki:
SteamController()->DeactivateActionSetLayer( controllerHandle1, myActionSetLayer );

DeactivateAllActionSetLayers

void DeactivateAllActionSetLayers( ControllerHandle_t controllerHandle );
NimiTyyppiKuvaus
controllerHandleControllerHandle_tOhjaimen kahva, josta haluat poistaa kaikki toimintosarjan kerrosten aktivoinnit.

Uudelleenmäärittää ohjaimen, jotta se lopettaa kaikkien toimintosarjan kerrosten käyttämisen.

Esimerkki:
SteamController()->DeactivateAllActionSetLayers( controllerHandle1 );

GetActiveActionSetLayers

int GetActiveActionSetLayers( ControllerHandle_t controllerHandle, ControllerActionSetHandle_t *handlesOut );
NimiTyyppiKuvaus
controllerHandleControllerHandle_tOhjaimen kahva, jolle haluat hakea aktiivisen toimintosarjan kerroksen.
handlesOutControllerActionSetHandle_t*Tämän pitää osoittaa STEAM_CONTROLLER_MAX_COUNT-vakion kokoiseen ControllerHandle_t-taulukkoon.

Täyttää taulukon määritetyn ohjaimen kahvalle kaikilla tällä hetkellä aktiivisilla toimintosarjan kerroksilla.

Esimerkki:
ControllerHandle_t *handlesOut = new ControllerHandle_t []; SteamController()->GetActiveActionSetLayers( controllerHandle1, &handlesOut );

GetActionSetHandle

ControllerActionSetHandle_t GetActionSetHandle( const char *pszActionSetName );
NimiTyyppiKuvaus
pszActionSetNameconst char *Pelin VDF-tiedostossa määritetyn toimintosarjan merkkijonotunniste.

Hakee toimintosarjan kahvan. Tämä on parasta tehdä käynnistyksen yhteydessä ja tallentaa kahvat tulevia ohjelmointirajapinnan kutsuja varten.

Paluuarvot: ControllerActionSetHandle_t
Määritetyn toimintosarjan kahva.

Esimerkki:
ControllerActionSetHandle_t fightingSetHandle = SteamController()->GetActionSetHandle( "fighting" );

GetAnalogActionData

ControllerAnalogActionData_t GetAnalogActionData( ControllerHandle_t controllerHandle, ControllerAnalogActionHandle_t analogActionHandle );
NimiTyyppiKuvaus
controllerHandleControllerHandle_tOhjaimen kahva, johon haluat suorittaa kyselyn.
analogActionHandleControllerAnalogActionHandle_tAnalogisen toiminnon kahva, johon haluat suorittaa kyselyn.

Palauttaa annetun analogisen pelitoiminnon nykytilan.

Paluuarvot: ControllerAnalogActionData_t
Määritetyn analogisen toiminnon nykytila.

Esimerkki:
ControllerAnalogActionData_t data = SteamController()->GetAnalogActionData( controller1Handle, moveHandle );

GetAnalogActionHandle

ControllerAnalogActionHandle_t GetAnalogActionHandle( const char *pszActionName );
NimiTyyppiKuvaus
pszActionNameconst char *Pelin VDF-tiedostossa määritetyn analogisen toiminnon merkkijonotunniste.

Hakee määritetyn analogisen toiminnon kahvan.

HUOMAA! Tämä funktio ei hyväksy toimintosarjan kahvan parametriä. Eli jokaisella VDF-tiedoston toiminnolla täytyy olla yksilöity merkkijonotunniste. Toisin sanoen, jos käytät "up"-nimistä toimintoa kahdessa eri toimintosarjassa, funktio palauttaa aina vain yhden niistä ja jättää toisen huomiotta.

Paluuarvot: ControllerAnalogActionHandle_t
Määritetyn analogisen toiminnon nykytila.

Esimerkki:
ControllerAnalogActionHandle_t moveHandle = SteamController()->GetAnalogActionHandle( "move" );

GetAnalogActionOrigins

int GetAnalogActionOrigins( ControllerHandle_t controllerHandle, ControllerActionSetHandle_t actionSetHandle, ControllerAnalogActionHandle_t analogActionHandle, EControllerActionOrigin *originsOut );
NimiTyyppiKuvaus
controllerHandleControllerHandle_tOhjaimen kahva, johon haluat suorittaa kyselyn.
actionSetHandleControllerActionSetHandle_tToimintosarjan kahva, johon haluat suorittaa kyselyn.
analogActionHandleControllerAnalogActionHandle_tAnalogisen toiminnon kahva, johon haluat suorittaa kyselyn.
originsOutEControllerActionOrigin *A STEAM_CONTROLLER_MAX_ORIGINS sized array of EControllerActionOrigin handles.

Hakee toimintosarjassa olevan analogisen toiminnon lähteen/lähteet täyttämällä originsOut-parametrin EControllerActionOrigin-kahvoilla. Käytä tätä toimintoon liittyvän näyttökehotteen näyttämiseen.

Paluuarvot: int
originsOut-parametrissä välitettyjen lähteiden määrä.

Esimerkki:
EControllerActionOrigin *origins = new EControllerActionOrigin[]; SteamController()->GetAnalogActionOrigins( controller1Handle, walkingSetHandle, moveHandle, origins );

GetConnectedControllers

int GetConnectedControllers( ControllerHandle_t *handlesOut );
NimiTyyppiKuvaus
handlesOutControllerHandle_t *Tämän pitää osoittaa STEAM_CONTROLLER_MAX_COUNT-vakion kokoiseen ControllerHandle_t-taulukkoon.

Luetteloi tällä hetkellä kytketyt ohjaimet täyttämällä handlesOut-parametrin ohjaimen kahvoilla.

Paluuarvot: int
handlesOut-parametriin kirjoitettujen kahvojen määrä.

Esimerkki:
ControllerHandle_t *controllerHandles = new ControllerHandle_t[]; SteamController()->GetConnectedControllers( controllerHandles );

GetControllerForGamepadIndex

ControllerHandle_t GetControllerForGamepadIndex( int nIndex );
NimiTyyppiKuvaus
nIndexintEmuloidun peliohjaimen indeksi, jolle haluat hakea ohjaimen kahvan.

Palauttaa määritettyyn emuloituun peliohjaimeen liitetyn ohjaimen kahvan. Voidaan käyttäää GetInputTypeForHandle-jäsenfunktion kanssa päättelemään Steam-syötteen peliohjainemulaatiota käyttävän ohjaimen tyyppi.

Paluuarvot: ControllerHandle_t


Esimerkki:
// Korvaa kysymäsi Xinput-paikka. Numero on välillä 0–3. int nXinputSlotIndex = 0; ControllerHandle_t controllerHandle = SteamController()->GetControllerForGamepadIndex( nXinputSlotIndex ); if ( controllerHandle == 0 ) { // Käyvät syötteen kahvat eivät ole nolla, tämä on normaali Xbox-ohjain. } else { ESteamInputType inputType = SteamController()->GetInputTypeForHandle(controllerHandle); switch(inputType) { case k_ESteamInputType_Unknown: printf("unknown\n!"); break; case k_ESteamInputType_SteamController: printf("Steam controller\n!"); break; case k_ESteamInputType_XBox360Controller: printf("XBox 360 controller\n!"); break; case k_ESteamInputType_XBoxOneController: printf("XBox One controller\n!"); break; case k_ESteamInputType_GenericXInput: printf("Generic XInput\n!"); break; case k_ESteamInputType_PS4Controller: printf("PS4 controller\n!"); break; } }

GetCurrentActionSet

ControllerActionSetHandle_t GetCurrentActionSet( ControllerHandle_t controllerHandle );
NimiTyyppiKuvaus
controllerHandleControllerHandle_tOhjaimen kahva, johon haluat suorittaa kyselyn.

Hakee määritetyn ohjaimen tällä hetkellä aktiivisen toimintosarjan.

Paluuarvot: ControllerActionSetHandle_t
Määritetyn ohjaimen aktivoidun toimintosarjan kahva.

Esimerkki:
ControllerActionSetHandle_t controller1Set = SteamController()->GetCurrentActionSet(controller1Handle);

GetDigitalActionData

ControllerDigitalActionData_t GetDigitalActionData( ControllerHandle_t controllerHandle, ControllerDigitalActionHandle_t digitalActionHandle );
NimiTyyppiKuvaus
controllerHandleControllerHandle_tOhjaimen kahva, johon haluat suorittaa kyselyn.
digitalActionHandleControllerDigitalActionHandle_tDigitaalisen toiminnon kahva, johon haluat suorittaa kyselyn.

Palauttaa annetun digitaalisen pelitoiminnon nykytilan.

Paluuarvot: ControllerDigitalActionData_t
Määritetyn digitaalisen toiminnon nykytila.

GetDigitalActionHandle

ControllerDigitalActionHandle_t GetDigitalActionHandle( const char *pszActionName );
NimiTyyppiKuvaus
pszActionNameconst char *Pelin VDF-tiedostossa määritetyn digitaalisen toiminnon merkkijonotunniste.

Hakee määritetyn digitaalisen toiminnon kahvan.

HUOMAA! Tämä funktio ei hyväksy toimintosarjan kahvan parametriä. Eli jokaisella VDF-tiedoston toiminnolla täytyy olla yksilöity merkkijonotunniste. Toisin sanoen, jos käytät "up"-nimistä toimintoa kahdessa eri toimintosarjassa, funktio palauttaa aina vain yhden niistä ja jättää toisen huomiotta.

Paluuarvot: ControllerDigitalActionHandle_t
Määritetyn digitaalisen toiminnon kahva0>.

Esimerkki:
ControllerDigitalActionHandle_t punchHandle = SteamController()->GetDigitalActionHandle( "punch" );

GetDigitalActionOrigins

int GetDigitalActionOrigins( ControllerHandle_t controllerHandle, ControllerActionSetHandle_t actionSetHandle, ControllerDigitalActionHandle_t digitalActionHandle, EControllerActionOrigin *originsOut );
NimiTyyppiKuvaus
controllerHandleControllerHandle_tOhjaimen kahva, johon haluat suorittaa kyselyn.
actionSetHandleControllerActionSetHandle_tToimintosarjan kahva, johon haluat suorittaa kyselyn.
digitalActionHandleControllerDigitalActionHandle_tDigitaalisen toiminnon kahva, johon haluat suorittaa kyselyn.
originsOutEControllerActionOrigin *A STEAM_CONTROLLER_MAX_ORIGINS sized array of EControllerActionOrigin handles.

Hakee toimintosarjassa olevan digitaalisen toiminnon lähteen/lähteet täyttämällä originsOut-parametrin EControllerActionOrigin-kahvoilla. Käytä tätä toimintoon liittyvän näyttökehotteen näyttämiseen.

Paluuarvot: int
originsOut-parametrissä välitettyjen lähteiden määrä.

Esimerkki:
EControllerActionOrigin *origins = new EControllerActionOrigin[]; SteamController()->GetDigitalActionOrigins( controller1Handle, fightingSetHandle, punchHandle, origins );

GetGamepadIndexForController

int GetGamepadIndexForController( ControllerHandle_t ulControllerHandle );
NimiTyyppiKuvaus
ulControllerHandleControllerHandle_tOhjaimen kahva, jonka peliohjaimen indeksi halutaan hakea.

Palauttaa määritettyyn ohjaimeen liitetyn peliohjaimen indeksin, jos peliohjain emuloidaan.

Paluuarvot: int


Esimerkki:
int gamepadIndex = SteamController()->GetGamepadIndexForController( controller1Handle );

GetGlyphForActionOrigin

const char * GetGlyphForActionOrigin( EControllerActionOrigin eOrigin );
NimiTyyppiKuvaus
eOriginEControllerActionOrigin

Hakee näytöllä olevan merkin kuvan paikallisen polun tietylle lähteelle.

Paluuarvot: const char *
Merkin .png-tiedoston polku.
Esim. "C:\Program Files (x86)\Steam\tenfoot\resource\images\library\controller\api\ps4_button_x.png"

Esimerkki:
// Hakee lähteet "punch"-toiminnolle. EControllerActionOrigin *origins = new EControllerActionOrigin[]; SteamController()->GetDigitalActionOrigins( controller1Handle, fightingSetHandle, punchHandle, origins ); EControllerActionOrigin firstOrigin = origins[0]; //Eli k_EControllerActionOrigin_PS4_X // Tämä on pelin funktio, joka yrittää hakea merkin mukautetun kuvan. int glyphTextureID = getHardCodedButtonGlyphTexture( firstOrigin ); // Emme julkaisseet pelissä kuvaa tälle lähteelle. Steam on ilmeisesti lisännyt tuen //uudelle ohjaimelle tai me unohdimme lisätä tämän kuvan. //(Eli meillä on vain Steam Controllerin merkit, mutta tämä on PlayStation 4 -ohjain). if( glyphTextureID == -1 ) { // Hae sen sijaan vaan kuva Steam-asiakasohjelmasta. const char *localGlyphPath = SteamController()->GetGlyphForActionOrigin( firstOrigin ); printf( "path = %s\n", localGlyphPath ); // "path = C:\Program Files (x86)\Steam\tenfoot\resource\images\library\controller\api\ps4_button_x.png" //Pelin funktio, joka kääntää tiedostopolun käytettäväksi pelitekstuuriksi. glyphTextureID = loadButtonGlyphTextureFromLocalPath( localGlyphPath ); }

GetInputTypeForHandle

ESteamInputType GetInputTypeForHandle( ControllerHandle_t controllerHandle );
NimiTyyppiKuvaus
controllerHandleControllerHandle_tOhjaimen kahva, jonka syötetyypin (laitemallin) haluat kysyä.

Palauttaa määritetyn ohjaimen syötetyypin (laitemallin). Tämä kertoo, onko ohjain Steam Controller-, Xbox 360- tai PS4-ohjain vai joku muu. Lisätietoa löytyy Steamin tuettujen ohjainten tietokannasta.

Paluuarvot: ESteamInputType


Esimerkki:
ESteamInputType inputType = SteamController()->GetInputTypeForHandle(controller1Handle); switch(inputType) { case k_ESteamInputType_Unknown: printf("unknown\n!"); break; case k_ESteamInputType_SteamController: printf("Steam controller\n!"); break; case k_ESteamInputType_XBox360Controller: printf("XBox 360 controller\n!"); break; case k_ESteamInputType_XBoxOneController: printf("XBox One controller\n!"); break; case k_ESteamInputType_GenericXInput: printf("Generic XInput\n!"); break; case k_ESteamInputType_PS4Controller: printf("PS4 controller\n!"); break; }

GetMotionData

ControllerMotionData_t GetMotionData( ControllerHandle_t controllerHandle );
NimiTyyppiKuvaus
controllerHandleControllerHandle_tOhjaimen kahva, jonka liikedata halutaan hakea.

Palauttaa määritetyn ohjaimen liikkeen raakadatan.

Paluuarvot: ControllerMotionData_t


Esimerkki:
ControllerMotionData_t motionData = SteamController()->GetControllerMotionData( controllerHandle );

GetStringForActionOrigin

const char * GetStringForActionOrigin( EControllerActionOrigin eOrigin );
NimiTyyppiKuvaus
eOriginEControllerActionOrigin

Palauttaa määritetyn lähteen lokalisoidun merkkijonon (Steamin kieliasetuksista).

Paluuarvot: const char *


Esimerkki:
EControllerActionOrigin *origins = new EControllerActionOrigin[]; SteamController()->GetDigitalActionOrigins( controller1Handle, fightingSetHandle, punchHandle, origins ); const char * punchString = SteamController()->GetStringForActionOrigin( origins[0] ); printf("punch = %s\n",punchString);

Init

bool Init();
Pitää kutsua, kun ISteamController-käyttöliittymän käyttö aloitetaan.

Paluuarvot: bool
Palauttaa aina arvon true.

Esimerkki:
SteamController()->Init();

RunFrame

void RunFrame();
Synkronoi ohjelmointirajapinnan tilan viimeisimmillä saatavilla olevilla Steam Controller -syötteillä. Tämä suoritetaan automaattisesti SteamAPI_RunCallbacks-funktion toimesta, mutta pienimmän mahdollisen vasteajan saamiseksi voit kutsua tätä suoraan ennen ohjaimen tilan lukemista.

Esimerkki:
SteamController()->RunFrame();

SetLEDColor

void SetLEDColor( ControllerHandle_t controllerHandle, uint8 nColorR, uint8 nColorG, uint8 nColorB, unsigned int nFlags );
NimiTyyppiKuvaus
controllerHandleControllerHandle_tOhjaimen kahva, johon haluat vaikuttaa.
nColorRuint8Värin punaisen komponentin määritys (0–255).
nColorGuint8Värin vihreän komponentin määritys (0–255).
nColorBuint8Värin sinisen komponentin määritys (0–255).
nFlagsunsigned intBittipeitetyt liput yhdistettyinä ESteamControllerLEDFlag-jäsenfunktiossa määritettyihin arvoihin.

Asettaa ohjaimen LED-valon värin tuetuille ohjaimille.

Huomaa:
Steam Controller tukee ainoastaan valkoista väriä ja tulkitsee RGB-arvot harmaasävyn arvoiksi, jotka vaikuttavat Steam-painikkeen LED-valon kirkkauteen.
DualShock 4 reagoi kaikkeen väritietoon ja käyttää arvoja valopalkin värin ja kirkkauden määrittämiseen.

Esimerkki:
// Palauta ohjaimen 1 käyttäjän oletusväri: SteamController()->SetLEDColor( controller1Handle, 0, 0, 0, k_ESteamControllerLEDFlag_RestoreUserDefault ); // Aseta ohjaimen 2 väri magentaksi: SteamController()->SetLEDColor( controller2Handle, 255, 0, 255, k_ESteamControllerLEDFlag_SetColor );

ShowAnalogActionOrigins

bool ShowAnalogActionOrigins( ControllerHandle_t controllerHandle, ControllerAnalogActionHandle_t analogActionHandle, float flScale, float flXPosition, float flYPosition );
NimiTyyppiKuvaus
controllerHandleControllerHandle_t
analogActionHandleControllerAnalogActionHandle_t
flScalefloat
flXPositionfloat
flYPositionfloat

Vanhentunut.

Paluuarvot: bool
Palauttaa aina arvon true.

ShowBindingPanel

bool ShowBindingPanel( ControllerHandle_t controllerHandle );
NimiTyyppiKuvaus
controllerHandleControllerHandle_tOhjaimen kahva, jolle haluat tuoda määritysnäytön esiin.

Avaa Steam-yhteisönäkymän ja tuo määritysnäytön esiin.

Paluuarvot: bool
true kun onnistui; false, jos yhteisönäkymä on otettu pois päältä, se ei ole saatavilla tai käyttäjä ei ole Televisiotilassa.

Esimerkki:
SteamController()->ShowBindingPanel( myControllerHandle );

ShowDigitalActionOrigins

bool ShowDigitalActionOrigins( ControllerHandle_t controllerHandle, ControllerDigitalActionHandle_t digitalActionHandle, float flScale, float flXPosition, float flYPosition );
NimiTyyppiKuvaus
controllerHandleControllerHandle_t
digitalActionHandleControllerDigitalActionHandle_t
flScalefloat
flXPositionfloat
flYPositionfloat

Vanhentunut.

Paluuarvot: bool
Palauttaa aina arvon true.

Sammutus

bool Shutdown();
Täytyy kutsua, kun ISteamController-käyttöliittymän käyttö lopetetaan.

Paluuarvot: bool
Palauttaa aina arvon true.

Esimerkki:
SteamController()->Shutdown();

StopAnalogActionMomentum

void StopAnalogActionMomentum( ControllerHandle_t controllerHandle, ControllerAnalogActionHandle_t eAction );
NimiTyyppiKuvaus
controllerHandleControllerHandle_tOhjaimen kahva, johon haluat vaikuttaa.
eActionControllerAnalogActionHandle_tAnaloginen toiminto liikkeen pysäyttämiseen.

Pysäyttää analogisen toiminnon liikkeen (kun saatavilla, esim. kosketuslevy, jossa on virtuaalisen pallohiiren asetukset).

HUOMAA!
Tämä pysäyttää myös kaikki siihen liittyvät haptiset toiminnot. Tämä on hyödyllinen sellaisissa tilanteissa, joissa haluat ilmaista käyttäjälle, että toiminnon raja on saavutettu, esimerkiksi karusellin pyörittämisessä tai verkkosivun vierittämisessä.

Esimerkki:
SteamController()->StopAnalogActionMomentum( controller1Handle, moveHandle );

TriggerHapticPulse

void TriggerHapticPulse( ControllerHandle_t controllerHandle, ESteamControllerPad eTargetPad, unsigned short usDurationMicroSec );
NimiTyyppiKuvaus
controllerHandleControllerHandle_tOhjaimen kahva, johon haluat vaikuttaa.
eTargetPadESteamControllerPadMihin haptiseen kosketuslevyyn vaikutetaan.
usDurationMicroSecunsigned shortSykäyksen kesto mikrosekunneissa (sekunnin miljoonasosa).

Aiheuttaa (matalan tason) toistuvan haptisen sykäyksen tuetuilla ohjaimilla.

Huomaa:
Tällä hetkellä vain Steam Controller tukee haptista sykäystä.
Kaikki muut ohjaimet jättävät tämän ohjelmointirajapinnan kutsun huomiotta.
Tyypillinen unsigned short -datatyypin enimmäisarvo on 65535, joka tarkoittaa, että pisimmän tällä metodilla käynnistettävän haptisen sykäyksen kesto on 0,065535 sekuntia (eli alle sekunnin kymmenesosa). Tämä funktio tulisi nähdä alemman tason alkeistyyppinä, joka on tarkoitettu käytettäväksi toistuvasti käyttäjän korkeamman tason toimintoihin luomaan kehittyneempiä toimintoja.

Esimerkki:
//Sykäys kerran, kestää sekunnin kahdeskymmenesosan. SteamController()->TriggerHapticPulse(controller1Handle, k_ESteamControllerPad_Left, 50000);

TriggerRepeatedHapticPulse

void TriggerRepeatedHapticPulse( ControllerHandle_t controllerHandle, ESteamControllerPad eTargetPad, unsigned short usDurationMicroSec, unsigned short usOffMicroSec, unsigned short unRepeat, unsigned int nFlags );
NimiTyyppiKuvaus
controllerHandleControllerHandle_tOhjaimen kahva, johon haluat vaikuttaa.
eTargetPadESteamControllerPadMihin haptiseen kosketuslevyyn vaikutetaan.
usDurationMicroSecunsigned shortSykäyksen kesto mikrosekunneissa (sekunnin miljoonasosissa).
usOffMicroSecunsigned shortSykäysten välisen tauon kesto mikrosekunneissa.
unRepeatunsigned shortusDurationMicroSec / usOffMicroSec -pulssisuhteen toistojen määrä.
nFlagsunsigned intEi tällä hetkellä käytössä, varattu tulevaa käyttöä varten.

Aiheuttaa toistuvan haptisen sykäyksen tuetuilla ohjaimilla.

Huomaa:
Tällä hetkellä vain Steam Controller tukee haptista sykäystä.
Kaikki muut ohjaimet jättävät tämän ohjelmointirajapinnan kutsun huomiotta.
Tämä on käyttäjäystävällisempi funktio kutsuttavaksi kuin TriggerHapticPulse, sillä se voi luoda riittävän pitkiä sykäysmalleja, jotka käyttäjä oikeasti havaitsee.
Kun usDurationMicroSec- ja usOffMicroSec-parametrejä muutetaan, haptisen sykäyksen "tekstuuri" muuttuu.

Esimerkki:
//1 sekunnin sykäys, jossa on päällä–pois päältä -sykäysmalli joka sekunnin kahdeskymmenesosassa. SteamController()->TriggerRepeatedHapticPulse( controller1Handle, k_ESteamControllerPad_Left, 50000, 50000, 10 );

TriggerVibration

void TriggerVibration( ControllerHandle_t controllerHandle, unsigned short usLeftSpeed, unsigned short usRightSpeed );
NimiTyyppiKuvaus
controllerHandleControllerHandle_tOhjaimen kahva, johon haluat vaikuttaa.
usLeftSpeedunsigned shortVasemman tärinämoottorin voimakkuuden arvo.
usRightSpeedunsigned shortOikean tärinämoottorin voimakkuuden arvo.

Käynnistää värinätapahtuman tuetuilla ohjaimilla.

Huomaa:
Tämä ohjelmointirajapinnan kutsu jätetään huomiotta, kun ohjainmalli ei ole yhteensopiva.
Tämä luo perinteisen tärinä-efektin.
Steam Controller emuloi perinteisen tärinän haptiikkaa käyttäen.

Esimerkki:
SteamController()->TriggerVibration( controller1Handle, 10000, 10000 );

GetActionOriginFromXboxOrigin

EControllerActionOrigin GetActionOriginFromXboxOrigin( ControllerHandle_t controllerHandle, EXboxOrigin eOrigin );
NimiTyyppiKuvaus
controllerHandleControllerHandle_tOhjaimen kahva, johon haluat vaikuttaa. Kahvan hakemiseen voidaan käyttää GetControllerForGamepadIndex-jäsenfunktiota.
eOriginEXboxOriginPainike, jolle kuva haetaan (esimerkiksi k_EXboxOrigin_A).

Paluuarvot: EControllerActionOrigin

Hakee toimintolähteen, jota voit käyttää merkin hakutaulussa tai välittää GetGlyphForActionOrigin- tai GetStringForActionOrigin-jäsenfunktioille.


Esimerkki:
int nXinputSlot = 1; // Korvaa sillä Xinput-paikalla, joka on pelaajalle oikea. k_EControllerSourceMode_Dpad_t controller1Handle = GetControllerForGamepadIndex( nXinputSlot ); EControllerActionOrigin buttonOrigin = SteamController()->GetActionOriginFromXboxOrigin( controller1Handle, k_EXboxOrigin_A ); // Hakee kuvan Steam-asiakasohjelmasta. const char *localGlyphPath = SteamController()->GetGlyphForActionOrigin( buttonOrigin ); printf( "path = %s\n", localGlyphPath ); // "path = C:\Program Files (x86)\Steam\tenfoot\resource\images\library\controller\api\ps4_button_x.png" //Pelin funktio, joka muuttaa tiedostopolun käytettäväksi pelitekstuuriksi. glyphTextureID = loadButtonGlyphTextureFromLocalPath( localGlyphPath );ohjaimen kahva

TranslateActionOrigin

EControllerActionOrigin TranslateActionOrigin( ESteamInputType eDestinationInputType, EControllerActionOrigin eSourceOrigin );
NimiTyyppiKuvaus
controllerHandleControllerHandle_tOhjaimen kahva, johon haluat vaikuttaa. Kahvan hakemiseen voidaan käyttää GetControllerForGamepadIndex-jäsenfunktiota.
eDestinationInputTypeESteamInputTypeOhjaintyyppi, johon haluat muuntaa. Steam valitsee samanlaisimman tyypin käyttämästäsi SDK-versiosta, jos k_ESteamInputType_Unknown on käytössä.
eSourceOriginEControllerActionOriginPainike, jonka haluat muuntaa.

Paluuarvot: EControllerActionOrigin

Hakee vastaavan lähteen annetulle ohjaintyypille tai lähimmälle ohjaintyypille, joka oli olemassa SDK:ssa, jolla rakensit pelisi, jos eDestinationInputType on k_ESteamInputType_Unknown. Toimintolähdettä voi käyttää merkin hakutaulussa tai välittää GetGlyphForActionOrigin- tai GetStringForActionOrigin-jäsenfunktioille.


Esimerkki:
int nXinputSlot = 1; // Korvaa Xinput-paikka pelaajan todellisella Xinput-paikalla, oli se mikä tahansa. ControllerHandle_t controller1Handle = GetControllerForGamepadIndex( nXinputSlot ); EControllerActionOrigin buttonOrigin = SteamController()->GetActionOriginFromXboxOrigin( controller1Handle, k_EXboxOrigin_A ); //Eli k_EControllerActionOrigin_PS4_X if ( buttonOrigin >= k_EControllerActionOrigin_Count ) { // Emme julkaisseet pelissä kuvaa tälle lähteelle. Steam on ilmeisesti lisännyt tuen //uudelle ohjaimelle. Haetaan lähin arvo, jota tuettiin käytetyssä SDK:ssa. buttonOrigin = SteamController()->TranslateActionOrigin( k_ESteamInputType_Unknown, buttonOrigin ) } // Tämä on pelin funktio, joka yrittää hakea merkin mukautetun kuvan. int glyphTextureID = getHardCodedButtonGlyphTexture( actionOrigin );

GetControllerBindingRevision

bool GetControllerBindingRevision( ControllerHandle_t controllerHandle, int *pMajor, int *pMinor );
NimiTyyppiKuvaus
controllerHandleControllerHandle_tOhjaimen kahva, johon kysely suoritetaan.
pMajorint * Osoitin integer-arvoon, johon pääversion vaadittu numeroarvo populoidaan.
pMinorint * Osoitin integer-arvoon, johon aliversion vaadittu numeroarvo populoidaan.

Paluuarvot: bool – true, jos laitteen määritykset löydettiin onnistuneesti ja false, jos määritys latautuu edelleen

Hakee vaaditut pää- ja aliversiot Steam-syötteen ohjelmointirajapinnan määrityksille. Aliversiot ovat pieniä muutoksia varten, esimerkiksi valinnaisen toiminnon lisäämistä tai määrityksen lokalisoinnin päivittämistä varten. Kun aliversio päivitetään, vain uusi määritys tulee päivittää asettamalla Käytä toimintolohkoa -lippu. Pääversioita käytetään, kun vaihdetaan toimintosarjojen määrää tai muuten päivitetään määrityksiä niin paljon, ettei vanhat määritykset ole enää käyttökelpoisia. Kun käyttäjän määritys ei ole sopiva nykyisen virallisen määrityksen pääversion kanssa, Steam päivittää pakotetusti käyttäjälle uuden määrityksen. Uudet määritykset pitää tehdä kaikille ohjaimille, kun pääversio päivitetään.

Esimerkki koodista:
int nMinor = -1; int nMinor = -1; const int nCurrentMajorRevision = 1; const int nCurrentMinorRevision = 1; if ( GetControllerBindingRevision( controllerHandle, &nMajor, &nMinor ) ) { if ( nMinorRevision != nCurrentMinorRevision ) { // Aliversio on vanhentunut, mutta ei haittaa. // Tämä korjaantuu seuraavalla kerralla, kun he päivittävät määrityksiä. } if ( nMajorRevision != nCurrentMajorRevision ) { // Tämän pitäisi tapahtua vain pikaisesti, kun Steam havaitsee // ja päivittää pakotetusta käyttäjän version viimeisimpään viralliseen määritykseen. } } else { // Määritystä ei ole ladattu vielä tälle ohjaimelle. }

Esimerkki pelitoimintotiedoston käytöstä:
"In Game Actions" { "major_revision" "0" “minor_revision” “1” "actions" { ...

Tietueet

ISteamController-käyttöliittymän funktiot, joita nämä tietueet voivat palauttaa ja/tai joiden kanssa ne voivat vuorovaikuttaa.

ControllerAnalogActionData_t

Edustaa analogisen toiminnon nykytilaa.

Huomaa:
  • Tarkat arvot, vaihteluväli jne. riippuvat määrityksestä, mutta (laajasti katsottuna) perinteiset analogiset toiminnot tarjoavat normalisoidut liukulukuarvot suurin piirtein arvojen –1.0 ja 1.0 välillä. Kun taas hiiritoiminnot tarjoavat deltapäivitykset, jotka osoittavat edellisen ruudun jälkeen liikutettujen pikselien lukumäärän. Tämän lopputulos on, että hiiritoiminnot tarjoavat paljon suuremmat absoluuttiset x- ja y-arvot, ja ne ovat suhteelliset aiempaan tallennettuun syötepaikkaan, kun taas perinteiset analogiset arvot ovat pienempiä ja suhteellisia keskellä olevaan fyysiseen ankkuripisteeseen.
  • Vaikka hiiritoimintojen tarjoama delta on hyvin samanlainen käyttöjärjestelmän pikselideltaan verrattuna, Steam Controllerin deltat ovat liukulukuja, ei kokonaislukuarvoja. Tämä tarkoittaa vähemmän potentiaalista kvantisointia ja tarkkuuden menetystä, kun data määritetään kameran kiertoon.
  • Yhden akselin analogisessa syötteessä (esim. analogiliipaisin) vain x-akseli sisältää dataa, y-akseli on aina nolla.

NimiTyyppiKuvaus
eModeEControllerSourceModeTästä toiminnosta tulevan datan tyyppi. Tämä vastaa toimintosarjan VDF-määrityksessä määritettyä.
xfloatToiminnon nykytila vaaka-akselilla.
yfloatToiminnon nykytila pystyakselilla.
bActiveboolNäyttää, voiko toimintoa tällä hetkellä sitoa aktiiviseen toimintosarjaan. Jos se ei ole saatavilla TAI se ei kuulu aktiiviseen toimintosarjaan, tämä on false.

ControllerDigitalActionData_t

Edustaa digitaalisen toiminnon nykytilaa.

NimiTyyppiKuvaus
bStateboolToiminnon nykytila: true, jos toiminto on painettuna, muuten false.
bActiveboolNäyttää, voiko toimintoa tällä hetkellä sitoa aktiiviseen toimintosarjaan.

ControllerMotionData_t

Edustaa laitteen liikesensorin/-sensoreiden nykytilaa.

HUOMAA! rotQuatX/rotQuatY/rotQuatZ-tyypeille ohjaimen inertiamittausyksikkö luo kvaternion gyron ja kiihtyvyysanturin yhdistelmän perusteella. Arvo on ohjaimen absoluuttinen suunta, mutta se saattaa vaihdella pystyakselilla.

NimiTyyppiKuvaus
rotQuatXfloatSensorien yhdistelmän absoluuttinen kierto (suuntaus saattaa olla epätarkka), x-akseli.
rotQuatYfloatSensorien yhdistelmän absoluuttinen kierto (suuntaus saattaa olla epätarkka), y-akseli.
rotQuatZfloatSensorien yhdistelmän absoluuttinen kierto (suuntaus saattaa olla epätarkka), z-akseli.
rotQuatWfloatSensorien yhdistelmän absoluuttinen kierto (suuntaus saattaa olla epätarkka), w-akseli.
posAccelXfloatPaikkasidonnainen kiihtyvyys, x-akseli.
posAccelYfloatPaikkaan liittyvä kiihtyvyys, y-akseli.
posAccelZfloatPaikkasidonnainen kiihtyvyys, z-akseli.
rotVelXfloatKulmanopeus, x-akseli.
rotVelYfloatKulmanopeus, y-akseli.
rotVelZfloatKulmanopeus, z-akseli.

Luetellut tyypit

Nämä ovat ISteamController-käyttöliittymässä käytettäväksi määritetyt luetellut tyypit.

EControllerActionOrigin

Syöttää pelaajan määritykset toiminnoiksi Steam-syötteen määrittäjässä. Arvojen päätarkoitus on ohjata, minkä näyttöpainikkeiden merkkien pitäisi näkyä missäkin toiminnossa, kuten "Paina [A] hypätäksesi".

NimiArvoKuvaus
k_EControllerActionOrigin_None0
k_EControllerActionOrigin_A1(Valve Steam Controller) digitaalinen etupainike A.
k_EControllerActionOrigin_B2(Valve Steam Controller) digitaalinen etupainike B.
k_EControllerActionOrigin_X3(Valve Steam Controller) digitaalinen etupainike X.
k_EControllerActionOrigin_Y4(Valve Steam Controller) digitaalinen etupainike Y.
k_EControllerActionOrigin_LeftBumper5(Valve Steam Controller) digitaalinen vasen olkapainike.
k_EControllerActionOrigin_RightBumper6(Valve Steam Controller) digitaalinen oikea olkapainike.
k_EControllerActionOrigin_LeftGrip7(Valve Steam Controller) digitaalinen vasen kahvapainike.
k_EControllerActionOrigin_RightGrip8(Valve Steam Controller) digitaalinen oikea kahvapainike.
k_EControllerActionOrigin_Start9(Valve Steam Controller) digitaalinen Start-painike.
k_EControllerActionOrigin_Back10(Valve Steam Controller) digitaalinen Back-painike.
k_EControllerActionOrigin_LeftPad_Touch11(Valve Steam Controller) vasen haptinen kosketuslevy, yksinkertainen kosketus sormella.
k_EControllerActionOrigin_LeftPad_Swipe12(Valve Steam Controller) vasen haptinen kosketuslevy, kosketussyöte millä tahansa akselilla.
k_EControllerActionOrigin_LeftPad_Click13(Valve Steam Controller) vasen haptinen kosketuslevy, digitaalinen klikkaus (koko alueelle).
k_EControllerActionOrigin_LeftPad_DPadNorth14(Valve Steam Controller) vasen haptinen kosketuslevy, digitaalinen klikkaus (ylin neljännes).
k_EControllerActionOrigin_LeftPad_DPadSouth15(Valve Steam Controller) vasen haptinen kosketuslevy, digitaalinen klikkaus (alin neljännes).
k_EControllerActionOrigin_LeftPad_DPadWest16(Valve Steam Controller) vasen haptinen kosketuslevy, digitaalinen klikkaus (vasen neljännes).
k_EControllerActionOrigin_LeftPad_DPadEast17(Valve Steam Controller) vasen haptinen kosketuslevy, digitaalinen klikkaus (oikea neljännes).
k_EControllerActionOrigin_RightPad_Touch18(Valve Steam Controller) oikea haptinen kosketuslevy, yksinkertainen kosketus sormella.
k_EControllerActionOrigin_RightPad_Swipe19(Valve Steam Controller) oikea haptinen kosketuslevy, kosketussyöte millä tahansa akselilla.
k_EControllerActionOrigin_RightPad_Click20(Valve Steam Controller) oikea haptinen kosketuslevy, digitaalinen klikkaus (koko alueelle).
k_EControllerActionOrigin_RightPad_DPadNorth21(Valve Steam Controller) oikea haptinen kosketuslevy, digitaalinen klikkaus (ylin neljännes).
k_EControllerActionOrigin_RightPad_DPadSouth22(Valve Steam Controller) oikea haptinen kosketuslevy, digitaalinen klikkaus (alin neljännes).
k_EControllerActionOrigin_RightPad_DPadWest23(Valve Steam Controller) oikea haptinen kosketuslevy, digitaalinen klikkaus (vasen neljännes).
k_EControllerActionOrigin_RightPad_DPadEast24(Valve Steam Controller) oikea haptinen kosketuslevy, digitaalinen klikkaus (oikea neljännes).
k_EControllerActionOrigin_LeftTrigger_Pull25(Valve Steam Controller) vasen analogiliipaisin, mikä tahansa painallus (analoginen arvo).
k_EControllerActionOrigin_LeftTrigger_Click26(Valve Steam Controller) vasen analogiliipaisin, vahva painallus (digitaalinen arvo).
k_EControllerActionOrigin_RightTrigger_Pull27(Valve Steam Controller) oikea analogiliipaisin, mikä tahansa painallus (analoginen arvo).
k_EControllerActionOrigin_RightTrigger_Click28(Valve Steam Controller) oikea analogiliipaisin, vahva painallus (digitaalinen arvo).
k_EControllerActionOrigin_LeftStick_Move29(Valve Steam Controller) vasen ohjainsauva, liike millä tahansa akselilla (analoginen arvo).
k_EControllerActionOrigin_LeftStick_Click30(Valve Steam Controller) vasen ohjainsauva, klikattu (digitaalinen arvo).
k_EControllerActionOrigin_LeftStick_DPadNorth31(Valve Steam Controller) vasen ohjainsauva, digitaalinen liike (ylin neljännes).
k_EControllerActionOrigin_LeftStick_DPadSouth32(Valve Steam Controller) vasen ohjainsauva, digitaalinen liike (alin neljännes).
k_EControllerActionOrigin_LeftStick_DPadWest33(Valve Steam Controller) vasen ohjainsauva, digitaalinen liike (vasen neljännes).
k_EControllerActionOrigin_LeftStick_DPadEast34(Valve Steam Controller) vasen ohjainsauva, digitaalinen liike (oikea neljännes).
k_EControllerActionOrigin_Gyro_Move35(Valve Steam Controller) gyroskooppi, analoginen liike millä tahansa akselilla.
k_EControllerActionOrigin_Gyro_Pitch36(Valve Steam Controller) gyroskooppi, analoginen liike nyökkäysakselilla (osoita päällä kattoon, osoita lattiaan).
k_EControllerActionOrigin_Gyro_Yaw37(Valve Steam Controller) gyroskooppi, analoginen liike pystyakselilla (käännä pää vasemmalle seinää kohti, käännä pää oikealle toista seinää kohti).
k_EControllerActionOrigin_Gyro_Roll38(Valve Steam Controller) gyroskooppi, analoginen liike vaaka-akselilla (kallista päätä vasenta olkaa kohti, käännä päätä oikealle toista olkapäätä kohti).
k_EControllerActionOrigin_PS4_X39(Sony Dualshock 4) digitaalinen etupainike X.
k_EControllerActionOrigin_PS4_Circle40(Sony Dualshock 4) digitaalinen etupainike, ympyrä.
k_EControllerActionOrigin_PS4_Triangle41(Sony Dualshock 4) digitaalinen etupainike, kolmio.
k_EControllerActionOrigin_PS4_Square42(Sony Dualshock 4) digitaalinen etupainike, neliö.
k_EControllerActionOrigin_PS4_LeftBumper43(Sony Dualshock 4) digitaalinen vasen olkapainike.
k_EControllerActionOrigin_PS4_RightBumper44(Sony Dualshock 4) digitaalinen oikea olkapainike.
k_EControllerActionOrigin_PS4_Options45(Sony Dualshock 4) digitaalinen valinta painike (Start-painike).
k_EControllerActionOrigin_PS4_Share46(Sony Dualshock 4) digitaalinen Share-painike (Back-painike).
k_EControllerActionOrigin_PS4_LeftPad_Touch47(Sony Dualshock 4) kosketuslevyn vasen puoli, yksinkertainen kosketus sormella.
k_EControllerActionOrigin_PS4_LeftPad_Swipe48(Sony Dualshock 4) kosketuslevyn vasen puoli, kosketussyöte millä tahansa akselilla.
k_EControllerActionOrigin_PS4_LeftPad_Click49(Sony Dualshock 4) kosketuslevyn vasen puoli, digitaalinen klikkaus (koko alueelle).
k_EControllerActionOrigin_PS4_LeftPad_DPadNorth50(Sony Dualshock 4) kosketuslevyn vasen puoli, digitaalinen klikkaus (ylin neljännes)
k_EControllerActionOrigin_PS4_LeftPad_DPadSouth51(Sony Dualshock 4) kosketuslevyn vasen puoli, digitaalinen klikkaus (alin neljännes).
k_EControllerActionOrigin_PS4_LeftPad_DPadWest52(Sony Dualshock 4) kosketuslevyn vasen puoli, digitaalinen klikkaus (vasen neljännes).
k_EControllerActionOrigin_PS4_LeftPad_DPadEast53(Sony Dualshock 4) kosketuslevyn vasen puoli, digitaalinen klikkaus (oikea neljännes).
k_EControllerActionOrigin_PS4_RightPad_Touch54(Sony Dualshock 4) kosketuslevyn oikea puoli, yksinkertainen kosketus sormella.
k_EControllerActionOrigin_PS4_RightPad_Swipe55(Sony Dualshock 4) kosketuslevyn oikea puoli, kosketussyöte millä tahansa akselilla.
k_EControllerActionOrigin_PS4_RightPad_Click56(Valve Steam Controller) kosketuslevyn oikea puoli, digitaalinen klikkaus (koko alueelle).
k_EControllerActionOrigin_PS4_RightPad_DPadNorth57(Sony Dualshock 4) kosketuslevyn oikea puoli, digitaalinen klikkaus (ylin neljännes).
k_EControllerActionOrigin_PS4_RightPad_DPadSouth58(Sony Dualshock 4) kosketuslevyn oikea puoli, digitaalinen klikkaus (alin neljännes).
k_EControllerActionOrigin_PS4_RightPad_DPadWest59(Sony Dualshock 4) kosketuslevyn oikea puoli, digitaalinen klikkaus (vasen neljännes).
k_EControllerActionOrigin_PS4_RightPad_DPadEast60(Sony Dualshock 4) kosketuslevyn oikea puoli, digitaalinen klikkaus (oikea neljännes).
k_EControllerActionOrigin_PS4_CenterPad_Touch61(Sony Dualshock 4) yhtenäinen kosketuslevy, yksinkertainen kosketus sormella.
k_EControllerActionOrigin_PS4_CenterPad_Swipe62(Sony Dualshock 4) yhtenäinen kosketuslevy, kosketussyöte millä tahansa akselilla.
k_EControllerActionOrigin_PS4_CenterPad_Click63(Sony Dualshock 4) yhtenäinen kosketuslevy, digitaalinen klikkaus (koko alueelle).
k_EControllerActionOrigin_PS4_CenterPad_DPadNorth64(Sony Dualshock 4) yhtenäinen kosketuslevy, digitaalinen klikkaus (ylin neljännes).
k_EControllerActionOrigin_PS4_CenterPad_DPadSouth65(Sony Dualshock 4) yhtenäinen kosketuslevy, digitaalinen klikkaus (alin neljännes).
k_EControllerActionOrigin_PS4_CenterPad_DPadWest66(Sony Dualshock 4) yhtenäinen kosketuslevy, digitaalinen klikkaus (vasen neljännes).
k_EControllerActionOrigin_PS4_CenterPad_DPadEast67(Sony Dualshock 4) yhtenäinen kosketuslevy, digitaalinen klikkaus (oikea neljännes).
k_EControllerActionOrigin_PS4_LeftTrigger_Pull68(Sony Dualshock 4) vasen analogiliipaisin, mikä tahansa painallus (analoginen arvo).
k_EControllerActionOrigin_PS4_LeftTrigger_Click69(Sony Dualshock 4) vasen analogiliipaisin, vahva painallus (digitaalinen arvo).
k_EControllerActionOrigin_PS4_RightTrigger_Pull70(Sony Dualshock 4) oikea analogiliipaisin, mikä tahansa painallus (analoginen arvo).
k_EControllerActionOrigin_PS4_RightTrigger_Click71(Sony Dualshock 4) oikea analogiliipaisin, vahva painallus (digitaalinen arvo).
k_EControllerActionOrigin_PS4_LeftStick_Move72(Sony Dualshock 4) vasen sauva, liike millä tahansa akselilla (analoginen arvo).
k_EControllerActionOrigin_PS4_LeftStick_Click73(Sony Dualshock 4) vasen sauva, klikattu (digitaalinen arvo).
k_EControllerActionOrigin_PS4_LeftStick_DPadNorth74(Sony Dualshock 4) vasen sauva, digitaalinen liike (ylin neljännes).
k_EControllerActionOrigin_PS4_LeftStick_DPadSouth75(Sony Dualshock 4) vasen sauva, digitaalinen liike (alin neljännes).
k_EControllerActionOrigin_PS4_LeftStick_DPadWest76(Sony Dualshock 4) vasen sauva, digitaalinen liike (vasen neljännes).
k_EControllerActionOrigin_PS4_LeftStick_DPadEast77(Sony Dualshock 4) vasen sauva, digitaalinen liike (oikea neljännes).
k_EControllerActionOrigin_PS4_RightStick_Move78(Sony Dualshock 4) oikea sauva, liike millä tahansa akselilla (analoginen arvo).
k_EControllerActionOrigin_PS4_RightStick_Click79(Sony Dualshock 4) oikea sauva, klikattu (digitaalinen arvo).
k_EControllerActionOrigin_PS4_RightStick_DPadNorth80(Sony Dualshock 4) oikea sauva, digitaalinen liike (ylin neljännes).
k_EControllerActionOrigin_PS4_RightStick_DPadSouth81(Sony Dualshock 4) oikea sauva, digitaalinen liike (alin neljännes).
k_EControllerActionOrigin_PS4_RightStick_DPadWest82(Sony Dualshock 4) oikea sauva, digitaalinen liike (vasen neljännes).
k_EControllerActionOrigin_PS4_RightStick_DPadEast83(Sony Dualshock 4) oikea sauva, digitaalinen liike (oikea neljännes).
k_EControllerActionOrigin_PS4_DPad_North84(Sony Dualshock 4) ristiohjain, painettu (ylin neljännes).
k_EControllerActionOrigin_PS4_DPad_South85(Sony Dualshock 4) ristiohjain, painettu (alin neljännes).
k_EControllerActionOrigin_PS4_DPad_West86(Sony Dualshock 4) ristiohjain, painettu (vasen neljännes).
k_EControllerActionOrigin_PS4_DPad_East87(Sony Dualshock 4) ristiohjain, painettu (oikea neljännes).
k_EControllerActionOrigin_PS4_Gyro_Move88(Sony Dualshock 4) gyroskooppi, analoginen liike millä tahansa akselilla.
k_EControllerActionOrigin_PS4_Gyro_Pitch89(Sony Dualshock 4) gyroskooppi, analoginen liike nyökkäysakselilla (osoita päällä kattoon, osoita lattiaan).
k_EControllerActionOrigin_PS4_Gyro_Yaw90(Sony Dualshock 4) gyroskooppi, analoginen liike pystyakselilla (käännä pää vasemmalle seinää kohti, käännä pää oikealle toista seinää kohti).
k_EControllerActionOrigin_PS4_Gyro_Roll91(Sony Dualshock 4) gyroskooppi, analoginen liike vaaka-akselilla (kallista päätä vasenta olkaa kohti, käännä päätä oikealle toista olkapäätä kohti).
k_EControllerActionOrigin_XBoxOne_A92(XB1) digitaalinen etupainike A.
k_EControllerActionOrigin_XBoxOne_B93(XB1) digitaalinen etupainike B.
k_EControllerActionOrigin_XBoxOne_X94(XB1) digitaalinen etupainike X
k_EControllerActionOrigin_XBoxOne_Y95(XB1) digitaalinen etupainike Y.
k_EControllerActionOrigin_XBoxOne_LeftBumper96(XB1) digitaalinen vasen olkapainike.
k_EControllerActionOrigin_XBoxOne_RightBumper97(XB1) digitaalinen oikea olkapainike.
k_EControllerActionOrigin_XBoxOne_Menu98(XB1) digitaalinen valikkopainike (Start-painike).
k_EControllerActionOrigin_XBoxOne_View99(XB1) digitaalinen Näytä-painike (Back-painike).
k_EControllerActionOrigin_XBoxOne_LeftTrigger_Pull100(XB1) vasen analogiliipaisin, mikä tahansa painallus (analoginen arvo).
k_EControllerActionOrigin_XBoxOne_LeftTrigger_Click101(XB1) vasen analogiliipaisin, vahva painallus (digitaalinen arvo).
k_EControllerActionOrigin_XBoxOne_RightTrigger_Pull102(XB1) oikea analogiliipaisin, mikä tahansa painallus (analoginen arvo).
k_EControllerActionOrigin_XBoxOne_RightTrigger_Click103(XB1) oikea analogiliipaisin, vahva painallus (digitaalinen arvo).
k_EControllerActionOrigin_XBoxOne_LeftStick_Move104(XB1) vasen sauva, liike millä tahansa akselilla (analoginen arvo).
k_EControllerActionOrigin_XBoxOne_LeftStick_Click105(XB1) vasen sauva, klikattu (digitaalinen arvo).
k_EControllerActionOrigin_XBoxOne_LeftStick_DPadNorth106(XB1) vasen sauva, digitaalinen liike (ylin neljännes).
k_EControllerActionOrigin_XBoxOne_LeftStick_DPadSouth107(XB1) vasen sauva, digitaalinen liike (alin neljännes).
k_EControllerActionOrigin_XBoxOne_LeftStick_DPadWest108(XB1) vasen sauva, digitaalinen liike (vasen neljännes).
k_EControllerActionOrigin_XBoxOne_LeftStick_DPadEast109(XB1) vasen sauva, digitaalinen liike (oikea neljännes).
k_EControllerActionOrigin_XBoxOne_RightStick_Move110(XB1) oikea sauva, liike millä tahansa akselilla (analoginen arvo).
k_EControllerActionOrigin_XBoxOne_RightStick_Click111(XB1) oikea sauva, klikattu (digitaalinen arvo).
k_EControllerActionOrigin_XBoxOne_RightStick_DPadNorth112(XB1) oikea sauva, digitaalinen liike (ylin neljännes).
k_EControllerActionOrigin_XBoxOne_RightStick_DPadSouth113(XB1) oikea sauva, digitaalinen liike (alin neljännes).
k_EControllerActionOrigin_XBoxOne_RightStick_DPadWest114(XB1) oikea sauva, digitaalinen liike (vasen neljännes).
k_EControllerActionOrigin_XBoxOne_RightStick_DPadEast115(XB1) oikea sauva, digitaalinen liike (oikea neljännes).
k_EControllerActionOrigin_XBoxOne_DPad_North116(XB1) ristiohjain, painettu (ylin neljännes).
k_EControllerActionOrigin_XBoxOne_DPad_South117(XB1) ristiohjain, painettu (alin neljännes).
k_EControllerActionOrigin_XBoxOne_DPad_West118(XB1) ristiohjain, painettu (vasen neljännes).
k_EControllerActionOrigin_XBoxOne_DPad_East119(XB1) ristiohjain, painettu (oikea neljännes).
k_EControllerActionOrigin_XBox360_A120(X360) digitaalinen etupainike A.
k_EControllerActionOrigin_XBox360_B121(X360) digitaalinen etupainike B.
k_EControllerActionOrigin_XBox360_X122(X360) digitaalinen etupainike X.
k_EControllerActionOrigin_XBox360_Y123(X360) digitaalinen etupainike Y.
k_EControllerActionOrigin_XBox360_LeftBumper124(X360) digitaalinen vasen olkapainike.
k_EControllerActionOrigin_XBox360_RightBumper125(X360) digitaalinen oikea olkapainike.
k_EControllerActionOrigin_XBox360_Start126(X360) digitaalinen Start-painike.
k_EControllerActionOrigin_XBox360_Back127(X360) digitaalinen Back-painike.
k_EControllerActionOrigin_XBox360_LeftTrigger_Pull128(X360) vasen analogiliipaisin, mikä tahansa painallus (analoginen arvo).
k_EControllerActionOrigin_XBox360_LeftTrigger_Click129(X360) vasen analogiliipaisin, vahva painallus (digitaalinen arvo).
k_EControllerActionOrigin_XBox360_RightTrigger_Pull130(X360) oikea analogiliipaisin, mikä tahansa painallus (analoginen arvo).
k_EControllerActionOrigin_XBox360_RightTrigger_Click131(X360) oikea analogiliipaisin, vahva painallus (digitaalinen arvo).
k_EControllerActionOrigin_XBox360_LeftStick_Move132(X360) vasen sauva, liike millä tahansa akselilla (analoginen arvo).
k_EControllerActionOrigin_XBox360_LeftStick_Click133(X360) vasen sauva, klikattu (digitaalinen arvo).
k_EControllerActionOrigin_XBox360_LeftStick_DPadNorth134(X360) vasen sauva, digitaalinen liike (ylin neljännes).
k_EControllerActionOrigin_XBox360_LeftStick_DPadSouth135(X360) vasen sauva, digitaalinen liike (alin neljännes).
k_EControllerActionOrigin_XBox360_LeftStick_DPadWest136(X360) vasen sauva, digitaalinen liike (vasen neljännes).
k_EControllerActionOrigin_XBox360_LeftStick_DPadEast137(X360) vasen sauva, digitaalinen liike (oikea neljännes).
k_EControllerActionOrigin_XBox360_RightStick_Move138(X360) oikea sauva, liike millä tahansa akselilla (analoginen arvo).
k_EControllerActionOrigin_XBox360_RightStick_Click139(X360) oikea sauva, klikattu (digitaalinen arvo).
k_EControllerActionOrigin_XBox360_RightStick_DPadNorth140(X360) oikea sauva, digitaalinen liike (ylin neljännes).
k_EControllerActionOrigin_XBox360_RightStick_DPadSouth141(X360) oikea sauva, digitaalinen liike (alin neljännes).
k_EControllerActionOrigin_XBox360_RightStick_DPadWest142(X360) oikea sauva, digitaalinen liike (vasen neljännes).
k_EControllerActionOrigin_XBox360_RightStick_DPadEast143(X360) oikea sauva, digitaalinen liike (oikea neljännes).
k_EControllerActionOrigin_XBox360_DPad_North144(X360) ristiohjain, painettu (ylin neljännes).
k_EControllerActionOrigin_XBox360_DPad_South145(X360) ristiohjain, painettu (alin neljännes).
k_EControllerActionOrigin_XBox360_DPad_West146(X360) ristiohjain, painettu (vasen neljännes).
k_EControllerActionOrigin_XBox360_DPad_East147(X360) ristiohjain, painettu (oikea neljännes).
k_EControllerActionOrigin_Count196Lueteltujen tyyppien arvojen määrä, hyödyllinen iteroinnissa.

EControllerSource

Ohjaimen alue, joka voidaan käsittää laajemmaksi abstraktiksi modulaariseksi yksiköksi, johon voidaan ottaa yksi monista tiloista käyttöön ja palauttaa merkityksellistä dataa. Esimerkiksi ohjainsauvaa voidaan käsitellä joko yksittäisenä analogisena syötteenä tai se voidaan jakaa neljään, toistuvaan digitaaliseen muotoon virtuaalisessa ristiohjaimessa. ABXY-etupainikkeet muodostavat samoin luonnollisen ryhmän, jota voidaan käsitellä neljänä yksittäisenä painikkeena tai virtuaalisen ristiohjaimen osina jne.

NimiArvoKuvaus
k_EControllerSource_None0Ei ohjainlähdettä.
k_EControllerSource_LeftTrackpad1Vasen kosketuslevy tai keskikosketuslevyn vasen puoli.
k_EControllerSource_RightTrackpad2Oikea kosketuslevy tai keskikosketuslevyn oikea puoli.
k_EControllerSource_Joystick3Ohjainsauva, tai jos käytössä on useampia ohjainsauvoja, vasen ohjainsauva.
k_EControllerSource_ABXY4Neljä keskeisintä etupainiketta.
k_EControllerSource_Switch5Ohjaimen kytkimet/painikkeet, jotka eivät kuulu mihinkään toiseen lähteeseen. Tähän sisältyy olkapainikkeet, Start- ja Select-painikkeet sekä kahvapainikkeet. Tämä muualle sopimattomien tapaus ei kuulu mihinkään laajempaan paradigmaan ja saa siksi oman digitaalisten painikkeiden lähteen ja sitä vastaavan tilan, joka käsittelee niitä.
k_EControllerSource_LeftTrigger6Vasen analogiliipaisin.
k_EControllerSource_RightTrigger7Oikea analogiliipaisin.
k_EControllerSource_Gyro8Sisäinen gyroskooppi.
k_EControllerSource_CenterTrackpad9Keskellä oleva kosketuslevy. (Vain DualShock 4.)
k_EControllerSource_RightJoystick10Oikea ohjainsauva. Jos on vain yksi ohjainsauva, lähdettä ei käytetä.
k_EControllerSource_DPad11Ristiohjain.
k_EControllerSource_Key12Näppäimistön näppäin (tarkistuskoodin omaavat näppäimistöt).
k_EControllerSource_Mouse13Perinteinen hiiri.
k_EControllerSource_Count14Lueteltujen tyyppien määrä, hyödyllinen iteroinnissa.

EControllerSourceMode

Ohjainlähteen määrittäjän määräävä virtuaalinen syötetila. Määrittäjä voi esimerkiksi saada analogisen ohjainsauvan toimimaan ristiohjaimen tavoin neljällä digitaalisella syötteellä. EControllerSource olisi k_EControllerSource_Joystick ja EControllerSourceMode olisi k_EControllerSourceMode_Dpad. Tila muuttaa myös kaikkien liitettyjen toimintojen saaman syötedatan.

NimiArvoKuvaus
k_EControllerSourceMode_None0Ei syötetilaa.
k_EControllerSourceMode_Dpad1Ristiohjain – neljä digitaalista suuntapainiketta yhdessä ristinmuotoisessa painikkeessa, jossa vain yhtä painikkeen akselia voidaan painaa kerralla.
k_EControllerSourceMode_Buttons2
k_EControllerSourceMode_FourButtons3Neljä digitaalista etupainiketta, joita voidaan painaa yhtäaikaisesti.
k_EControllerSourceMode_AbsoluteMouse4
k_EControllerSourceMode_RelativeMouse5
k_EControllerSourceMode_JoystickMove6
k_EControllerSourceMode_JoystickMouse7
k_EControllerSourceMode_JoystickCamera8
k_EControllerSourceMode_ScrollWheel9
k_EControllerSourceMode_Trigger10
k_EControllerSourceMode_TouchMenu11
k_EControllerSourceMode_MouseJoystick12
k_EControllerSourceMode_MouseRegion13
k_EControllerSourceMode_RadialMenu14
k_EControllerSourceMode_SingleButton15
k_EControllerSourceMode_Switches16

ESteamControllerLEDFlag

Hallinnoi Steam Controllerin LED-valon väriä (jos laitteessa on sellainen).

Huomaa:
Steam Controllerissa on LED-valo, mutta tämä vaikuttaa vain sen kirkkauteen (väri on aina valkoinen).
DualShock 4:ssä on LED-valopalkki, jonka väri ja kirkkaus voidaan määrittää.

NimiArvoKuvaus
k_ESteamControllerLEDFlag_SetColor0Määritä värit tiettyihin arvoihin.
k_ESteamControllerLEDFlag_RestoreUserDefault1Palauta oletusväri (pelin ulkopuolisiin) asetuksiin.

ESteamInputType

Edustaa annetun laitteiston laitemallia.

NimiArvoKuvaus
k_ESteamInputType_Unknown0Kaiken kattava tyyppi tunnistamattomille laitteille.
k_ESteamInputType_SteamController1Valven Steam Controller -ohjain
k_ESteamInputType_XBox360Controller2Microsoft Xbox 360 -ohjain
k_ESteamInputType_XBoxOneController3Microsoft Xbox One -ohjain
k_ESteamInputType_GenericXInput4Mikä tahansa geneerinen kolmannen osapuolen XInput-laite.
k_ESteamInputType_PS4Controller5Sony PlayStation 4 -ohjain
k_ESteamInputType_AppleMFiController6Käyttämätön
k_ESteamInputType_AndroidController7Käyttämätön
k_ESteamInputType_SwitchJoyConPair8Käyttämätön
k_ESteamInputType_SwitchJoyConSingle9Käyttämätön
k_ESteamInputType_SwitchProController10Nintendo Switch Pro -ohjain
k_ESteamInputType_MobileTouch11Steam Link -mobiilisovelluksen kosketusohjain.
k_ESteamInputType_PS3Controller12Sony Playstation 3 -ohjain tai PS3/PS4-yhteensopiva lento-ohjain
k_ESteamInputType_Count13Palautettujen arvojen nykyinen määrä.
k_ESteamInputType_MaximumPossibleValue255Suurin mahdollinen paluuarvo.

ESteamControllerPad

Steam Controllerin kosketuslevyalue.

Huomaa:
Steam Controllerissa arvot vastaavat vasenta ja oikeaa haptista kosketuslevyä.
DualShock 4:ssä arvot vastaavat vasenta ja oikeaa puolta yhdestä, keskellä olevasta kosketuslevystä.

NimiArvoKuvaus
k_ESteamControllerPad_Left0Steam Controllerin vasen kosketuslevyalue. Yhteensopivat mallit: Steam Controller, DualShock 4
k_ESteamControllerPad_Right1Steam Controllerin oikea kosketuslevyalue. Yhteensopivat mallit: Steam Controller, DualShock 4

Typedefit

Nämä ovat ISteamController-käyttöliittymässä käytettäväksi määritetyt typedefit.

NimiPerustyyppiKuvaus
ControllerActionSetHandle_tuint64Näitä kahvoja käytetään viittaamaan tiettyihin pelin toimintoihin tai toimintosarjoihin.
Toimintojen kahvoja ei kysytä alustusvaiheessa suorituskykyyn liittyvistä syitä johtuen.
ControllerAnalogActionHandle_tuint64Analogisen toiminnon kahva. Tämä voidaan saada GetAnalogActionHandle-jäsenfunktiosta.
ControllerDigitalActionHandle_tuint64Digitaalisen toiminnon kahva. Tämä voidaan saada GetDigitalActionHandle-jäsenfunktiosta.
ControllerHandle_tuint64Tämä kahva tunnistaa johdonmukaisesti ohjaimen, vaikka sen yhteys olisi katkaistu tai se olisi yhdistetty uudelleen.

Vakiot

Nämä vakiot on määritetty käytettäväksi ISteamController-käyttöliittymässä.

NimiTyyppiArvoKuvaus
STEAMCONTROLLER_INTERFACE_VERSIONconst char *"SteamController007"
STEAM_CONTROLLER_HANDLE_ALL_CONTROLLERSintUINT64_MAXKun lähetät asetuksen tiettyyn ohjaimen kahvaan, voit käyttää tätä erityistä arvoa kahvan sijaan lähettämään asetukset kaikkiin ohjaimiin.
STEAM_CONTROLLER_MAX_ANALOG_ACTIONSint16Jokaisessa ohjaimessa suoritettavien analogisten toimintojen enimmäismäärä.
STEAM_CONTROLLER_MAX_ANALOG_ACTION_DATAfloat1.0fAnalogisen toiminnon raportoima enimmäisarvo millä tahansa akselilla.
STEAM_CONTROLLER_MAX_COUNTint16Steam-syötteen määrittäjän kanssa samanaikaisesti käytettävien ohjaimien enimmäismäärä.
STEAM_CONTROLLER_MAX_DIGITAL_ACTIONSint128Ohjaimessa suoritettavien digitaalisten toimintojen enimmäismäärä.
STEAM_CONTROLLER_MAX_ORIGINSint8Yksittäiseen toimintoon liitettävien syötelähteiden enimmäismäärä.
STEAM_CONTROLLER_MIN_ANALOG_ACTION_DATAfloat-1.0fAnalogisen toiminnon raportoima vähimmäisarvo millä tahansa akselilla.