This commit is contained in:
Riley Labrecque
2014-01-29 13:02:44 +02:00
parent dc44b16c7b
commit b4165e65ff
11 changed files with 29 additions and 9 deletions
+7
View File
@@ -12,6 +12,13 @@ website at: http://partner.steamgames.com
Revision History:
----------------------------------------------------------------
v1.07 16th December 2009
----------------------------------------------------------------
* Replaced SteamAPI_RestartApp() with SteamAPI_RestartAppIfNecessary(). This new function detects if the process was started through Steam, and starts the current game through Steam if necessary.
* Added ISteamUtils::BOverlayNeedsPresent() so games with event driven rendering can determine when the Steam overlay needs to draw
----------------------------------------------------------------
v1.06 30th September 2009
----------------------------------------------------------------
+9 -6
View File
@@ -54,15 +54,18 @@ int APIENTRY RealMain(HINSTANCE hInstance,
LPSTR lpCmdLine,
int nCmdShow)
{
/*
if ( !SteamAPI_IsSteamRunning() )
if ( SteamAPI_RestartAppIfNecessary( k_uAppIdInvalid ) )
{
// if Steam is not running, SteamAPI_RestartApp starts the local Steam client and also launches this game again
// Once you get a public Steam AppID assigned for this game, you need to replace k_uAppIdInvalid with it.
SteamAPI_RestartApp( k_uAppIdInvalid );
// if Steam is not running or the game wasn't started through Steam, SteamAPI_RestartAppIfNecessary starts the
// local Steam client and also launches this game again.
// Once you get a public Steam AppID assigned for this game, you need to replace k_uAppIdInvalid with it and
// removed steam_appid.txt from the game depot.
return EXIT_FAILURE;
}
*/
// Init Steam CEG
if ( !Steamworks_InitCEGLibrary() )
+12 -1
View File
@@ -97,9 +97,20 @@ public:
// Returns true if the overlay is running & the user can access it. The overlay process could take a few seconds to
// start & hook the game process, so this function will initially return false while the overlay is loading.
virtual bool IsOverlayEnabled() = 0;
// Normally this call is unneeded if your game has a constantly running frame loop that calls the
// D3D Present API, or OGL SwapBuffers API every frame.
//
// However, if you have a game that only refreshes the screen on an event driven basis then that can break
// the overlay, as it uses your Present/SwapBuffers calls to drive it's internal frame loop and it may also
// need to Present() to the screen any time an even needing a notification happens or when the overlay is
// brought up over the game by a user. You can use this API to ask the overlay if it currently need a present
// in that case, and then you can check for this periodically (roughly 33hz is desirable) and make sure you
// refresh the screen with Present or SwapBuffers to allow the overlay to do it's work.
virtual bool BOverlayNeedsPresent() = 0;
};
#define STEAMUTILS_INTERFACE_VERSION "SteamUtils004"
#define STEAMUTILS_INTERFACE_VERSION "SteamUtils005"
// callbacks
+1 -2
View File
@@ -57,8 +57,7 @@ S_API void SteamAPI_Shutdown();
S_API bool SteamAPI_IsSteamRunning();
// restart your app through Steam to enable required Steamworks features
S_API bool SteamAPI_RestartApp( uint32 unOwnAppID );
S_API bool SteamAPI_RestartAppIfNecessary( uint32 unOwnAppID );
// crash dump recording functions
S_API void SteamAPI_WriteMiniDump( uint32 uStructuredExceptionCode, void* pvExceptionInfo, uint32 uBuildID );
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.