Steamworks-dokumentasjon
Steam Overlay

Overview

The Steam overlay is a piece of the Steam user interface that can be activated over the top of almost any game launched through Steam. It lets the user access the friends list, web browser, chat, and in-game DLC purchasing.

The default key for a user to access the overlay while in a game is SHIFT+TAB, but they can change it in their Steam->Settings dialog.

Requirements

Your game does not need to do anything special for the overlay to work, it automatically hooks into any game launched from Steam! While in development and running your game in a debugger, the overlay is loaded when you call SteamAPI_Init. As such you'll need to make sure to call SteamAPI_Init prior to initializing the OpenGL/D3D device, otherwise it won't be able to hook the device creation.

The overlay supports games that use DirectX 7 - 12, OpenGL, Metal, and Vulkan. The overlay will not be active in software-rasterized games.

macOS: Overlay support for 10.15 (Catalina) requires adding entitlements to your build configuration. Informasjon finnes i dokumentasjonen om plattformer.
NOTE: The overlay is automatically disabled for 'Software' app types. If you need the overlay enabled, you can do so by:
  • Making sure your Steam account has the Edit App Metadata permission
  • Navigate from the App's landing page to > Edit Steamworks Settings > Installation tab > General Installation
  • Check box for Enable Steam Overlay for Application
  • Publish

Activating the overlay from your app

There are a set of functions in the Steamworks API that give you direct access to triggering the game overlay.

Communication from the overlay to your game

The following signals (callbacks) are sent from Steam to your game, based on user action in the overlay:
  • GameOverlayActivated_t
    Posted when game overlay activates or deactivates. The game can use this to pause or resume single player games.
  • GameServerChangeRequested_t
    Posted when the user selects a friends game to join, contains details about the game server to join.
  • GameLobbyJoinRequested_t
    Posted when the user selects a friends game to join, contains details about the lobby to join.

Frequently Asked Questions

NOTE: Du kan finne ytterligere svar på kundesiden som for eksempel her: Steams samfunnsoverlegg.

Q. Why is the Steam overlay crashing my app?

A. The Steam overlay is used in thousands of games and as such it has been very thoroughly tested and is rarely the cause of a crash. However, because of the way it injects itself into the game, it does often expose memory leaks or memory corruption in the usage of your rendering API that may not have impacted game play.

To diagnose overlay crashes with DirectX for example, try to determine how D3D got into a bad state by using the d3d debug runtime with all (info/warning/error/notice) level spew turned on. It might give some hints to orphaned d3d resources. If you don’t find anything that way there may be a more general memory corruption issue. If these always occur on shutdown then it’s likely a shutdown ordering issue with the game not cleaning up as it shuts down.

Hvis applikasjonen fremdeles krasjer med overlegget etter feilsøkingen, si ifra til oss i utviklergruppen til Steamworks.

Q. Why isn't the Steam overlay showing up in my app?

A. First ensure that you meet the Requirements above. If you do meet the requirements and it's still not showing up, make sure you're launching the app through the Steam client, either directly from the lobby/quick launch list, or by calling SteamAPI_RestartAppIfNecessary.

Q. Spillet bruker D3D12 på Windows 7, og Steam-overlegget fungerer ikke. Why?

A. Ta en titt på dette dokumentet til Microsoft om hvordan man legger til støtte for Steam-overlegget.