Documentazione di Steamworks
Overlay di Steam

Panoramica

L'overlay di Steam è una parte dell'interfaccia utente attivabile in sovrapposizione a quasi tutti i giochi avviati tramite Steam. Consente all'utente di accedere all'elenco degli amici, al browser web, alla chat e all'acquisto di DLC in gioco.

Il tasto predefinito per accedere all'Overlay durante una sessione di gioco è SHIFT+TAB, ma la combinazione può essere modificata dalla finestra Steam > Impostazioni nel client.

Requisiti

Il tuo gioco non deve rispondere a nessun requisito speciale per consentire il funzionamento dell'overlay, che si connette automaticamente a qualsiasi gioco avviato da Steam. Durante lo sviluppo, eseguendo il tuo gioco in un debugger, l'overlay viene caricato quando effettui la chiamata a SteamAPI_Init. Perciò, prima di inizializzare il dispositivo OpenGL/D3D, dovrai assicurarti di effettuare la chiamata a SteamAPI_Init, altrimenti non sarà in grado di intercettare la creazione del dispositivo.

L'overlay supporta i giochi che utilizzano DirectX 7-12, OpenGL, Metal e Vulkan. L'overlay non sarà attivo nei giochi rasterizzati via software.
Nota: l'overlay viene automaticamente disabilitato per i tipi di applicazione " Software". Se vuoi l'overlay abilitato contatta l'Assistenza di Steam.

Attivazione dell'overlay dall'applicazione

L'API di Steamworks fornisce un insieme di funzioni che consentono l'accesso diretto all'attivazione dell'Overlay del gioco.

Comunicazione tra l'overlay e il gioco

I seguenti segnali (richiamate) vengono inviati da Steam al gioco, in base alle azioni eseguite dall'utente nell'Overlay:
  • GameOverlayActivated_t
    Viene inviata quando l'Overlay del gioco si attiva o disattiva. Questa funzione può essere utilizzata per mettere in pausa o riprendere i giochi per giocatore singolo.
  • GameServerChangeRequested_t
    Viene inviata quando l'utente seleziona il gioco di un amico a cui unirsi e include i dettagli sul server di gioco a cui unirsi.
  • GameLobbyJoinRequested_t
    Viene inviata quando l'utente seleziona il gioco di un amico a cui unirsi e include i dettagli sulla lobby a cui unirsi.

Domande frequenti

Nota: È possibile trovare ulteriori risposte sul sito dell'assistenza per gli utenti, ad esempio in questa discussione: l'overlay della Comunità di Steam non si attiva.

D. Perché l'overlay di Steam provoca l'arresto della mia applicazione?

R. L'overlay di Steam viene utilizzato in migliaia di giochi e come tale è stato accuratamente testato. Raramente è la causa di un crash. Tuttavia, a causa del modo in cui si introduce nel gioco, spesso espone le perdite di memoria o la sua corruzione nell'uso dell'API di rendering che potrebbe non avere avuto impatto sull'esperienza di gioco.

Per eseguire la diagnosi dei crash dell'overlay, ad esempio con DirectX, cerca di determinare il motivo dello stato errato di D3D utilizzando il runtime di debug di D3D con le restituzioni di tutti i livelli (informazioni/avviso/errore/nota) attivate. Potrebbe fornire qualche suggerimento sulle risorse orfane D3D. Se non riesci a risalire alla causa in questo modo, potrebbe trattarsi di un più generale problema di corruzione della memoria. Se i crash si verificano sempre durante l'arresto, è probabile che si tratti di un problema di ordinamento causato dalla mancata esecuzione della pulizia da parte del gioco al momento dell'arresto.

Se dopo il debug si verificano ancora crash dell'applicazione nell'overlay, scrivici tramite il gruppo di sviluppo di Steamworks.

D. Perché l'overlay di Steam non viene visualizzato nella mia app?

R. In primo luogo, assicurati che la tua applicazione soddisfi i Requisiti descritti in precedenza. Se ha i requisiti necessari e ancora non riesci a visualizzare l'overlay, assicurati di avviare l'applicazione dal client di Steam, che sia in modo diretto dalla lobby o dall'avvio rapido oppure effettuando la chiamata a SteamAPI_RestartAppIfNecessary.

D. Il mio gioco usa D12onWin7 e l'Overlay di Steam non funziona. Perché?

R. Fai riferimento a questo documento di Microsoft su come aggiungere il supporto all'Overlay di Steam.