Dokumentacja Steamworks
Interfejs ISteamUtils
Interfejs oferujący dostęp do wachlarza różnych funkcji użytkowych.

Metody

Metody interfejsu ISteamUtils są wywoływane poprzez akcesor globalny SteamUtils().

BOverlayNeedsPresent

bool BOverlayNeedsPresent();
Sprawdza, czy nakładka potrzebuje metody Present(). Wymagane tylko podczas korzystania z aktualizacji renderowania na podstawie zdarzeń.

Zazwyczaj to wywołanie nie jest potrzebne, jeżeli gra ma ciągłą pętlę klatek, która wywołuje API Present w D3D lub SwapBuffers w OGL co klatkę, tak jak ma to miejsce w większości gier. Jednak jeśli masz grę, która odświeża ekran na podstawie zdarzeń, to może to zepsuć nakładkę, ponieważ używa ona wywołań Present/SwapBuffers, by działała jej własna pętla klatek. Może też zajść konieczność, by użyła ona wywołań Present() do ekranu w dowolnym momencie, gdy pojawi się powiadomienie lub gdy nakładka jest włączana przez użytkownika. Możesz użyć tego API, by spytać nakładkę, czy wymaga Present dla obecnego użycia, a następnie sprawdzać to samo okresowo (preferowana wartość to około 33 Hz). Upewnij się też, że odświeżasz ekran z użyciem Present lub SwapBuffers, by umożliwić prawidłowe działanie nakładki.

Zwraca: bool
true – jeśli nakładka wymaga, byś odświeżył ekran; w przeciwnym wypadku false.

CheckFileSignature

SteamAPICall_t CheckFileSignature( const char *szFileName );
NazwaTypOpis
szFileNameconst char *.

Przestarzałe.

Zwraca: SteamAPICall_t do wykorzystania z wynikiem wywołania CheckFileSignature_t.

GetAPICallFailureReason

ESteamAPICallFailure GetAPICallFailureReason( SteamAPICall_t hSteamAPICall );
NazwaTypOpis
hSteamAPICallSteamAPICall_tUchwyt wywołania API Steam, którego błąd ma być sprawdzony.

Używane, by pobrać powód niepowodzenia wyniku wywołania.

Głównym zastosowaniem tej funkcji jest debugowanie. Powody niepowodzenia są zazwyczaj poza twoją kontrolą i przeważnie nie są bardzo ważne. Po prostu ponawiaj swoje wywołanie API, aż zadziała.

Zwraca: ESteamAPICallFailure
[type]ESteamAPICallFailure[/type].

Zobacz również: IsAPICallCompleted, GetAPICallResult.

Przykład:
void CHTMLSurface::OnBrowserReady( HTML_BrowserReady_t *pBrowserReady, bool bIOFailure ) { if ( bIOFailure ) { SteamUtils()->GetAPICallFailureReason( handle ); // Uchwyt musi być przechowywany oddzielnie. return; } }

GetAPICallResult

bool GetAPICallResult( SteamAPICall_t hSteamAPICall, void *pCallback, int cubCallback, int iCallbackExpected, bool *pbFailed );
NazwaTypOpis
hSteamAPICallSteamAPICall_tUchwyt do wywołania API.
pCallbackvoid *Zwraca wywołanie zwrotne do wstępnie przydzielonej i ustalonej wcześniej pamięci.
cubCallbackintRozmiar pCallback, które przekazujesz.
iCallbackExpectedintNumer k_iCallback powiązany z wywołaniem zwrotnym.
pbFailedbool *Zwraca, jeśli wywołanie API natrafiło na błąd.

Pobiera treść ukończonego wywołania API. Wynik jest przeznaczony dla back-endu wrappera CallResult.

Ręczne używanie nie jest ogólnie zalecane.

Zwraca: bool
true – jeśli działanie się powiedzie, jest ono prawidłowe i zostało ukończone; w przeciwnym wypadku false.

Jeśli wywołanie jest pomyślne, to kopiuje ono wywołanie zwrotne do pCallback i zwraca niepowodzenia w pbFailed.

Zobacz również: IsAPICallCompleted, GetAPICallFailureReason.

GetAppID

uint32 GetAppID();
Pobiera ID aplikacji obecnego procesu.

Zwraca: uint32
Zwraca ID aplikacji.

GetConnectedUniverse

EUniverse GetConnectedUniverse();
Pobiera uniwersum, do którego łączy się obecny klient (tylko do użytku przez Valve).

Zwraca: EUniverse
[type]EUniverse[/type].

GetCSERIPPort

bool GetCSERIPPort( uint32 *unIP, uint16 *usPort );
NazwaTypOpis
unIPuint32 *Zwraca adres IP, z którym klient jest połączony.
usPortuint16 *Zwraca port, z którym klient jest połączony.

Pobiera adres IP serwera raportowania do użytku przez Valve – obecnie jest to używane tylko w grach na silniku Source.

Zwraca: bool
Zwraca true, jeśli użytkownik jest obecnie połączony; w przeciwnym wypadku false.

GetCurrentBatteryPower

uint8 GetCurrentBatteryPower();
Pobiera obecny poziom naładowania akumulatora komputera.

Zwraca: uint8
Obecny stan akumulatora w zakresie 0 – 100%. Zwraca 255, jeżeli urządzenie jest podłączone do prądu.

GetEnteredGamepadTextInput

bool GetEnteredGamepadTextInput( char *pchText, uint32 cchText );
NazwaTypOpis
pchTextchar *Wstępnie przydzielony bufor, do którego zostanie skopiowany string z tekstem.
cchTextuint32Rozmiar bufora pchText.

Pobiera tekst wpisany przy użyciu kontrolera z nakładki Big Picture.

Ta funkcja musi zostać wywołana w obrębie wywołania zwrotnego GamepadTextInputDismissed_t i tylko gdy wartość GamepadTextInputDismissed_t.m_bSubmitted wynosi true.

Podaje wprowadzony tekst w formacie UTF-8.

Zwraca: bool
true – jeśli istnieje tekst do otrzymania i cchText ma taki sam rozmiar co GamepadTextInputDismissed_t.m_unSubmittedText; w przeciwnym wypadku false.

Zobacz również: ShowGamepadTextInput, GetEnteredGamepadTextLength.

Przykład:
void OnGamepadTextInputDismissed_t( GamepadTextInputDismissed_t* pCallback ) { // Użytkownik anulował działanie. if ( !pCallback.m_bSubmitted ) return; // Użyj tej samej maksymalnej długości tekstu, którą przekazaliśmy do ShowGamepadTextInput, +1 dla terminatora null. const uint32 MAX_INPUT_LENGTH = 64 + 1; uint32 length = SteamUtils()->GetEnteredGamepadTextLength(); char* szTextInput[MAX_INPUT_LENGTH]; bool success = SteamUtils()->GetEnteredGamepadTextInput( szTextInput, length ); if ( !success ) { // Zapisz błąd. Powinno się to zdarzyć, tylko jeśli długość jest większa niż MaxInputLength. return; } // Wyświetl zaktualizowany string. }

GetEnteredGamepadTextLength

uint32 GetEnteredGamepadTextLength();
Pobiera długość tekstu wpisanego przy użyciu kontrolera z nakładki Big Picture.

Ta funkcja musi zostać wywołana w obrębie wywołania zwrotnego GamepadTextInputDismissed_t i tylko gdy wartość GamepadTextInputDismissed_t.m_bSubmitted wynosi true.

Zwraca: uint32.


Zobacz również: ShowGamepadTextInput, GetEnteredGamepadTextInput.

Przykład:
void OnGamepadTextInputDismissed_t( GamepadTextInputDismissed_t* pCallback ) { // Użytkownik anulował działanie. if ( !pCallback.m_bSubmitted ) return; // Użyj tej samej maksymalnej długości tekstu, którą przekazaliśmy do ShowGamepadTextInput, +1 dla terminatora null. const uint32 MAX_INPUT_LENGTH = 64 + 1; uint32 length = SteamUtils()->GetEnteredGamepadTextLength(); const char* szTextInput[MAX_INPUT_LENGTH]; bool success = SteamUtils()->GetEnteredGamepadTextInput( szTextInput, length ); if ( !success ) { // Zapisz błąd. Powinno się to zdarzyć, tylko jeśli długość jest większa niż MaxInputLength. return; } // Wyświetl zaktualizowany string. }

GetImageRGBA

bool GetImageRGBA( int iImage, uint8 *pubDest, int nDestBufferSize );
NazwaTypOpis
iImageintUchwyt do obrazu, który ma zostać otrzymany.
pubDestuint8 *Bufor, który zostanie wypełniony.
nDestBufferSizeintŁączny rozmiar bufora pubDest.

Pobiera bajty obrazu z uchwytu obrazu.

Przed wywołaniem tej funkcji musisz uzyskać rozmiar obrazu poprzez wywołanie SteamUtils::GetImageSize, by możliwe było stworzenie bufora o właściwym rozmiarze. Następnie możesz przydzielić bufor o wymiarach: szerokość * wysokość * 4. Obraz jest przesyłany w formacie RGBA. To wywołanie może być dosyć kosztowne pod względem zasobów, ponieważ konwertuje ono ze skompresowanego formatu (JPG, PNG, TGA) i nie oferuje przechowywania zwracanego bufora w wewnętrznej pamięci podręcznej, przez co stanowczo zaleca się wywoływać tę metodę raz na każdy uchwyt obrazu, a następnie przechowywać wynik w pamięci podręcznej. Ta funkcja jest wykorzystywana dla obrazów awatarów i osiągnięć na Steam – nie oczekuje się, by były one zmieniane w środku gry.

Zwraca: bool
true – jeśli działanie się powiedzie i uchwyt obrazu jest prawidłowy, a bufor został wypełniony; w przeciwnym wypadku false.

Zobacz również: ISteamFriends::GetSmallFriendAvatar, ISteamFriends::GetMediumFriendAvatar, ISteamFriends::GetLargeFriendAvatar, ISteamUserStats::GetAchievementIcon.

Przykład:
HGAMETEXTURE GetSteamImageAsTexture( int iImage ) { HGAMETEXTURE hTexture = 0; // Najpierw należy sprawdzić, czy przechowujesz już ten obraz w pamięci podręcznej przy pomocy czegoś takiego jak słownik lub mapa // z wartością iImage jako klucz, a następnie zwrócić uchwyt tekstury powiązany z obrazem, jeśli takowy istnieje. // Jeśli nie istnieje, to kontynuuj i dodaj teksturę do mapy przed przed zwróceniem na końcu działania funkcji. // Jeśli musimy sprawdzić rozmiar obrazu. uint32 uAvatarWidth, uAvatarHeight; bool success = SteamUtils()->GetImageSize( iImage, &uAvatarWidth, &uAvatarHeight ); if ( !success ) { // Zapisz wiadomość z ostrzeżeniem. return hTexture; } // Pobierz rzeczywiste nieprzetworzone dane RGBA od Steam i zmień je w teksturę w naszym silniku gry. const int uImageSizeInBytes = uAvatarWidth * uAvatarHeight * 4; uint8 *pAvatarRGBA = new uint8[uImageSizeInBytes]; success = SteamUtils()->GetImageRGBA( iImage, pAvatarRGBA, uImageSizeInBytes ); if( !success ) { // Zrób coś, by przekonwertować teksturę RGBA na twój wewnętrzny format tekstur celem wyświetlenia. // hTexture = m_pGameEngine->HCreateTexture( pAvatarRGBA, uAvatarWidth, uAvatarHeight ); // Następnie dodaj teksturę do pamięci podręcznej. } // Nie zapomnij zwolnić pamięci! delete[] pAvatarRGBA; return hTexture; }

GetImageSize

bool GetImageSize( int iImage, uint32 *pnWidth, uint32 *pnHeight );
NazwaTypOpis
iImageintUchwyt obrazu, dla którego zostanie pobrany rozmiar.
pnWidthuint32 *Zwraca szerokość obrazu.
pnHeightuint32 *Zwraca wysokość obrazu.

Pobiera rozmiar uchwytu obrazu Steam.

Musi zostać wywołane przed wywołaniem GetImageRGBA, aby utworzony został bufor o odpowiednim rozmiarze, w którym zostaną umieszczone nieprzetworzone dane obrazu.

Zwraca: bool
true – jeśli działanie się powiedzie, uchwyt obrazu jest prawidłowy i rozmiary zostały podane; w przeciwnym wypadku false.

Zobacz również: ISteamFriends::GetSmallFriendAvatar, ISteamFriends::GetMediumFriendAvatar, ISteamFriends::GetLargeFriendAvatar, ISteamUserStats::GetAchievementIcon.

GetIPCCallCount

uint32 GetIPCCallCount();
Zwraca liczbę wywołań IPC wykonanych od ostatniego wywołania tej funkcji.

Wykorzystywane do debugowania wydajnościowego (perf debugging). Dzięki temu dowiesz się, jak wiele wywołań IPC wykonuje twoja gra w jednej klatce.
Każde wywołanie IPC stanowi co najmniej przełącznik kontekstu wątku, o ile nie procesu, więc ważna jest kontrola częstotliwości użycia.

Zwraca: uint32.

GetIPCountry

const char * GetIPCountry();
Zwraca dwucyfrowy kod kraju w formacie zgodnym ze standardem ISO 3166-1 alfa-2, w którym uruchomiony jest klient, np. „UK” lub „US”.

Te informacje są odnajdywane przy użyciu bazy danych konwertującej adres IP na lokalizację.

Zwraca: const char *.

GetSecondsSinceAppActive

uint32 GetSecondsSinceAppActive();
Zwraca liczbę sekund, które upłynęły od momentu, gdy aplikacja była aktywna.

Zwraca: uint32.

GetSecondsSinceComputerActive

uint32 GetSecondsSinceComputerActive();
Zwraca liczbę sekund, które upłynęły od momentu ostatniego ruchu myszką wykonanego przez użytkownika.

Zwraca: uint32.

GetServerRealTime

uint32 GetServerRealTime();
Zwraca czas serwera Steam w formacie uniksowym. Jest to liczba sekund, które upłynęły od 1 stycznia 1970 uniwersalnego czasu koordynowanego.

Zwraca: uint32.

GetSteamUILanguage

const char * GetSteamUILanguage();
Zwraca język, w którym uruchomiony jest klient Steam.

Powinno być używane wyłącznie w wyjątkowych sytuacjach, więc zamiast niego zalecane jest korzystanie z ISteamApps::GetCurrentGameLanguage.

Pełna lista obsługiwanych języków znajduje się tutaj.

Zwraca: const char *.


Zobacz również: ISteamApps::GetCurrentGameLanguage, ISteamApps::GetAvailableGameLanguages.

IsAPICallCompleted

bool IsAPICallCompleted( SteamAPICall_t hSteamAPICall, bool *pbFailed );
NazwaTypOpis
hSteamAPICallSteamAPICall_tUchwyt wywołania API do sprawdzenia.
pbFailedbool *Zwraca odpowiedź na pytanie o niepowodzenie wywołania API. Jeśli wystąpi niepowodzenie, odpowiedzią będzie true, w przeciwnym wypadku false.

Sprawdza, czy wywołanie API zostało ukończone. Pobiera backend wrappera CallResult.

Samodzielne używanie tego nie jest ogólnie zalecane.

Zwraca: bool
true – jeśli wywołanie interfejsu API jest prawidłowe i zostało ukończone; w przeciwnym wypadku false.

Zobacz również: GetAPICallResult, GetAPICallFailureReason.

IsOverlayEnabled

bool IsOverlayEnabled();
Sprawdza, czy nakładka Steam jest uruchomiona i użytkownik jest w stanie uzyskać do niej dostęp.

Uruchomienie i podpięcie procesu gry do procesu nakładki może zająć kilka sekund, więc ta funkcja początkowo zwróci wartość false, gdy nakładka jest wczytywana.

Zwraca: bool.

IsSteamChinaLauncher

bool IsSteamChinaLauncher();
Zwraca odpowiedź, czy bieżący program uruchamiający jest tym używanym przez Steam China. Możesz wywołać zachowanie klienta identyczne z zachowaniem klienta Steam China poprzez dodanie „-dev -steamchina” do wiersza poleceń przy uruchamianiu Steam.

InitFilterText

bool InitFilterText();
Inicjuje filtrowanie tekstu poprzez wczytanie słowników dla języka, w którym gra jest uruchomiona.

Użytkownicy mogą dostosować zachowanie filtra tekstowego w swoich preferencjach konta Steam.

Zwraca: bool
true – jeśli inicjalizacja się powiedzie; false, jeśli filtrowanie jest niedostępne dla języka gry, wtedy FilterText() będzie działać jako przekaźnik.

Zobacz również: ISteamUtils.

FilterText

int FilterText( ETextFilteringContext eContext, CSteamID sourceSteamID, const char *pchInputMessage, char *pchOutFilteredText, uint32 nByteSizeOutFilteredText );
NazwaTypOpis
eContextETextFilteringContextTyp zawartości w stringu wejściowym.
sourceSteamIDAppId_tID Steam będące źródłem stringa wejściowego (np. nazwa gracza lub ten, kto napisał wiadomość na czacie).
pchInputTextconst char*String wejściowy do przefiltrowania, który może być zakodowany w systemie ASCII lub UTF-8.
pchOutFilteredTextchar*Lokalizacja umieszczenia danych wyjściowych, nawet jeśli nie zostanie przeprowadzone filtrowanie.
nByteSizeOutFilteredText uint32Rozmiar pchOutFilteredText (w bajtach), powinien wynosić przynajmniej tyle co strlen(pchInputText)+1.
Filtruje wprowadzoną wiadomość i umieszcza wynik filtrowania w pchOutFilteredText. Filtrowanie wymagane przez prawo jest zawsze stosowane. Może nastąpić dodatkowe filtrowanie na podstawie kontekstu i ustawień użytkownika.

Zwraca: int
Zwraca liczbę odfiltrowanych znaków (nie bajtów).

Zobacz również: InitFilterText.

IsSteamInBigPictureMode

bool IsSteamInBigPictureMode();
Sprawdza, czy Steam i nakładka Steam są uruchomione w trybie Big Picture.

Gry muszą być uruchamiane przez klienta Steam, by móc korzystać z nakładki trybu Big Picture.
Podczas prac rozwojowych gra może zostać dodana do biblioteki producenta jako spoza Steam, by przetestować tę funkcję.

Zwraca: bool
true – jeśli nakładka Big Picture jest dostępna; w przeciwnym wypadku false.
Ta funkcja zawsze zwróci false, jeśli typ twojej aplikacji nie jest grą.

IsSteamRunningInVR

bool IsSteamRunningInVR();
Sprawdza, czy Steam działa w trybie VR.

Zwraca: bool
true – jeśli klient Steam działa w trybie VR; w przeciwnym wypadku false.

IsVRHeadsetStreamingEnabled

bool IsVRHeadsetStreamingEnabled();
Sprawdza, czy widok z gogli VR jest strumieniowany poprzez Steam Remote Play.

Zwraca: bool
true – jeśli VR jest włączone a widok VR jest obecnie strumieniowany; w przeciwnym wypadku false.

Zobacz również: SetVRHeadsetStreamingEnabled.

IsSteamRunningOnSteamDeck

bool IsSteamRunningOnSteamDeck();
Sprawdza, czy Steam jest uruchomiony na Steam Decku.

Zwraca: bool
true – jeśli Steam jest uruchomiony na Steam Decku; w przeciwnym wypadku false.

SetOverlayNotificationInset

void SetOverlayNotificationInset( int nHorizontalInset, int nVerticalInset );
NazwaTypOpis
nHorizontalInsetintOdległość w poziomie od rogu ekranu wyrażona w pikselach.
nVerticalInsetintOdległość w pionie od rogu ekranu wyrażona w pikselach.

Ustawia przesunięcie powiadomień nakładki od rogu ekranu określanych przez SetOverlayNotificationPosition.

Wartość (0, 0) resetuje pozycję do rogu.

Ta pozycja jest ustalana osobno dla każdej gry i resetowana po każdym uruchomieniu.

SetOverlayNotificationPosition

void SetOverlayNotificationPosition( ENotificationPosition eNotificationPosition );
NazwaTypOpis
eNotificationPositionENotificationPosition

Ustawia, w którym rogu wyskakujące powiadomienie o nakładce Steam powinno się wyświetlać.

Możesz również ustawić dystans przesunięcia od określonego rogu ekranu, używając SetOverlayNotificationInset.

Ta pozycja jest ustalana osobno dla każdej gry i resetowana po każdym uruchomieniu.

SetVRHeadsetStreamingEnabled

void SetVRHeadsetStreamingEnabled( bool bEnabled );
NazwaTypOpis
bEnabledboolWłącza (true) lub wyłącza (false) strumieniowane z gogli VR.

Ustawia, czy treści z gogli VR będą strumieniowane poprzez Steam Remote Play.

Jeżeli ta funkcja jest włączona, to scena w goglach będzie strumieniowana, a zdalne wprowadzanie danych wejściowych nie będzie dozwolone. Jeżeli jest wyłączona, to zamiast tego będzie transmitowane okno aplikacji, a zdalne wprowadzanie danych będzie dozwolone. Dla gier VR ta funkcja będzie domyślnie włączona, chyba że ustawiono wartość 0 dla VRHeadsetStreaming w pliku appinfo (lub wyłączono asymetryczne strumieniowanie w ustawieniach VR na stronie partnerskiej Steamworks).

Jest to przydatne dla gier, które mają asymetryczną rozgrywkę wieloosobową.

Zobacz również: IsVRHeadsetStreamingEnabled.

SetWarningMessageHook

void SetWarningMessageHook( SteamAPIWarningMessageHook_t pFunction );
NazwaTypOpis
pFunctionSteamAPIWarningMessageHook_tWskaźnik funkcyjny do wywołania zwrotnego.

Ustawia podpięcie wiadomości z ostrzeżeniem, by przechwytywać ostrzeżenia i wiadomości informacyjne od SteamAPI w funkcji wywołania zwrotnego.

Prototyp funkcji musi być zgodny z definicją w SteamAPIWarningMessageHook_t. Wlicza się w to zewnętrzne powiązanie "C" oraz konwencja wywoływania __cdecl.

"int nSeverity" to krytyczność; 0 dla wiadomości, 1 dla ostrzeżeń. Jeżeli uruchamiasz przez debuggera, będą wysyłane tylko ostrzeżenia. Jeżeli dodasz -debug_steamapi do wiersza poleceń, to będą wysyłane również okna informacyjne.
"const char * pchDebugText" jest tekstem wiadomości.
Wywołania zwrotne nastąpią bezpośrednio po wywołaniu funkcji API, która wygenerowała ostrzeżenie lub wiadomość.

Przekazanie wartości NULL spowoduje odczepienie.

Przykład:
extern "C" void __cdecl SteamAPIDebugTextHook( int nSeverity, const char *pchDebugText ) { ::OutputDebugString( pchDebugText ); if ( nSeverity >= 1 ) { // Miejsce do ustawienia punktu przerwania do wyłapywania błędów API. int x = 3; x = x; } } void EnableWarningMessageHook() { SteamUtils()->SetWarningMessageHook( &SteamAPIDebugTextHook ); }

ShowGamepadTextInput

bool ShowGamepadTextInput( EGamepadTextInputMode eInputMode, EGamepadTextInputLineMode eLineInputMode, const char *pchDescription, uint32 unCharMax, const char *pchExistingText );
NazwaTypOpis
eInputModeEGamepadTextInputModeWybiera tryb wprowadzania danych, jaki ma zostać wykorzystany. Może to być tryb normalny lub hasła (tekst jest ukryty).
eLineInputModeEGamepadTextInputLineModeOkreśla, czy używać jedno- czy wielowierszowego wprowadzania danych.
pchDescriptionconst char *Ustawia opis, który powinien informować użytkownika, do czego służy okno do wprowadzania tekstu.
unCharMaxuint32.Maksymalna liczba znaków, którą użytkownik może wprowadzić.
pchExistingTextconst char *Ustawia istniejący tekst, który użytkownik może edytować.

Aktywuje okno wpisywania tekstu trybu Big Picture, które przyjmuje tylko dane wejściowe z kontrolera.

Zwraca: bool
true – jeśli nakładka trybu Big Picture jest uruchomiona; w przeciwnym wypadku false.

Zobacz również: GetEnteredGamepadTextLength, GetEnteredGamepadTextInput.

ShowFloatingGamepadTextInput

bool ShowFloatingGamepadTextInput( EFloatingGamepadTextInputMode eKeyboardMode, int nTextFieldXPosition, int nTextFieldYPosition, int nTextFieldWidth, int nTextFieldHeight );
NazwaTypOpis
eKeyboardModeEFloatingGamepadTextInputModeWybiera rodzaj klawiatury do wykorzystania.
nTextFieldXPositionintPozycja umieszczenia pola tekstowego na osi X, które nie powinno być przesłaniane przez klawiaturę ekranową.
nTextFieldYPositionintPozycja umieszczenia pola tekstowego na osi Y, które nie powinno być przesłaniane przez klawiaturę ekranową.
nTextFieldWidthintSzerokość pola tekstowego, które nie powinno być przesłaniane przez klawiaturę ekranową.
nTextFieldHeight intWysokość pola tekstowego, które nie powinno być przesłaniane przez klawiaturę ekranową.

Otwiera klawiaturę ekranową na wierzchu zawartości gry i bezpośrednio wysyła do niej dane przycisków klawiatury systemu operacyjnego.
Pozycja pola tekstowego jest wyrażona w pikselach w odniesieniu do pochodzenia okna gry i używana jest do umiejscowienia klawiatury ekranowej w taki sposób, aby nie przesłaniała pola tekstowego.

Zwraca: bool
true – jeśli klawiatura ekranowa została wyświetlona; w przeciwnym wypadku false.

Zobacz również: FloatingGamepadTextInputDismissed_t.

StartVRDashboard

void StartVRDashboard();
Prosi Steam o utworzenie i wyrenderowanie panelu głównego OpenVR.

SetGameLauncherMode

void SetGameLauncherMode( bool bLauncherMode);
NazwaTypOpis
bLauncherModeboolSprawdza, czy program uruchamiający jest aktywny.
Można ją wywołać w programie uruchamiającym gry, który nie ma obsługi kontrolerów, by wymusić na Steam Input translację danych wejściowych kontrolera na klawiaturę i myszkę celem umożliwienia nawigacji po programie uruchamiającym.

Wywołania zwrotne

Są to wywołania zwrotne, które można wykonać poprzez wywołanie SteamAPI_RunCallbacks. Wiele z nich zostanie wywołanych bezpośrednio w odpowiedzi na metody interfejsu ISteamUtils.

CheckFileSignature_t

Wynik wywołania dla CheckFileSignature.

NazwaTypOpis
m_eCheckFileSignatureECheckFileSignatureZawiera wynik sprawdzenia sygnatury pliku.
k_ECheckFileSignatureNoSignaturesFoundForThisApp – Ta funkcja nie została włączona przy konfigurowaniu aplikacji w zakładce podpisywania na stronie partnerskiej.
k_ECheckFileSignatureNoSignaturesFoundForThisFile – Ten plik nie znajduje się na liście w zakładce podpisywania na stronie partnerskiej.
k_ECheckFileSignatureFileNotFound – Ten plik nie istnieje na dysku.
k_ECheckFileSignatureInvalidSignature – Plik istnieje i zakładka podpisywania została dla niego utworzona, ale plik nie został podpisany lub nie pokrywa się z sygnaturą.
k_ECheckFileSignatureValidSignature – Plik jest podpisany, a sygnatura prawidłowa.

Powiązane funkcje: CheckFileSignature.

GamepadTextInputDismissed_t

Wywoływane, gdy tekst wprowadzony przy użyciu kontrolera w trybie Big Picture został zamknięty.

NazwaTypOpis
m_bSubmittedbooltrue, jeśli użytkownik wprowadził i zaakceptował tekst (wywołaj GetEnteredGamepadTextInput, aby otrzymać tekst), false, jeśli dane wejściowe zostały anulowane.
m_unSubmittedTextuint32Zawiera długość wpisanego tekstu w bajtach (jeżeli jakiś został przesłany).

FloatingGamepadTextInputDismissed_t

Wywoływane po zamknięciu klawiatury ekranowej wywołanej przez ShowFloatingGamepadTextInput.

IPCountry_t

Wywoływane po zmianie kraju użytkownika. Kraj powinien być aktualizowany za pomocą GetIPCountry.

To wywołanie zwrotne nie zawiera pól.

LowBatteryPower_t

Wywoływane przy uruchomieniu na laptopie, gdy pozostało mniej niż 10 minut pracy akumulatora, a następnie co minutę.

NazwaTypOpis
m_nMinutesBatteryLeftuint8Szacowana ilość pozostałego czasu pracy akumulatora wyrażona w minutach.

SteamAPICallCompleted_t

Wywoływane po ukończeniu (lub niepowodzeniu) SteamAPICall_t.

NazwaTypOpis
m_hAsyncCallSteamAPICall_tUchwyt ukończonego wywołania API Steam.
m_iCallbackintJest to stała k_iCallback, która unikalnie identyfikuje ukończone wywołanie zwrotne.
m_cubParamuint32Rozmiar ukończonego wywołania zwrotnego w bajtach.

AppResumingFromSuspend_t

Wysyłane po tym, jak urządzenie opuści tryb uśpienia/zawieszenia.

To wywołanie zwrotne nie zawiera pól.

SteamShutdown_t

Wywoływane, gdy Steam przygotowuje się do zamknięcia.

To wywołanie zwrotne nie zawiera pól.

Zmienne wyliczeniowe

Są to zmienne wyliczeniowe, które zostały zdefiniowane do wykorzystania z interfejsem ISteamUtils.

ECheckFileSignature

Wynik wywołania do CheckFileSignature.

NazwaWartośćOpis
k_ECheckFileSignatureInvalidSignature0
k_ECheckFileSignatureValidSignature1
k_ECheckFileSignatureFileNotFound2
k_ECheckFileSignatureNoSignaturesFoundForThisApp3
k_ECheckFileSignatureNoSignaturesFoundForThisFile4

EGamepadTextInputLineMode

Kontroluje dozwoloną liczbę linijek tekstu wprowadzanego przez kontroler w trybie Big Picture.

NazwaWartośćOpis
k_EGamepadTextInputLineModeSingleLine0
k_EGamepadTextInputLineModeMultipleLines1

EGamepadTextInputMode

Tryby wprowadzania dla tekstu wprowadzanego przez kontroler w trybie Big Picture.

NazwaWartośćOpis
k_EGamepadTextInputModeNormal0
k_EGamepadTextInputModePassword1

EFloatingGamepadTextInputMode

Kontroluje tryb klawiatury ekranowej.

NazwaWartośćOpis
k_EFloatingGamepadTextInputModeModeSingleLine0Klawisz Enter zamyka klawiaturę.
k_EFloatingGamepadTextInputModeModeMultipleLines1Użytkownik musi samodzielnie zamknąć klawiaturę.
k_EFloatingGamepadTextInputModeModeEmail2Klawiatura jest wyświetlana w specjalnym trybie, który ułatwia pisanie e-maili.
k_EFloatingGamepadTextInputModeModeNumeric3Wyświetlana jest klawiatura numeryczna.

ESteamAPICallFailure

Wyniki niepowodzenia wywołań API Steam zwracane przez GetAPICallFailureReason.

NazwaWartośćOpis
k_ESteamAPICallFailureNone-1Brak niepowodzenia.
k_ESteamAPICallFailureSteamGone0Lokalny proces Steam przestał odpowiadać. Mogło nastąpić jego wymuszone zamknięcie lub zawieszenie się.
k_ESteamAPICallFailureNetworkFailure1Połączenie sieciowe z serwerami Steam zostało utracone lub już było wcześniej zerwane.
Mniej więcej w tym samym czasie zostanie wysłane wywołanie zwrotne SteamServersDisconnected_t, a po przywróceniu komunikacji między klientem a serwerami Steam zostanie wysłane wywołanie zwrotne SteamServersConnected_t.
k_ESteamAPICallFailureInvalidHandle2Przekazany uchwyt funkcji SteamAPICall_t już nie istnieje.
k_ESteamAPICallFailureMismatchedCallback3Funkcja GetAPICallResult została wywołana przez nieprawidłowy rodzaj wywołania zwrotnego dla tego wywołania API.

Stałe

Są to stałe, które zostały zdefiniowane do wykorzystania z interfejsem ISteamUtils.

NazwaTypWartośćOpis
STEAMUTILS_INTERFACE_VERSIONconst char *"SteamUtils009"