diff --git a/.ci/azure.yml b/.ci/azure.yml index fa039ad..08708df 100644 --- a/.ci/azure.yml +++ b/.ci/azure.yml @@ -1,6 +1,6 @@ # Azure Pipeline YAML file -name: 1.55$(Rev:.r) +name: 1.56$(Rev:.r) trigger: branches: diff --git a/cmake/CMakeLists.txt b/cmake/CMakeLists.txt index a000d68..b2c15ad 100644 --- a/cmake/CMakeLists.txt +++ b/cmake/CMakeLists.txt @@ -1,6 +1,6 @@ include(ExternalProject) -set(SWSDK_VERSION "1.55") +set(SWSDK_VERSION "1.56") set(SWSDK_RELEASE "x86") if( CMAKE_SIZEOF_VOID_P EQUAL 8 ) set(SWSDK_RELEASE "x64") diff --git a/steamworks_sdk/SteamworksExample/Main.cpp b/steamworks_sdk/SteamworksExample/Main.cpp index 2d408e5..ea381c3 100644 --- a/steamworks_sdk/SteamworksExample/Main.cpp +++ b/steamworks_sdk/SteamworksExample/Main.cpp @@ -12,6 +12,7 @@ #define MAX_PATH PATH_MAX #include #define _getcwd getcwd +#define _snprintf snprintf #endif #if defined(WIN32) @@ -259,14 +260,12 @@ static int RealMain( const char *pchCmdLine, HINSTANCE hInstance, int nCmdShow ) } char rgchFullPath[1024]; -#if defined(_WIN32) - _snprintf( rgchFullPath, sizeof( rgchFullPath ), "%s\\%s", rgchCWD, "steam_input_manifest.vdf" ); -#elif defined(OSX) +#if defined(OSX) // hack for now, because we do not have utility functions available for finding the resource path // alternatively we could disable the SteamController init on OS X _snprintf( rgchFullPath, sizeof( rgchFullPath ), "%s/steamworksexample.app/Contents/Resources/%s", rgchCWD, "steam_input_manifest.vdf" ); #else - _snprintf( rgchFullPath, sizeof( rgchFullPath ), "%s/%s", rgchCWD, "steam_input_manifest.vdf" ); + _snprintf( rgchFullPath, sizeof( rgchFullPath ), "%s\\%s", rgchCWD, "steam_input_manifest.vdf" ); #endif SteamInput()->SetInputActionManifestFilePath( rgchFullPath ); diff --git a/steamworks_sdk/SteamworksExample/OverlayExamples.cpp b/steamworks_sdk/SteamworksExample/OverlayExamples.cpp index 1230373..33ea719 100644 --- a/steamworks_sdk/SteamworksExample/OverlayExamples.cpp +++ b/steamworks_sdk/SteamworksExample/OverlayExamples.cpp @@ -52,11 +52,20 @@ class COverlayExamplesMenu : public CBaseMenu AddMenuItem( COverlayExamplesMenu::MenuItem_t( "ActivateGameOverlayToUser - friendrequestaccept", { OverlayExample_t::k_EOverlayExampleItem_ActivateGameOverlayToUser, "friendrequestaccept" } ) ); AddMenuItem( COverlayExamplesMenu::MenuItem_t( "ActivateGameOverlayToUser - friendrequestignore", { OverlayExample_t::k_EOverlayExampleItem_ActivateGameOverlayToUser, "friendrequestignore" } ) ); - AddMenuItem( COverlayExamplesMenu::MenuItem_t( "ActivateGameOverlayToWebPage", { OverlayExample_t::k_EOverlayExampleItem_ActivateGameOverlayToWebPage, "https://steamcommunity.com" } ) ); + AddMenuItem( COverlayExamplesMenu::MenuItem_t( "ActivateGameOverlayToWebPage", { OverlayExample_t::k_EOverlayExampleItem_ActivateGameOverlayToWebPage, "https://tomb.valve.org/community/actions/buttons/" } ) ); AddMenuItem( COverlayExamplesMenu::MenuItem_t( "ActivateGameOverlayToStore", { OverlayExample_t::k_EOverlayExampleItem_ActivateGameOverlayToStore, "" } ) ); AddMenuItem( COverlayExamplesMenu::MenuItem_t( "ActivateGameOverlayToStore - Add to Cart", { OverlayExample_t::k_EOverlayExampleItem_ActivateGameOverlayToStore, "addtocart" } ) ); AddMenuItem( COverlayExamplesMenu::MenuItem_t( "ActivateGameOverlayToStore - Add to Cart & Show", { OverlayExample_t::k_EOverlayExampleItem_ActivateGameOverlayToStore, "addtocartandshow" } ) ); AddMenuItem( COverlayExamplesMenu::MenuItem_t( "ActivateGameOverlayInviteDialogConnectString", { OverlayExample_t::k_EOverlayExampleItem_ActivateGameOverlayInviteDialogConnectString, NULL } ) ); + AddMenuItem( COverlayExamplesMenu::MenuItem_t( SteamScreenshots()->IsScreenshotsHooked() ? "Screenshots Hooked!" : "Hook Screenshots", { OverlayExample_t::k_EOverlayExampleItem_HookScreenshots, NULL } ) ); + AddMenuItem( COverlayExamplesMenu::MenuItem_t( "Request Keyboard", { OverlayExample_t::k_EOverlayExampleItem_RequestKeyboard, NULL } ) ); + + AddMenuItem( COverlayExamplesMenu::MenuItem_t( "Set Notification Inset", { OverlayExample_t::k_EOverlayExampleItem_Notification_SetInset, "100" } ) ); + AddMenuItem( COverlayExamplesMenu::MenuItem_t( "Reset Notification Inset", { OverlayExample_t::k_EOverlayExampleItem_Notification_SetInset, "0" } ) ); + AddMenuItem( COverlayExamplesMenu::MenuItem_t( "Set Notification Position: Top Left", { OverlayExample_t::k_EOverlayExampleItem_Notification_SetPosition, "0" } ) ); + AddMenuItem( COverlayExamplesMenu::MenuItem_t( "Set Notification Position: Top Right", { OverlayExample_t::k_EOverlayExampleItem_Notification_SetPosition, "1" } ) ); + AddMenuItem( COverlayExamplesMenu::MenuItem_t( "Set Notification Position: Bottom Left", { OverlayExample_t::k_EOverlayExampleItem_Notification_SetPosition, "2" } ) ); + AddMenuItem( COverlayExamplesMenu::MenuItem_t( "Set Notification Position: Bottom Right", { OverlayExample_t::k_EOverlayExampleItem_Notification_SetPosition, "3" } ) ); AddMenuItem( COverlayExamplesMenu::MenuItem_t( "Return to main menu", { OverlayExample_t::k_EOverlayExampleItem_BackToMenu, NULL } ) ); @@ -154,8 +163,33 @@ void COverlayExamples::RunFrame() } break; + case OverlayExample_t::k_EOverlayExampleItem_HookScreenshots: + { + SteamScreenshots()->HookScreenshots( !SteamScreenshots()->IsScreenshotsHooked() ); + m_pMenu->Rebuild(); + } + break; + + case OverlayExample_t::k_EOverlayExampleItem_RequestKeyboard: + { + EGamepadTextInputMode eInputMode = k_EGamepadTextInputModeNormal; + EGamepadTextInputLineMode eLineInputMode = k_EGamepadTextInputLineModeSingleLine; + const char *pchDescription = "Enter Text Here"; + uint32 unCharMax = 20; + const char *pchExistingText = "Placeholder"; + SteamUtils()->ShowGamepadTextInput( eInputMode , eLineInputMode, pchDescription, unCharMax, pchExistingText ); + } + break; + + case OverlayExample_t::k_EOverlayExampleItem_Notification_SetInset: + SteamUtils()->SetOverlayNotificationInset( atoi( m_delayedCommand.m_pchExtraCommandData ), atoi( m_delayedCommand.m_pchExtraCommandData ) ); + break; + case OverlayExample_t::k_EOverlayExampleItem_Notification_SetPosition: + SteamUtils()->SetOverlayNotificationPosition( (ENotificationPosition)atoi( m_delayedCommand.m_pchExtraCommandData ) ); + break; + default: - OutputDebugString( "wat" ); + break; } m_delayedCommand.m_eItem = OverlayExample_t::k_EOverlayExampleItem_Invalid; @@ -180,3 +214,12 @@ void COverlayExamples::Show() m_pMenu->Rebuild(); } +void COverlayExamples::OnScreenshotRequested( ScreenshotRequested_t *pCallback ) +{ + SteamFriends()->ActivateGameOverlayToWebPage( "google.com" ); +} + +void COverlayExamples::OnSteamScreenshotReady( ScreenshotReady_t *pCallback ) +{ + +} \ No newline at end of file diff --git a/steamworks_sdk/SteamworksExample/OverlayExamples.h b/steamworks_sdk/SteamworksExample/OverlayExamples.h index 54dbd13..6d2318c 100644 --- a/steamworks_sdk/SteamworksExample/OverlayExamples.h +++ b/steamworks_sdk/SteamworksExample/OverlayExamples.h @@ -37,6 +37,9 @@ class COverlayExamples COverlayExamplesMenu *m_pMenu; OverlayExample_t m_delayedCommand; + + STEAM_CALLBACK( COverlayExamples, OnScreenshotRequested, ScreenshotRequested_t ); + STEAM_CALLBACK( COverlayExamples, OnSteamScreenshotReady, ScreenshotReady_t ); }; #endif // OVERLAYEXAMPLES_H diff --git a/steamworks_sdk/SteamworksExample/RemoteStorage.cpp b/steamworks_sdk/SteamworksExample/RemoteStorage.cpp index 9be3ec3..853defe 100644 --- a/steamworks_sdk/SteamworksExample/RemoteStorage.cpp +++ b/steamworks_sdk/SteamworksExample/RemoteStorage.cpp @@ -232,6 +232,11 @@ bool CRemoteStorageScreen::BHandleCancel() // always cancel m_rgchGreetingNext[0] = 0; + if( m_pGameEngine->BIsSteamInputDeviceActive() ) + { + SteamUtils()->DismissFloatingGamepadTextInput(); + } + m_bFinished = true; return true; } diff --git a/steamworks_sdk/SteamworksExample/SpaceWarClient.cpp b/steamworks_sdk/SteamworksExample/SpaceWarClient.cpp index e295159..b35c5de 100644 --- a/steamworks_sdk/SteamworksExample/SpaceWarClient.cpp +++ b/steamworks_sdk/SteamworksExample/SpaceWarClient.cpp @@ -33,6 +33,7 @@ #define MAX_PATH PATH_MAX #include #define _getcwd getcwd +#define _snprintf snprintf #endif @@ -277,6 +278,7 @@ void CSpaceWarClient::DisconnectFromServer() if ( m_hConnServer != k_HSteamNetConnection_Invalid ) SteamNetworkingSockets()->CloseConnection( m_hConnServer, k_EDRClientDisconnect, nullptr, false ); m_steamIDGameServer = CSteamID(); + m_steamIDGameServerFromBrowser = CSteamID(); m_hConnServer = k_HSteamNetConnection_Invalid; } @@ -301,9 +303,17 @@ void CSpaceWarClient::OnReceiveServerInfo( CSteamID steamIDGameServer, bool bVAC MsgClientBeginAuthentication_t msg; #ifdef USE_GS_AUTH_API + SteamNetworkingIdentity snid; + // if the server Steam ID was aquired from another source ( m_steamIDGameServerFromBrowser ) + // then use it as the identity + // if it only came from the server itself, then use the IP address + if ( m_steamIDGameServer == m_steamIDGameServerFromBrowser ) + snid.SetSteamID( m_steamIDGameServer ); + else + snid.SetIPv4Addr( m_unServerIP, m_usServerPort ); char rgchToken[1024]; uint32 unTokenLen = 0; - m_hAuthTicket = SteamUser()->GetAuthSessionTicket( rgchToken, sizeof( rgchToken ), &unTokenLen ); + m_hAuthTicket = SteamUser()->GetAuthSessionTicket( rgchToken, sizeof( rgchToken ), &unTokenLen, &snid ); msg.SetToken( rgchToken, unTokenLen ); #else @@ -625,7 +635,7 @@ void CSpaceWarClient::InitiateServerConnection( CSteamID steamIDGameServer ) SetGameState( k_EClientGameConnecting ); - m_steamIDGameServer = steamIDGameServer; + m_steamIDGameServerFromBrowser = m_steamIDGameServer = steamIDGameServer; SteamNetworkingIdentity identity; identity.SetSteamID(steamIDGameServer); diff --git a/steamworks_sdk/SteamworksExample/SpaceWarClient.h b/steamworks_sdk/SteamworksExample/SpaceWarClient.h index 46da1e5..eac650d 100644 --- a/steamworks_sdk/SteamworksExample/SpaceWarClient.h +++ b/steamworks_sdk/SteamworksExample/SpaceWarClient.h @@ -142,7 +142,11 @@ struct OverlayExample_t k_EOverlayExampleItem_ActivateGameOverlayToWebPage, k_EOverlayExampleItem_ActivateGameOverlayToStore, // k_EOverlayExampleItem_ActivateGameOverlayRemotePlayTogetherInviteDialog, - k_EOverlayExampleItem_ActivateGameOverlayInviteDialogConnectString + k_EOverlayExampleItem_ActivateGameOverlayInviteDialogConnectString, + k_EOverlayExampleItem_HookScreenshots, + k_EOverlayExampleItem_RequestKeyboard, + k_EOverlayExampleItem_Notification_SetInset, + k_EOverlayExampleItem_Notification_SetPosition, }; EOverlayExampleItem m_eItem; @@ -295,6 +299,7 @@ class CSpaceWarClient // load subscribed workshop items void LoadWorkshopItems(); + void QueryWorkshopItems(); // Set appropriate rich presence keys for a player who is currently in-game and // return the value that should go in steam_display @@ -360,6 +365,7 @@ class CSpaceWarClient // Server address data CSteamID m_steamIDGameServer; + CSteamID m_steamIDGameServerFromBrowser; uint32 m_unServerIP; uint16 m_usServerPort; HAuthTicket m_hAuthTicket; @@ -424,7 +430,7 @@ class CSpaceWarClient // Steam Workshop items CWorkshopItem *m_rgpWorkshopItems[ MAX_WORKSHOP_ITEMS ]; - int m_nNumWorkshopItems; // items in m_rgpWorkshopItems + int m_nNumWorkshopItems; // items in m_rgpWorkshopItem // Main menu instance CMainMenu *m_pMainMenu; @@ -481,6 +487,8 @@ class CSpaceWarClient // callback when new Workshop item was installed STEAM_CALLBACK(CSpaceWarClient, OnWorkshopItemInstalled, ItemInstalled_t); + void OnUGCQueryCompleted( SteamUGCQueryCompleted_t *pParam, bool bIOFailure ); + CCallResult m_SteamCallResultUGCQueryCompleted; // Steam China support. duration control callback can be posted asynchronously, but we also // call it directly. diff --git a/steamworks_sdk/SteamworksExample/flags.mak b/steamworks_sdk/SteamworksExample/flags.mak index 79e1571..de3663c 100644 --- a/steamworks_sdk/SteamworksExample/flags.mak +++ b/steamworks_sdk/SteamworksExample/flags.mak @@ -64,7 +64,7 @@ RELEASE_CXXFLAGS := $(RELEASE_CFLAGS) MACOS_FRAMEWORKS := -LDFLAGS := $(shell STEAM_RUNTIME_ROOT=$(STEAM_RUNTIME_ROOT) $(SDL_CONFIG) --libs) -lSDL2_ttf -lfreetype -lz -lGL -lopenal +LDFLAGS := $(shell STEAM_RUNTIME_ROOT=$(STEAM_RUNTIME_ROOT) $(SDL_CONFIG) --libs) -lSDL3_ttf -lfreetype -lz -lGL -lopenal DEBUG_LDFLAGS := RELEASE_LDGLAGS := diff --git a/steamworks_sdk/SteamworksExample/gameenginesdl.cpp b/steamworks_sdk/SteamworksExample/gameenginesdl.cpp index 7b0dce2..cad2575 100644 --- a/steamworks_sdk/SteamworksExample/gameenginesdl.cpp +++ b/steamworks_sdk/SteamworksExample/gameenginesdl.cpp @@ -931,7 +931,7 @@ bool CGameEngineGL::BDrawString( HGAMEFONT hFont, RECT rect, DWORD dwColor, DWOR m_MapTextures[ hTexture ].m_uWidth = surface->w; m_MapTextures[ hTexture ].m_uHeight = surface->h; - SDL_FreeSurface( surface ); + SDL_DestroySurface( surface ); m_MapStrings[ std::string(szFontPrefix) + std::string(pchText) ] = hTexture; } diff --git a/steamworks_sdk/SteamworksExample/gameenginesdl.h b/steamworks_sdk/SteamworksExample/gameenginesdl.h index 627a627..58a7ff9 100644 --- a/steamworks_sdk/SteamworksExample/gameenginesdl.h +++ b/steamworks_sdk/SteamworksExample/gameenginesdl.h @@ -15,9 +15,9 @@ typedef unsigned char byte; #include #include -#include -#include -#include +#include +#include +#include #include #include diff --git a/steamworks_sdk/SteamworksExample/p2pauth.cpp b/steamworks_sdk/SteamworksExample/p2pauth.cpp index 3eff7f8..b0140bd 100644 --- a/steamworks_sdk/SteamworksExample/p2pauth.cpp +++ b/steamworks_sdk/SteamworksExample/p2pauth.cpp @@ -59,7 +59,9 @@ void CP2PAuthPlayer::StartAuthPlayer() // Create a ticket if we haven't yet if ( m_cubTicketIGaveThisUser == 0 ) { - m_hAuthTicketIGaveThisUser = SteamUser()->GetAuthSessionTicket( m_rgubTicketIGaveThisUser, sizeof( m_rgubTicketIGaveThisUser ), &m_cubTicketIGaveThisUser ); + SteamNetworkingIdentity snid; + snid.SetSteamID( m_steamID ); + m_hAuthTicketIGaveThisUser = SteamUser()->GetAuthSessionTicket( m_rgubTicketIGaveThisUser, sizeof( m_rgubTicketIGaveThisUser ), &m_cubTicketIGaveThisUser, &snid ); } // Send the ticket to the server. It will relay to the client diff --git a/steamworks_sdk/SteamworksExample/stdafx.h b/steamworks_sdk/SteamworksExample/stdafx.h index 96e75e9..f99ea71 100644 --- a/steamworks_sdk/SteamworksExample/stdafx.h +++ b/steamworks_sdk/SteamworksExample/stdafx.h @@ -13,7 +13,6 @@ #pragma once -#include #include #include diff --git a/steamworks_sdk/SteamworksExample/steam_input_manifest.vdf b/steamworks_sdk/SteamworksExample/steam_input_manifest.vdf index bc02232..c6073c4 100644 --- a/steamworks_sdk/SteamworksExample/steam_input_manifest.vdf +++ b/steamworks_sdk/SteamworksExample/steam_input_manifest.vdf @@ -81,6 +81,7 @@ "TurnRight" "Turn Right" "FireLasers" "Fire Lasers" "PauseMenu" "Pause Menu" + "ForwardThrust" "Forward Thrust" "BackwardThrust" "Backward Thrust" "MenuControls" "Menu Controls" "MenuUp" "Menu Up" diff --git a/steamworks_sdk/SteamworksExample/steamworksexample.xcodeproj/project.pbxproj b/steamworks_sdk/SteamworksExample/steamworksexample.xcodeproj/project.pbxproj index bf11a7a..93066e3 100644 --- a/steamworks_sdk/SteamworksExample/steamworksexample.xcodeproj/project.pbxproj +++ b/steamworks_sdk/SteamworksExample/steamworksexample.xcodeproj/project.pbxproj @@ -1,597 +1,597 @@ -// !$*UTF8*$! -{ - archiveVersion = 1; - classes = { - }; - objectVersion = 46; - objects = { - -/* Begin PBXBuildFile section */ - 503C6CB61268F34200B66E3B /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 503C6CB51268F34200B66E3B /* Cocoa.framework */; }; - 503C6D0F1268F49F00B66E3B /* BaseMenu.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 503C6CD91268F49F00B66E3B /* BaseMenu.cpp */; }; - 503C6D101268F49F00B66E3B /* connectingmenu.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 503C6CDB1268F49F00B66E3B /* connectingmenu.cpp */; }; - 503C6D121268F49F00B66E3B /* gameengineosx.mm in Sources */ = {isa = PBXBuildFile; fileRef = 503C6CE01268F49F00B66E3B /* gameengineosx.mm */; }; - 503C6D131268F49F00B66E3B /* glstringosx.mm in Sources */ = {isa = PBXBuildFile; fileRef = 503C6CE21268F49F00B66E3B /* glstringosx.mm */; }; - 503C6D141268F49F00B66E3B /* Leaderboards.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 503C6CE31268F49F00B66E3B /* Leaderboards.cpp */; }; - 503C6D151268F49F00B66E3B /* Lobby.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 503C6CE51268F49F00B66E3B /* Lobby.cpp */; }; - 503C6D161268F49F00B66E3B /* Main.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 503C6CE71268F49F00B66E3B /* Main.cpp */; }; - 503C6D171268F49F00B66E3B /* MainMenu.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 503C6CE81268F49F00B66E3B /* MainMenu.cpp */; }; - 503C6D191268F49F00B66E3B /* p2pauth.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 503C6CED1268F49F00B66E3B /* p2pauth.cpp */; }; - 503C6D1A1268F49F00B66E3B /* PhotonBeam.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 503C6CEF1268F49F00B66E3B /* PhotonBeam.cpp */; }; - 503C6D1B1268F49F00B66E3B /* QuitMenu.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 503C6CF11268F49F00B66E3B /* QuitMenu.cpp */; }; - 503C6D1C1268F49F00B66E3B /* RemoteStorage.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 503C6CF31268F49F00B66E3B /* RemoteStorage.cpp */; }; - 503C6D1D1268F49F00B66E3B /* ServerBrowser.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 503C6CF51268F49F00B66E3B /* ServerBrowser.cpp */; }; - 503C6D1E1268F49F00B66E3B /* Ship.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 503C6CF81268F49F00B66E3B /* Ship.cpp */; }; - 503C6D1F1268F49F00B66E3B /* SpaceWarClient.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 503C6CFB1268F49F00B66E3B /* SpaceWarClient.cpp */; }; - 503C6D201268F49F00B66E3B /* SpaceWarEntity.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 503C6CFD1268F49F00B66E3B /* SpaceWarEntity.cpp */; }; - 503C6D221268F49F00B66E3B /* SpaceWarServer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 503C6D011268F49F00B66E3B /* SpaceWarServer.cpp */; }; - 503C6D231268F49F00B66E3B /* StarField.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 503C6D031268F49F00B66E3B /* StarField.cpp */; }; - 503C6D241268F49F00B66E3B /* StatsAndAchievements.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 503C6D051268F49F00B66E3B /* StatsAndAchievements.cpp */; }; - 503C6D251268F49F00B66E3B /* stdafx.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 503C6D071268F49F00B66E3B /* stdafx.cpp */; }; - 503C6D261268F49F00B66E3B /* Sun.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 503C6D091268F49F00B66E3B /* Sun.cpp */; }; - 503C6D271268F49F00B66E3B /* VectorEntity.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 503C6D0B1268F49F00B66E3B /* VectorEntity.cpp */; }; - 503C6D281268F49F00B66E3B /* voicechat.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 503C6D0D1268F49F00B66E3B /* voicechat.cpp */; }; - 503C6DAC1268FE1000B66E3B /* OpenAL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 503C6DAA1268FE1000B66E3B /* OpenAL.framework */; }; - 503C6DAD1268FE1000B66E3B /* OpenGL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 503C6DAB1268FE1000B66E3B /* OpenGL.framework */; }; - 503C6DB41269002800B66E3B /* libsteam_api.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 503C6DB31269002800B66E3B /* libsteam_api.dylib */; }; - 504EDCBC126901EC00F96D63 /* libsteam_api.dylib in CopyFiles */ = {isa = PBXBuildFile; fileRef = 503C6DB31269002800B66E3B /* libsteam_api.dylib */; }; - 504EDCC21269026C00F96D63 /* steam_appid.txt in CopyFiles */ = {isa = PBXBuildFile; fileRef = 504EDCC01269025A00F96D63 /* steam_appid.txt */; }; - 50D642871461EF3200A5739B /* clanchatroom.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 50D642851461EF3200A5739B /* clanchatroom.cpp */; }; - 50E77DEB1362190C000FC072 /* cglmbuffer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 50E77DD11362190C000FC072 /* cglmbuffer.cpp */; }; - 50E77DEC1362190C000FC072 /* cglmfbo.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 50E77DD31362190C000FC072 /* cglmfbo.cpp */; }; - 50E77DED1362190C000FC072 /* cglmprogram.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 50E77DD51362190C000FC072 /* cglmprogram.cpp */; }; - 50E77DEE1362190C000FC072 /* cglmquery.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 50E77DD71362190C000FC072 /* cglmquery.cpp */; }; - 50E77DEF1362190C000FC072 /* cglmtex.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 50E77DD91362190C000FC072 /* cglmtex.cpp */; }; - 50E77DF01362190C000FC072 /* dx9asmtogl2.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 50E77DDB1362190C000FC072 /* dx9asmtogl2.cpp */; }; - 50E77DF11362190C000FC072 /* dxabstract.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 50E77DDD1362190C000FC072 /* dxabstract.cpp */; }; - 50E77DF21362190C000FC072 /* glmgr.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 50E77DE11362190C000FC072 /* glmgr.cpp */; }; - 50E77DF31362190C000FC072 /* glmgrbasics.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 50E77DE31362190C000FC072 /* glmgrbasics.cpp */; }; - 50E77DF41362190C000FC072 /* glmgrcocoa.mm in Sources */ = {isa = PBXBuildFile; fileRef = 50E77DE51362190C000FC072 /* glmgrcocoa.mm */; }; - 50E77DF51362190C000FC072 /* glmgrext.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 50E77DE61362190C000FC072 /* glmgrext.cpp */; }; - 50E77DF61362190C000FC072 /* mathlite.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 50E77DE91362190C000FC072 /* mathlite.cpp */; }; - 50E77DF813621991000FC072 /* IOKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 50E77DF713621991000FC072 /* IOKit.framework */; }; - 840B387019BB91C50084B9F1 /* htmlsurface.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 840B386E19BB91C50084B9F1 /* htmlsurface.cpp */; }; - 975820DB2765BE3900093F91 /* ItemStore.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 975820DA2765BE3900093F91 /* ItemStore.cpp */; }; - A4B5A0FD24906974000E9151 /* RemotePlay.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A4B5A0FC24906974000E9151 /* RemotePlay.cpp */; }; - A4B5A101249069C9000E9151 /* remotestoragesync.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A4B5A0FF249069C9000E9151 /* remotestoragesync.cpp */; }; - A4B5A10424906A0E000E9151 /* SimpleProtobuf.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A4B5A10324906A0E000E9151 /* SimpleProtobuf.cpp */; }; - BA60B6B81A82EDD200F4AC4F /* Friends.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BA60B6B41A82EDD200F4AC4F /* Friends.cpp */; }; - BA60B6B91A82EDD200F4AC4F /* Inventory.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BA60B6B61A82EDD200F4AC4F /* Inventory.cpp */; }; - F323060928947C1800E66D30 /* OverlayExamples.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F323060828947C1800E66D30 /* OverlayExamples.cpp */; }; - F803305119087F9200344590 /* musicplayer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F803305019087F9200344590 /* musicplayer.cpp */; }; -/* End PBXBuildFile section */ - -/* Begin PBXCopyFilesBuildPhase section */ - 504EDCBB126901D200F96D63 /* CopyFiles */ = { - isa = PBXCopyFilesBuildPhase; - buildActionMask = 2147483647; - dstPath = ""; - dstSubfolderSpec = 6; - files = ( - 504EDCC21269026C00F96D63 /* steam_appid.txt in CopyFiles */, - 504EDCBC126901EC00F96D63 /* libsteam_api.dylib in CopyFiles */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXCopyFilesBuildPhase section */ - -/* Begin PBXFileReference section */ - 503C6CB21268F34200B66E3B /* steamworksexample.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = steamworksexample.app; sourceTree = BUILT_PRODUCTS_DIR; }; - 503C6CB51268F34200B66E3B /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = System/Library/Frameworks/Cocoa.framework; sourceTree = SDKROOT; }; - 503C6CD91268F49F00B66E3B /* BaseMenu.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = BaseMenu.cpp; sourceTree = ""; }; - 503C6CDA1268F49F00B66E3B /* BaseMenu.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = BaseMenu.h; sourceTree = ""; }; - 503C6CDB1268F49F00B66E3B /* connectingmenu.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = connectingmenu.cpp; sourceTree = ""; }; - 503C6CDC1268F49F00B66E3B /* connectingmenu.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = connectingmenu.h; sourceTree = ""; }; - 503C6CDD1268F49F00B66E3B /* GameEngine.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GameEngine.h; sourceTree = ""; }; - 503C6CDF1268F49F00B66E3B /* gameengineosx.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = gameengineosx.h; sourceTree = ""; }; - 503C6CE01268F49F00B66E3B /* gameengineosx.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = gameengineosx.mm; sourceTree = ""; }; - 503C6CE11268F49F00B66E3B /* glstringosx.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = glstringosx.h; sourceTree = ""; }; - 503C6CE21268F49F00B66E3B /* glstringosx.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = glstringosx.mm; sourceTree = ""; }; - 503C6CE31268F49F00B66E3B /* Leaderboards.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = Leaderboards.cpp; sourceTree = ""; }; - 503C6CE41268F49F00B66E3B /* Leaderboards.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Leaderboards.h; sourceTree = ""; }; - 503C6CE51268F49F00B66E3B /* Lobby.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = Lobby.cpp; sourceTree = ""; }; - 503C6CE61268F49F00B66E3B /* Lobby.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Lobby.h; sourceTree = ""; }; - 503C6CE71268F49F00B66E3B /* Main.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = Main.cpp; sourceTree = ""; }; - 503C6CE81268F49F00B66E3B /* MainMenu.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = MainMenu.cpp; sourceTree = ""; }; - 503C6CE91268F49F00B66E3B /* MainMenu.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MainMenu.h; sourceTree = ""; }; - 503C6CEA1268F49F00B66E3B /* Messages.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Messages.h; sourceTree = ""; }; - 503C6CED1268F49F00B66E3B /* p2pauth.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = p2pauth.cpp; sourceTree = ""; }; - 503C6CEE1268F49F00B66E3B /* p2pauth.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = p2pauth.h; sourceTree = ""; }; - 503C6CEF1268F49F00B66E3B /* PhotonBeam.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = PhotonBeam.cpp; sourceTree = ""; }; - 503C6CF01268F49F00B66E3B /* PhotonBeam.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PhotonBeam.h; sourceTree = ""; }; - 503C6CF11268F49F00B66E3B /* QuitMenu.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = QuitMenu.cpp; sourceTree = ""; }; - 503C6CF21268F49F00B66E3B /* QuitMenu.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = QuitMenu.h; sourceTree = ""; }; - 503C6CF31268F49F00B66E3B /* RemoteStorage.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = RemoteStorage.cpp; sourceTree = ""; }; - 503C6CF41268F49F00B66E3B /* RemoteStorage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RemoteStorage.h; sourceTree = ""; }; - 503C6CF51268F49F00B66E3B /* ServerBrowser.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ServerBrowser.cpp; sourceTree = ""; }; - 503C6CF61268F49F00B66E3B /* ServerBrowser.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ServerBrowser.h; sourceTree = ""; }; - 503C6CF71268F49F00B66E3B /* ServerBrowserMenu.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ServerBrowserMenu.h; sourceTree = ""; }; - 503C6CF81268F49F00B66E3B /* Ship.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = Ship.cpp; sourceTree = ""; }; - 503C6CF91268F49F00B66E3B /* Ship.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Ship.h; sourceTree = ""; }; - 503C6CFA1268F49F00B66E3B /* SpaceWar.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SpaceWar.h; sourceTree = ""; }; - 503C6CFB1268F49F00B66E3B /* SpaceWarClient.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SpaceWarClient.cpp; sourceTree = ""; }; - 503C6CFC1268F49F00B66E3B /* SpaceWarClient.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SpaceWarClient.h; sourceTree = ""; }; - 503C6CFD1268F49F00B66E3B /* SpaceWarEntity.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SpaceWarEntity.cpp; sourceTree = ""; }; - 503C6CFE1268F49F00B66E3B /* SpaceWarEntity.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SpaceWarEntity.h; sourceTree = ""; }; - 503C6CFF1268F49F00B66E3B /* SpaceWarRes.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SpaceWarRes.h; sourceTree = ""; }; - 503C6D011268F49F00B66E3B /* SpaceWarServer.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SpaceWarServer.cpp; sourceTree = ""; }; - 503C6D021268F49F00B66E3B /* SpaceWarServer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SpaceWarServer.h; sourceTree = ""; }; - 503C6D031268F49F00B66E3B /* StarField.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = StarField.cpp; sourceTree = ""; }; - 503C6D041268F49F00B66E3B /* StarField.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StarField.h; sourceTree = ""; }; - 503C6D051268F49F00B66E3B /* StatsAndAchievements.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = StatsAndAchievements.cpp; sourceTree = ""; }; - 503C6D061268F49F00B66E3B /* StatsAndAchievements.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StatsAndAchievements.h; sourceTree = ""; }; - 503C6D071268F49F00B66E3B /* stdafx.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = stdafx.cpp; sourceTree = ""; }; - 503C6D081268F49F00B66E3B /* stdafx.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = stdafx.h; sourceTree = ""; }; - 503C6D091268F49F00B66E3B /* Sun.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = Sun.cpp; sourceTree = ""; }; - 503C6D0A1268F49F00B66E3B /* Sun.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Sun.h; sourceTree = ""; }; - 503C6D0B1268F49F00B66E3B /* VectorEntity.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = VectorEntity.cpp; sourceTree = ""; }; - 503C6D0C1268F49F00B66E3B /* VectorEntity.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = VectorEntity.h; sourceTree = ""; }; - 503C6D0D1268F49F00B66E3B /* voicechat.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = voicechat.cpp; sourceTree = ""; }; - 503C6D0E1268F49F00B66E3B /* voicechat.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = voicechat.h; sourceTree = ""; }; - 503C6DAA1268FE1000B66E3B /* OpenAL.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenAL.framework; path = System/Library/Frameworks/OpenAL.framework; sourceTree = SDKROOT; }; - 503C6DAB1268FE1000B66E3B /* OpenGL.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenGL.framework; path = System/Library/Frameworks/OpenGL.framework; sourceTree = SDKROOT; }; - 503C6DB31269002800B66E3B /* libsteam_api.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libsteam_api.dylib; path = ../redistributable_bin/osx/libsteam_api.dylib; sourceTree = ""; }; - 504EDCB4126900D600F96D63 /* steamworksexample-Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = "steamworksexample-Info.plist"; path = "osx/steamworksexample-Info.plist"; sourceTree = ""; }; - 504EDCC01269025A00F96D63 /* steam_appid.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = steam_appid.txt; path = osx/steam_appid.txt; sourceTree = ""; }; - 50D642851461EF3200A5739B /* clanchatroom.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = clanchatroom.cpp; sourceTree = ""; }; - 50D642861461EF3200A5739B /* clanchatroom.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = clanchatroom.h; sourceTree = ""; }; - 50E77DD11362190C000FC072 /* cglmbuffer.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = cglmbuffer.cpp; path = ../glmgr/cglmbuffer.cpp; sourceTree = ""; }; - 50E77DD21362190C000FC072 /* cglmbuffer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = cglmbuffer.h; path = ../glmgr/cglmbuffer.h; sourceTree = ""; }; - 50E77DD31362190C000FC072 /* cglmfbo.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = cglmfbo.cpp; path = ../glmgr/cglmfbo.cpp; sourceTree = ""; }; - 50E77DD41362190C000FC072 /* cglmfbo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = cglmfbo.h; path = ../glmgr/cglmfbo.h; sourceTree = ""; }; - 50E77DD51362190C000FC072 /* cglmprogram.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = cglmprogram.cpp; path = ../glmgr/cglmprogram.cpp; sourceTree = ""; }; - 50E77DD61362190C000FC072 /* cglmprogram.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = cglmprogram.h; path = ../glmgr/cglmprogram.h; sourceTree = ""; }; - 50E77DD71362190C000FC072 /* cglmquery.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = cglmquery.cpp; path = ../glmgr/cglmquery.cpp; sourceTree = ""; }; - 50E77DD81362190C000FC072 /* cglmquery.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = cglmquery.h; path = ../glmgr/cglmquery.h; sourceTree = ""; }; - 50E77DD91362190C000FC072 /* cglmtex.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = cglmtex.cpp; path = ../glmgr/cglmtex.cpp; sourceTree = ""; }; - 50E77DDA1362190C000FC072 /* cglmtex.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = cglmtex.h; path = ../glmgr/cglmtex.h; sourceTree = ""; }; - 50E77DDB1362190C000FC072 /* dx9asmtogl2.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = dx9asmtogl2.cpp; path = ../glmgr/dx9asmtogl2.cpp; sourceTree = ""; }; - 50E77DDC1362190C000FC072 /* dx9asmtogl2.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = dx9asmtogl2.h; path = ../glmgr/dx9asmtogl2.h; sourceTree = ""; }; - 50E77DDD1362190C000FC072 /* dxabstract.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = dxabstract.cpp; path = ../glmgr/dxabstract.cpp; sourceTree = ""; }; - 50E77DDE1362190C000FC072 /* dxabstract.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = dxabstract.h; path = ../glmgr/dxabstract.h; sourceTree = ""; }; - 50E77DDF1362190C000FC072 /* glmdebug.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = glmdebug.h; path = ../glmgr/glmdebug.h; sourceTree = ""; }; - 50E77DE01362190C000FC072 /* glmdisplay.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = glmdisplay.h; path = ../glmgr/glmdisplay.h; sourceTree = ""; }; - 50E77DE11362190C000FC072 /* glmgr.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = glmgr.cpp; path = ../glmgr/glmgr.cpp; sourceTree = ""; }; - 50E77DE21362190C000FC072 /* glmgr.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = glmgr.h; path = ../glmgr/glmgr.h; sourceTree = ""; }; - 50E77DE31362190C000FC072 /* glmgrbasics.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = glmgrbasics.cpp; path = ../glmgr/glmgrbasics.cpp; sourceTree = ""; }; - 50E77DE41362190C000FC072 /* glmgrbasics.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = glmgrbasics.h; path = ../glmgr/glmgrbasics.h; sourceTree = ""; }; - 50E77DE51362190C000FC072 /* glmgrcocoa.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = glmgrcocoa.mm; path = ../glmgr/glmgrcocoa.mm; sourceTree = ""; }; - 50E77DE61362190C000FC072 /* glmgrext.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = glmgrext.cpp; path = ../glmgr/glmgrext.cpp; sourceTree = ""; }; - 50E77DE71362190C000FC072 /* glmgrext.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = glmgrext.h; path = ../glmgr/glmgrext.h; sourceTree = ""; }; - 50E77DE81362190C000FC072 /* imageformat.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = imageformat.h; path = ../glmgr/imageformat.h; sourceTree = ""; }; - 50E77DE91362190C000FC072 /* mathlite.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = mathlite.cpp; path = ../glmgr/mathlite.cpp; sourceTree = ""; }; - 50E77DEA1362190C000FC072 /* mathlite.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = mathlite.h; path = ../glmgr/mathlite.h; sourceTree = ""; }; - 50E77DF713621991000FC072 /* IOKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = IOKit.framework; path = System/Library/Frameworks/IOKit.framework; sourceTree = SDKROOT; }; - 840B386E19BB91C50084B9F1 /* htmlsurface.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = htmlsurface.cpp; sourceTree = ""; }; - 840B386F19BB91C50084B9F1 /* htmlsurface.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = htmlsurface.h; sourceTree = ""; }; - 975820DA2765BE3900093F91 /* ItemStore.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ItemStore.cpp; sourceTree = ""; }; - 975820DD2765BE5000093F91 /* ItemStore.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = ItemStore.h; sourceTree = ""; }; - A46ECF6D26BE389800985AA7 /* steamworksexample.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; name = steamworksexample.entitlements; path = osx/steamworksexample.entitlements; sourceTree = ""; }; - A4B5A0FC24906974000E9151 /* RemotePlay.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = RemotePlay.cpp; sourceTree = ""; }; - A4B5A0FE2490698A000E9151 /* RemotePlay.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RemotePlay.h; sourceTree = ""; }; - A4B5A0FF249069C9000E9151 /* remotestoragesync.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = remotestoragesync.cpp; sourceTree = ""; }; - A4B5A100249069C9000E9151 /* remotestoragesync.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = remotestoragesync.h; sourceTree = ""; }; - A4B5A10224906A0E000E9151 /* SimpleProtobuf.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SimpleProtobuf.h; sourceTree = ""; }; - A4B5A10324906A0E000E9151 /* SimpleProtobuf.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SimpleProtobuf.cpp; sourceTree = ""; }; - BA60B6B41A82EDD200F4AC4F /* Friends.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = Friends.cpp; sourceTree = ""; }; - BA60B6B51A82EDD200F4AC4F /* Friends.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Friends.h; sourceTree = ""; }; - BA60B6B61A82EDD200F4AC4F /* Inventory.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = Inventory.cpp; sourceTree = ""; }; - BA60B6B71A82EDD200F4AC4F /* Inventory.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Inventory.h; sourceTree = ""; }; - F323060828947C1800E66D30 /* OverlayExamples.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = OverlayExamples.cpp; sourceTree = ""; }; - F323060A28947C2C00E66D30 /* OverlayExamples.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = OverlayExamples.h; sourceTree = ""; }; - F803304F19087DA600344590 /* musicplayer.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = musicplayer.h; sourceTree = ""; }; - F803305019087F9200344590 /* musicplayer.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = musicplayer.cpp; sourceTree = ""; }; -/* End PBXFileReference section */ - -/* Begin PBXFrameworksBuildPhase section */ - 503C6CAF1268F34200B66E3B /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - 50E77DF813621991000FC072 /* IOKit.framework in Frameworks */, - 503C6DB41269002800B66E3B /* libsteam_api.dylib in Frameworks */, - 503C6DAC1268FE1000B66E3B /* OpenAL.framework in Frameworks */, - 503C6DAD1268FE1000B66E3B /* OpenGL.framework in Frameworks */, - 503C6CB61268F34200B66E3B /* Cocoa.framework in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXFrameworksBuildPhase section */ - -/* Begin PBXGroup section */ - 503C6CA31268F34200B66E3B = { - isa = PBXGroup; - children = ( - 503C6D291268F4EE00B66E3B /* Headers */, - 503C6CAB1268F34200B66E3B /* Source */, - 503C6CAC1268F34200B66E3B /* Resources */, - 503C6CAD1268F34200B66E3B /* Frameworks */, - 503C6CB31268F34200B66E3B /* Products */, - ); - sourceTree = ""; - }; - 503C6CAB1268F34200B66E3B /* Source */ = { - isa = PBXGroup; - children = ( - 50E77DCF136218F5000FC072 /* glmgr */, - 503C6CD91268F49F00B66E3B /* BaseMenu.cpp */, - 50D642851461EF3200A5739B /* clanchatroom.cpp */, - 503C6CDB1268F49F00B66E3B /* connectingmenu.cpp */, - BA60B6B41A82EDD200F4AC4F /* Friends.cpp */, - 503C6CE01268F49F00B66E3B /* gameengineosx.mm */, - 503C6CE21268F49F00B66E3B /* glstringosx.mm */, - 840B386E19BB91C50084B9F1 /* htmlsurface.cpp */, - BA60B6B61A82EDD200F4AC4F /* Inventory.cpp */, - 975820DA2765BE3900093F91 /* ItemStore.cpp */, - 503C6CE31268F49F00B66E3B /* Leaderboards.cpp */, - 503C6CE51268F49F00B66E3B /* Lobby.cpp */, - 503C6CE71268F49F00B66E3B /* Main.cpp */, - 503C6CE81268F49F00B66E3B /* MainMenu.cpp */, - F803305019087F9200344590 /* musicplayer.cpp */, - F323060828947C1800E66D30 /* OverlayExamples.cpp */, - 503C6CED1268F49F00B66E3B /* p2pauth.cpp */, - 503C6CEF1268F49F00B66E3B /* PhotonBeam.cpp */, - 503C6CF11268F49F00B66E3B /* QuitMenu.cpp */, - A4B5A0FC24906974000E9151 /* RemotePlay.cpp */, - 503C6CF31268F49F00B66E3B /* RemoteStorage.cpp */, - A4B5A0FF249069C9000E9151 /* remotestoragesync.cpp */, - 503C6CF51268F49F00B66E3B /* ServerBrowser.cpp */, - 503C6CF81268F49F00B66E3B /* Ship.cpp */, - A4B5A10324906A0E000E9151 /* SimpleProtobuf.cpp */, - 503C6CFB1268F49F00B66E3B /* SpaceWarClient.cpp */, - 503C6CFD1268F49F00B66E3B /* SpaceWarEntity.cpp */, - 503C6D011268F49F00B66E3B /* SpaceWarServer.cpp */, - 503C6D031268F49F00B66E3B /* StarField.cpp */, - 503C6D051268F49F00B66E3B /* StatsAndAchievements.cpp */, - 503C6D071268F49F00B66E3B /* stdafx.cpp */, - 503C6D091268F49F00B66E3B /* Sun.cpp */, - 503C6D0B1268F49F00B66E3B /* VectorEntity.cpp */, - 503C6D0D1268F49F00B66E3B /* voicechat.cpp */, - ); - name = Source; - sourceTree = ""; - }; - 503C6CAC1268F34200B66E3B /* Resources */ = { - isa = PBXGroup; - children = ( - A46ECF6D26BE389800985AA7 /* steamworksexample.entitlements */, - 504EDCC01269025A00F96D63 /* steam_appid.txt */, - 504EDCB4126900D600F96D63 /* steamworksexample-Info.plist */, - ); - name = Resources; - sourceTree = ""; - }; - 503C6CAD1268F34200B66E3B /* Frameworks */ = { - isa = PBXGroup; - children = ( - 50E77DF713621991000FC072 /* IOKit.framework */, - 503C6DAA1268FE1000B66E3B /* OpenAL.framework */, - 503C6DAB1268FE1000B66E3B /* OpenGL.framework */, - 503C6DB31269002800B66E3B /* libsteam_api.dylib */, - 503C6CB51268F34200B66E3B /* Cocoa.framework */, - ); - name = Frameworks; - sourceTree = ""; - }; - 503C6CB31268F34200B66E3B /* Products */ = { - isa = PBXGroup; - children = ( - 503C6CB21268F34200B66E3B /* steamworksexample.app */, - ); - name = Products; - sourceTree = ""; - }; - 503C6D291268F4EE00B66E3B /* Headers */ = { - isa = PBXGroup; - children = ( - 503C6CDA1268F49F00B66E3B /* BaseMenu.h */, - 50D642861461EF3200A5739B /* clanchatroom.h */, - 503C6CDC1268F49F00B66E3B /* connectingmenu.h */, - BA60B6B51A82EDD200F4AC4F /* Friends.h */, - 503C6CDD1268F49F00B66E3B /* GameEngine.h */, - 503C6CDF1268F49F00B66E3B /* gameengineosx.h */, - 503C6CE11268F49F00B66E3B /* glstringosx.h */, - 840B386F19BB91C50084B9F1 /* htmlsurface.h */, - BA60B6B71A82EDD200F4AC4F /* Inventory.h */, - 975820DD2765BE5000093F91 /* ItemStore.h */, - 503C6CE41268F49F00B66E3B /* Leaderboards.h */, - 503C6CE61268F49F00B66E3B /* Lobby.h */, - 503C6CE91268F49F00B66E3B /* MainMenu.h */, - 503C6CEA1268F49F00B66E3B /* Messages.h */, - F803304F19087DA600344590 /* musicplayer.h */, - F323060A28947C2C00E66D30 /* OverlayExamples.h */, - 503C6CEE1268F49F00B66E3B /* p2pauth.h */, - 503C6CF01268F49F00B66E3B /* PhotonBeam.h */, - 503C6CF21268F49F00B66E3B /* QuitMenu.h */, - A4B5A0FE2490698A000E9151 /* RemotePlay.h */, - 503C6CF41268F49F00B66E3B /* RemoteStorage.h */, - A4B5A100249069C9000E9151 /* remotestoragesync.h */, - 503C6CF61268F49F00B66E3B /* ServerBrowser.h */, - 503C6CF71268F49F00B66E3B /* ServerBrowserMenu.h */, - 503C6CF91268F49F00B66E3B /* Ship.h */, - A4B5A10224906A0E000E9151 /* SimpleProtobuf.h */, - 503C6CFA1268F49F00B66E3B /* SpaceWar.h */, - 503C6CFC1268F49F00B66E3B /* SpaceWarClient.h */, - 503C6CFE1268F49F00B66E3B /* SpaceWarEntity.h */, - 503C6CFF1268F49F00B66E3B /* SpaceWarRes.h */, - 503C6D021268F49F00B66E3B /* SpaceWarServer.h */, - 503C6D041268F49F00B66E3B /* StarField.h */, - 503C6D061268F49F00B66E3B /* StatsAndAchievements.h */, - 503C6D081268F49F00B66E3B /* stdafx.h */, - 503C6D0A1268F49F00B66E3B /* Sun.h */, - 503C6D0C1268F49F00B66E3B /* VectorEntity.h */, - 503C6D0E1268F49F00B66E3B /* voicechat.h */, - ); - name = Headers; - sourceTree = ""; - }; - 50E77DCF136218F5000FC072 /* glmgr */ = { - isa = PBXGroup; - children = ( - 50E77DD11362190C000FC072 /* cglmbuffer.cpp */, - 50E77DD21362190C000FC072 /* cglmbuffer.h */, - 50E77DD31362190C000FC072 /* cglmfbo.cpp */, - 50E77DD41362190C000FC072 /* cglmfbo.h */, - 50E77DD51362190C000FC072 /* cglmprogram.cpp */, - 50E77DD61362190C000FC072 /* cglmprogram.h */, - 50E77DD71362190C000FC072 /* cglmquery.cpp */, - 50E77DD81362190C000FC072 /* cglmquery.h */, - 50E77DD91362190C000FC072 /* cglmtex.cpp */, - 50E77DDA1362190C000FC072 /* cglmtex.h */, - 50E77DDB1362190C000FC072 /* dx9asmtogl2.cpp */, - 50E77DDC1362190C000FC072 /* dx9asmtogl2.h */, - 50E77DDD1362190C000FC072 /* dxabstract.cpp */, - 50E77DDE1362190C000FC072 /* dxabstract.h */, - 50E77DDF1362190C000FC072 /* glmdebug.h */, - 50E77DE01362190C000FC072 /* glmdisplay.h */, - 50E77DE11362190C000FC072 /* glmgr.cpp */, - 50E77DE21362190C000FC072 /* glmgr.h */, - 50E77DE31362190C000FC072 /* glmgrbasics.cpp */, - 50E77DE41362190C000FC072 /* glmgrbasics.h */, - 50E77DE51362190C000FC072 /* glmgrcocoa.mm */, - 50E77DE61362190C000FC072 /* glmgrext.cpp */, - 50E77DE71362190C000FC072 /* glmgrext.h */, - 50E77DE81362190C000FC072 /* imageformat.h */, - 50E77DE91362190C000FC072 /* mathlite.cpp */, - 50E77DEA1362190C000FC072 /* mathlite.h */, - ); - name = glmgr; - sourceTree = ""; - }; -/* End PBXGroup section */ - -/* Begin PBXNativeTarget section */ - 503C6CB11268F34200B66E3B /* steamworksexample */ = { - isa = PBXNativeTarget; - buildConfigurationList = 503C6CC91268F34200B66E3B /* Build configuration list for PBXNativeTarget "steamworksexample" */; - buildPhases = ( - 503C6CAE1268F34200B66E3B /* Sources */, - 503C6CAF1268F34200B66E3B /* Frameworks */, - 503C6CB01268F34200B66E3B /* Resources */, - 504EDCBB126901D200F96D63 /* CopyFiles */, - ); - buildRules = ( - ); - dependencies = ( - ); - name = steamworksexample; - productName = steamworksexample; - productReference = 503C6CB21268F34200B66E3B /* steamworksexample.app */; - productType = "com.apple.product-type.application"; - }; -/* End PBXNativeTarget section */ - -/* Begin PBXProject section */ - 503C6CA51268F34200B66E3B /* Project object */ = { - isa = PBXProject; - attributes = { - }; - buildConfigurationList = 503C6CA81268F34200B66E3B /* Build configuration list for PBXProject "steamworksexample" */; - compatibilityVersion = "Xcode 3.2"; - developmentRegion = English; - hasScannedForEncodings = 0; - knownRegions = ( - English, - en, - ); - mainGroup = 503C6CA31268F34200B66E3B; - productRefGroup = 503C6CB31268F34200B66E3B /* Products */; - projectDirPath = ""; - projectRoot = ""; - targets = ( - 503C6CB11268F34200B66E3B /* steamworksexample */, - ); - }; -/* End PBXProject section */ - -/* Begin PBXResourcesBuildPhase section */ - 503C6CB01268F34200B66E3B /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXResourcesBuildPhase section */ - -/* Begin PBXSourcesBuildPhase section */ - 503C6CAE1268F34200B66E3B /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 840B387019BB91C50084B9F1 /* htmlsurface.cpp in Sources */, - 503C6D0F1268F49F00B66E3B /* BaseMenu.cpp in Sources */, - 503C6D101268F49F00B66E3B /* connectingmenu.cpp in Sources */, - F803305119087F9200344590 /* musicplayer.cpp in Sources */, - 503C6D121268F49F00B66E3B /* gameengineosx.mm in Sources */, - 503C6D131268F49F00B66E3B /* glstringosx.mm in Sources */, - 503C6D141268F49F00B66E3B /* Leaderboards.cpp in Sources */, - 503C6D151268F49F00B66E3B /* Lobby.cpp in Sources */, - A4B5A0FD24906974000E9151 /* RemotePlay.cpp in Sources */, - 503C6D161268F49F00B66E3B /* Main.cpp in Sources */, - 503C6D171268F49F00B66E3B /* MainMenu.cpp in Sources */, - 503C6D191268F49F00B66E3B /* p2pauth.cpp in Sources */, - 503C6D1A1268F49F00B66E3B /* PhotonBeam.cpp in Sources */, - 503C6D1B1268F49F00B66E3B /* QuitMenu.cpp in Sources */, - 503C6D1C1268F49F00B66E3B /* RemoteStorage.cpp in Sources */, - 503C6D1D1268F49F00B66E3B /* ServerBrowser.cpp in Sources */, - 503C6D1E1268F49F00B66E3B /* Ship.cpp in Sources */, - 503C6D1F1268F49F00B66E3B /* SpaceWarClient.cpp in Sources */, - 503C6D201268F49F00B66E3B /* SpaceWarEntity.cpp in Sources */, - 503C6D221268F49F00B66E3B /* SpaceWarServer.cpp in Sources */, - 503C6D231268F49F00B66E3B /* StarField.cpp in Sources */, - 503C6D241268F49F00B66E3B /* StatsAndAchievements.cpp in Sources */, - 503C6D251268F49F00B66E3B /* stdafx.cpp in Sources */, - 503C6D261268F49F00B66E3B /* Sun.cpp in Sources */, - 503C6D271268F49F00B66E3B /* VectorEntity.cpp in Sources */, - 503C6D281268F49F00B66E3B /* voicechat.cpp in Sources */, - 50E77DEB1362190C000FC072 /* cglmbuffer.cpp in Sources */, - 50E77DEC1362190C000FC072 /* cglmfbo.cpp in Sources */, - F323060928947C1800E66D30 /* OverlayExamples.cpp in Sources */, - 50E77DED1362190C000FC072 /* cglmprogram.cpp in Sources */, - BA60B6B91A82EDD200F4AC4F /* Inventory.cpp in Sources */, - 975820DB2765BE3900093F91 /* ItemStore.cpp in Sources */, - 50E77DEE1362190C000FC072 /* cglmquery.cpp in Sources */, - 50E77DEF1362190C000FC072 /* cglmtex.cpp in Sources */, - A4B5A10424906A0E000E9151 /* SimpleProtobuf.cpp in Sources */, - 50E77DF01362190C000FC072 /* dx9asmtogl2.cpp in Sources */, - 50E77DF11362190C000FC072 /* dxabstract.cpp in Sources */, - 50E77DF21362190C000FC072 /* glmgr.cpp in Sources */, - 50E77DF31362190C000FC072 /* glmgrbasics.cpp in Sources */, - 50E77DF41362190C000FC072 /* glmgrcocoa.mm in Sources */, - 50E77DF51362190C000FC072 /* glmgrext.cpp in Sources */, - A4B5A101249069C9000E9151 /* remotestoragesync.cpp in Sources */, - BA60B6B81A82EDD200F4AC4F /* Friends.cpp in Sources */, - 50E77DF61362190C000FC072 /* mathlite.cpp in Sources */, - 50D642871461EF3200A5739B /* clanchatroom.cpp in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXSourcesBuildPhase section */ - -/* Begin XCBuildConfiguration section */ - 503C6CC71268F34200B66E3B /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - CODE_SIGN_ENTITLEMENTS = osx/steamworksexample.entitlements; - ENABLE_HARDENED_RUNTIME = YES; - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_PREPROCESSOR_DEFINITIONS = ( - DEBUG, - GL_SILENCE_DEPRECATION, - ); - "GCC_PREPROCESSOR_DEFINITIONS[arch=*]" = ( - POSIX, - OSX, - GL_SILENCE_DEPRECATION, - ); - GCC_WARN_ABOUT_DEPRECATED_FUNCTIONS = NO; - GCC_WARN_ABOUT_INVALID_OFFSETOF_MACRO = NO; - GCC_WARN_ABOUT_RETURN_TYPE = YES; - GCC_WARN_UNUSED_VARIABLE = NO; - MACOSX_DEPLOYMENT_TARGET = 10.11; - OTHER_CODE_SIGN_FLAGS = "--deep"; - SDKROOT = macosx; - USER_HEADER_SEARCH_PATHS = ../public; - }; - name = Debug; - }; - 503C6CC81268F34200B66E3B /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - CODE_SIGN_ENTITLEMENTS = osx/steamworksexample.entitlements; - ENABLE_HARDENED_RUNTIME = YES; - GCC_C_LANGUAGE_STANDARD = gnu99; - "GCC_PREPROCESSOR_DEFINITIONS[arch=*]" = ( - POSIX, - OSX, - ); - GCC_WARN_ABOUT_DEPRECATED_FUNCTIONS = NO; - GCC_WARN_ABOUT_INVALID_OFFSETOF_MACRO = NO; - GCC_WARN_ABOUT_RETURN_TYPE = YES; - GCC_WARN_UNUSED_VARIABLE = NO; - MACOSX_DEPLOYMENT_TARGET = 10.11; - OTHER_CODE_SIGN_FLAGS = "--deep"; - SDKROOT = macosx; - USER_HEADER_SEARCH_PATHS = ../public; - }; - name = Release; - }; - 503C6CCA1268F34200B66E3B /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_CXX_LANGUAGE_STANDARD = "c++17"; - CLANG_LINK_OBJC_RUNTIME = NO; - COPY_PHASE_STRIP = NO; - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_DYNAMIC_NO_PIC = NO; - GCC_ENABLE_OBJC_EXCEPTIONS = YES; - GCC_PRECOMPILE_PREFIX_HEADER = YES; - INFOPLIST_FILE = "osx/steamworksexample-Info.plist"; - INSTALL_PATH = "$(HOME)/Applications"; - LIBRARY_SEARCH_PATHS = ( - ../lib/osx32/release, - "\"$(SRCROOT)/../lib/osx32/release\"", - ../lib/osx/release, - "\"$(SRCROOT)/../lib/osx/release\"", - ../redistributable_bin/osx/, - ); - PRODUCT_BUNDLE_IDENTIFIER = com.valvesoftware.steam.steamworksexample; - PRODUCT_NAME = steamworksexample; - WRAPPER_EXTENSION = app; - }; - name = Debug; - }; - 503C6CCB1268F34200B66E3B /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_CXX_LANGUAGE_STANDARD = "c++17"; - CLANG_LINK_OBJC_RUNTIME = NO; - COPY_PHASE_STRIP = YES; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_ENABLE_OBJC_EXCEPTIONS = YES; - GCC_PRECOMPILE_PREFIX_HEADER = YES; - INFOPLIST_FILE = "osx/steamworksexample-Info.plist"; - INSTALL_PATH = "$(HOME)/Applications"; - LIBRARY_SEARCH_PATHS = ( - ../lib/osx32/debug, - "\"$(SRCROOT)/../lib/osx32/release\"", - ../lib/osx/debug, - "\"$(SRCROOT)/../lib/osx/release\"", - ../redistributable_bin/osx/, - ); - PRODUCT_BUNDLE_IDENTIFIER = com.valvesoftware.steam.steamworksexample; - PRODUCT_NAME = steamworksexample; - WRAPPER_EXTENSION = app; - }; - name = Release; - }; -/* End XCBuildConfiguration section */ - -/* Begin XCConfigurationList section */ - 503C6CA81268F34200B66E3B /* Build configuration list for PBXProject "steamworksexample" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 503C6CC71268F34200B66E3B /* Debug */, - 503C6CC81268F34200B66E3B /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - 503C6CC91268F34200B66E3B /* Build configuration list for PBXNativeTarget "steamworksexample" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 503C6CCA1268F34200B66E3B /* Debug */, - 503C6CCB1268F34200B66E3B /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; -/* End XCConfigurationList section */ - }; - rootObject = 503C6CA51268F34200B66E3B /* Project object */; -} +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 46; + objects = { + +/* Begin PBXBuildFile section */ + 503C6CB61268F34200B66E3B /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 503C6CB51268F34200B66E3B /* Cocoa.framework */; }; + 503C6D0F1268F49F00B66E3B /* BaseMenu.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 503C6CD91268F49F00B66E3B /* BaseMenu.cpp */; }; + 503C6D101268F49F00B66E3B /* connectingmenu.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 503C6CDB1268F49F00B66E3B /* connectingmenu.cpp */; }; + 503C6D121268F49F00B66E3B /* gameengineosx.mm in Sources */ = {isa = PBXBuildFile; fileRef = 503C6CE01268F49F00B66E3B /* gameengineosx.mm */; }; + 503C6D131268F49F00B66E3B /* glstringosx.mm in Sources */ = {isa = PBXBuildFile; fileRef = 503C6CE21268F49F00B66E3B /* glstringosx.mm */; }; + 503C6D141268F49F00B66E3B /* Leaderboards.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 503C6CE31268F49F00B66E3B /* Leaderboards.cpp */; }; + 503C6D151268F49F00B66E3B /* Lobby.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 503C6CE51268F49F00B66E3B /* Lobby.cpp */; }; + 503C6D161268F49F00B66E3B /* Main.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 503C6CE71268F49F00B66E3B /* Main.cpp */; }; + 503C6D171268F49F00B66E3B /* MainMenu.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 503C6CE81268F49F00B66E3B /* MainMenu.cpp */; }; + 503C6D191268F49F00B66E3B /* p2pauth.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 503C6CED1268F49F00B66E3B /* p2pauth.cpp */; }; + 503C6D1A1268F49F00B66E3B /* PhotonBeam.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 503C6CEF1268F49F00B66E3B /* PhotonBeam.cpp */; }; + 503C6D1B1268F49F00B66E3B /* QuitMenu.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 503C6CF11268F49F00B66E3B /* QuitMenu.cpp */; }; + 503C6D1C1268F49F00B66E3B /* RemoteStorage.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 503C6CF31268F49F00B66E3B /* RemoteStorage.cpp */; }; + 503C6D1D1268F49F00B66E3B /* ServerBrowser.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 503C6CF51268F49F00B66E3B /* ServerBrowser.cpp */; }; + 503C6D1E1268F49F00B66E3B /* Ship.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 503C6CF81268F49F00B66E3B /* Ship.cpp */; }; + 503C6D1F1268F49F00B66E3B /* SpaceWarClient.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 503C6CFB1268F49F00B66E3B /* SpaceWarClient.cpp */; }; + 503C6D201268F49F00B66E3B /* SpaceWarEntity.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 503C6CFD1268F49F00B66E3B /* SpaceWarEntity.cpp */; }; + 503C6D221268F49F00B66E3B /* SpaceWarServer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 503C6D011268F49F00B66E3B /* SpaceWarServer.cpp */; }; + 503C6D231268F49F00B66E3B /* StarField.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 503C6D031268F49F00B66E3B /* StarField.cpp */; }; + 503C6D241268F49F00B66E3B /* StatsAndAchievements.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 503C6D051268F49F00B66E3B /* StatsAndAchievements.cpp */; }; + 503C6D251268F49F00B66E3B /* stdafx.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 503C6D071268F49F00B66E3B /* stdafx.cpp */; }; + 503C6D261268F49F00B66E3B /* Sun.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 503C6D091268F49F00B66E3B /* Sun.cpp */; }; + 503C6D271268F49F00B66E3B /* VectorEntity.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 503C6D0B1268F49F00B66E3B /* VectorEntity.cpp */; }; + 503C6D281268F49F00B66E3B /* voicechat.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 503C6D0D1268F49F00B66E3B /* voicechat.cpp */; }; + 503C6DAC1268FE1000B66E3B /* OpenAL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 503C6DAA1268FE1000B66E3B /* OpenAL.framework */; }; + 503C6DAD1268FE1000B66E3B /* OpenGL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 503C6DAB1268FE1000B66E3B /* OpenGL.framework */; }; + 503C6DB41269002800B66E3B /* libsteam_api.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 503C6DB31269002800B66E3B /* libsteam_api.dylib */; }; + 504EDCBC126901EC00F96D63 /* libsteam_api.dylib in CopyFiles */ = {isa = PBXBuildFile; fileRef = 503C6DB31269002800B66E3B /* libsteam_api.dylib */; }; + 504EDCC21269026C00F96D63 /* steam_appid.txt in CopyFiles */ = {isa = PBXBuildFile; fileRef = 504EDCC01269025A00F96D63 /* steam_appid.txt */; }; + 50D642871461EF3200A5739B /* clanchatroom.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 50D642851461EF3200A5739B /* clanchatroom.cpp */; }; + 50E77DEB1362190C000FC072 /* cglmbuffer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 50E77DD11362190C000FC072 /* cglmbuffer.cpp */; }; + 50E77DEC1362190C000FC072 /* cglmfbo.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 50E77DD31362190C000FC072 /* cglmfbo.cpp */; }; + 50E77DED1362190C000FC072 /* cglmprogram.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 50E77DD51362190C000FC072 /* cglmprogram.cpp */; }; + 50E77DEE1362190C000FC072 /* cglmquery.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 50E77DD71362190C000FC072 /* cglmquery.cpp */; }; + 50E77DEF1362190C000FC072 /* cglmtex.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 50E77DD91362190C000FC072 /* cglmtex.cpp */; }; + 50E77DF01362190C000FC072 /* dx9asmtogl2.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 50E77DDB1362190C000FC072 /* dx9asmtogl2.cpp */; }; + 50E77DF11362190C000FC072 /* dxabstract.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 50E77DDD1362190C000FC072 /* dxabstract.cpp */; }; + 50E77DF21362190C000FC072 /* glmgr.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 50E77DE11362190C000FC072 /* glmgr.cpp */; }; + 50E77DF31362190C000FC072 /* glmgrbasics.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 50E77DE31362190C000FC072 /* glmgrbasics.cpp */; }; + 50E77DF41362190C000FC072 /* glmgrcocoa.mm in Sources */ = {isa = PBXBuildFile; fileRef = 50E77DE51362190C000FC072 /* glmgrcocoa.mm */; }; + 50E77DF51362190C000FC072 /* glmgrext.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 50E77DE61362190C000FC072 /* glmgrext.cpp */; }; + 50E77DF61362190C000FC072 /* mathlite.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 50E77DE91362190C000FC072 /* mathlite.cpp */; }; + 50E77DF813621991000FC072 /* IOKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 50E77DF713621991000FC072 /* IOKit.framework */; }; + 840B387019BB91C50084B9F1 /* htmlsurface.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 840B386E19BB91C50084B9F1 /* htmlsurface.cpp */; }; + 975820DB2765BE3900093F91 /* ItemStore.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 975820DA2765BE3900093F91 /* ItemStore.cpp */; }; + A4B5A0FD24906974000E9151 /* RemotePlay.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A4B5A0FC24906974000E9151 /* RemotePlay.cpp */; }; + A4B5A101249069C9000E9151 /* remotestoragesync.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A4B5A0FF249069C9000E9151 /* remotestoragesync.cpp */; }; + A4B5A10424906A0E000E9151 /* SimpleProtobuf.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A4B5A10324906A0E000E9151 /* SimpleProtobuf.cpp */; }; + BA60B6B81A82EDD200F4AC4F /* Friends.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BA60B6B41A82EDD200F4AC4F /* Friends.cpp */; }; + BA60B6B91A82EDD200F4AC4F /* Inventory.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BA60B6B61A82EDD200F4AC4F /* Inventory.cpp */; }; + F323060928947C1800E66D30 /* OverlayExamples.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F323060828947C1800E66D30 /* OverlayExamples.cpp */; }; + F803305119087F9200344590 /* musicplayer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F803305019087F9200344590 /* musicplayer.cpp */; }; +/* End PBXBuildFile section */ + +/* Begin PBXCopyFilesBuildPhase section */ + 504EDCBB126901D200F96D63 /* CopyFiles */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = ""; + dstSubfolderSpec = 6; + files = ( + 504EDCC21269026C00F96D63 /* steam_appid.txt in CopyFiles */, + 504EDCBC126901EC00F96D63 /* libsteam_api.dylib in CopyFiles */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXCopyFilesBuildPhase section */ + +/* Begin PBXFileReference section */ + 503C6CB21268F34200B66E3B /* steamworksexample.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = steamworksexample.app; sourceTree = BUILT_PRODUCTS_DIR; }; + 503C6CB51268F34200B66E3B /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = System/Library/Frameworks/Cocoa.framework; sourceTree = SDKROOT; }; + 503C6CD91268F49F00B66E3B /* BaseMenu.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = BaseMenu.cpp; sourceTree = ""; }; + 503C6CDA1268F49F00B66E3B /* BaseMenu.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = BaseMenu.h; sourceTree = ""; }; + 503C6CDB1268F49F00B66E3B /* connectingmenu.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = connectingmenu.cpp; sourceTree = ""; }; + 503C6CDC1268F49F00B66E3B /* connectingmenu.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = connectingmenu.h; sourceTree = ""; }; + 503C6CDD1268F49F00B66E3B /* GameEngine.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GameEngine.h; sourceTree = ""; }; + 503C6CDF1268F49F00B66E3B /* gameengineosx.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = gameengineosx.h; sourceTree = ""; }; + 503C6CE01268F49F00B66E3B /* gameengineosx.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = gameengineosx.mm; sourceTree = ""; }; + 503C6CE11268F49F00B66E3B /* glstringosx.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = glstringosx.h; sourceTree = ""; }; + 503C6CE21268F49F00B66E3B /* glstringosx.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = glstringosx.mm; sourceTree = ""; }; + 503C6CE31268F49F00B66E3B /* Leaderboards.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = Leaderboards.cpp; sourceTree = ""; }; + 503C6CE41268F49F00B66E3B /* Leaderboards.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Leaderboards.h; sourceTree = ""; }; + 503C6CE51268F49F00B66E3B /* Lobby.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = Lobby.cpp; sourceTree = ""; }; + 503C6CE61268F49F00B66E3B /* Lobby.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Lobby.h; sourceTree = ""; }; + 503C6CE71268F49F00B66E3B /* Main.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = Main.cpp; sourceTree = ""; }; + 503C6CE81268F49F00B66E3B /* MainMenu.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = MainMenu.cpp; sourceTree = ""; }; + 503C6CE91268F49F00B66E3B /* MainMenu.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MainMenu.h; sourceTree = ""; }; + 503C6CEA1268F49F00B66E3B /* Messages.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Messages.h; sourceTree = ""; }; + 503C6CED1268F49F00B66E3B /* p2pauth.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = p2pauth.cpp; sourceTree = ""; }; + 503C6CEE1268F49F00B66E3B /* p2pauth.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = p2pauth.h; sourceTree = ""; }; + 503C6CEF1268F49F00B66E3B /* PhotonBeam.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = PhotonBeam.cpp; sourceTree = ""; }; + 503C6CF01268F49F00B66E3B /* PhotonBeam.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PhotonBeam.h; sourceTree = ""; }; + 503C6CF11268F49F00B66E3B /* QuitMenu.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = QuitMenu.cpp; sourceTree = ""; }; + 503C6CF21268F49F00B66E3B /* QuitMenu.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = QuitMenu.h; sourceTree = ""; }; + 503C6CF31268F49F00B66E3B /* RemoteStorage.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = RemoteStorage.cpp; sourceTree = ""; }; + 503C6CF41268F49F00B66E3B /* RemoteStorage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RemoteStorage.h; sourceTree = ""; }; + 503C6CF51268F49F00B66E3B /* ServerBrowser.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ServerBrowser.cpp; sourceTree = ""; }; + 503C6CF61268F49F00B66E3B /* ServerBrowser.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ServerBrowser.h; sourceTree = ""; }; + 503C6CF71268F49F00B66E3B /* ServerBrowserMenu.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ServerBrowserMenu.h; sourceTree = ""; }; + 503C6CF81268F49F00B66E3B /* Ship.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = Ship.cpp; sourceTree = ""; }; + 503C6CF91268F49F00B66E3B /* Ship.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Ship.h; sourceTree = ""; }; + 503C6CFA1268F49F00B66E3B /* SpaceWar.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SpaceWar.h; sourceTree = ""; }; + 503C6CFB1268F49F00B66E3B /* SpaceWarClient.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SpaceWarClient.cpp; sourceTree = ""; }; + 503C6CFC1268F49F00B66E3B /* SpaceWarClient.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SpaceWarClient.h; sourceTree = ""; }; + 503C6CFD1268F49F00B66E3B /* SpaceWarEntity.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SpaceWarEntity.cpp; sourceTree = ""; }; + 503C6CFE1268F49F00B66E3B /* SpaceWarEntity.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SpaceWarEntity.h; sourceTree = ""; }; + 503C6CFF1268F49F00B66E3B /* SpaceWarRes.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SpaceWarRes.h; sourceTree = ""; }; + 503C6D011268F49F00B66E3B /* SpaceWarServer.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SpaceWarServer.cpp; sourceTree = ""; }; + 503C6D021268F49F00B66E3B /* SpaceWarServer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SpaceWarServer.h; sourceTree = ""; }; + 503C6D031268F49F00B66E3B /* StarField.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = StarField.cpp; sourceTree = ""; }; + 503C6D041268F49F00B66E3B /* StarField.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StarField.h; sourceTree = ""; }; + 503C6D051268F49F00B66E3B /* StatsAndAchievements.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = StatsAndAchievements.cpp; sourceTree = ""; }; + 503C6D061268F49F00B66E3B /* StatsAndAchievements.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StatsAndAchievements.h; sourceTree = ""; }; + 503C6D071268F49F00B66E3B /* stdafx.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = stdafx.cpp; sourceTree = ""; }; + 503C6D081268F49F00B66E3B /* stdafx.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = stdafx.h; sourceTree = ""; }; + 503C6D091268F49F00B66E3B /* Sun.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = Sun.cpp; sourceTree = ""; }; + 503C6D0A1268F49F00B66E3B /* Sun.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Sun.h; sourceTree = ""; }; + 503C6D0B1268F49F00B66E3B /* VectorEntity.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = VectorEntity.cpp; sourceTree = ""; }; + 503C6D0C1268F49F00B66E3B /* VectorEntity.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = VectorEntity.h; sourceTree = ""; }; + 503C6D0D1268F49F00B66E3B /* voicechat.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = voicechat.cpp; sourceTree = ""; }; + 503C6D0E1268F49F00B66E3B /* voicechat.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = voicechat.h; sourceTree = ""; }; + 503C6DAA1268FE1000B66E3B /* OpenAL.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenAL.framework; path = System/Library/Frameworks/OpenAL.framework; sourceTree = SDKROOT; }; + 503C6DAB1268FE1000B66E3B /* OpenGL.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenGL.framework; path = System/Library/Frameworks/OpenGL.framework; sourceTree = SDKROOT; }; + 503C6DB31269002800B66E3B /* libsteam_api.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libsteam_api.dylib; path = ../redistributable_bin/osx/libsteam_api.dylib; sourceTree = ""; }; + 504EDCB4126900D600F96D63 /* steamworksexample-Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = "steamworksexample-Info.plist"; path = "osx/steamworksexample-Info.plist"; sourceTree = ""; }; + 504EDCC01269025A00F96D63 /* steam_appid.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = steam_appid.txt; path = osx/steam_appid.txt; sourceTree = ""; }; + 50D642851461EF3200A5739B /* clanchatroom.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = clanchatroom.cpp; sourceTree = ""; }; + 50D642861461EF3200A5739B /* clanchatroom.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = clanchatroom.h; sourceTree = ""; }; + 50E77DD11362190C000FC072 /* cglmbuffer.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = cglmbuffer.cpp; path = ../glmgr/cglmbuffer.cpp; sourceTree = ""; }; + 50E77DD21362190C000FC072 /* cglmbuffer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = cglmbuffer.h; path = ../glmgr/cglmbuffer.h; sourceTree = ""; }; + 50E77DD31362190C000FC072 /* cglmfbo.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = cglmfbo.cpp; path = ../glmgr/cglmfbo.cpp; sourceTree = ""; }; + 50E77DD41362190C000FC072 /* cglmfbo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = cglmfbo.h; path = ../glmgr/cglmfbo.h; sourceTree = ""; }; + 50E77DD51362190C000FC072 /* cglmprogram.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = cglmprogram.cpp; path = ../glmgr/cglmprogram.cpp; sourceTree = ""; }; + 50E77DD61362190C000FC072 /* cglmprogram.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = cglmprogram.h; path = ../glmgr/cglmprogram.h; sourceTree = ""; }; + 50E77DD71362190C000FC072 /* cglmquery.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = cglmquery.cpp; path = ../glmgr/cglmquery.cpp; sourceTree = ""; }; + 50E77DD81362190C000FC072 /* cglmquery.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = cglmquery.h; path = ../glmgr/cglmquery.h; sourceTree = ""; }; + 50E77DD91362190C000FC072 /* cglmtex.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = cglmtex.cpp; path = ../glmgr/cglmtex.cpp; sourceTree = ""; }; + 50E77DDA1362190C000FC072 /* cglmtex.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = cglmtex.h; path = ../glmgr/cglmtex.h; sourceTree = ""; }; + 50E77DDB1362190C000FC072 /* dx9asmtogl2.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = dx9asmtogl2.cpp; path = ../glmgr/dx9asmtogl2.cpp; sourceTree = ""; }; + 50E77DDC1362190C000FC072 /* dx9asmtogl2.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = dx9asmtogl2.h; path = ../glmgr/dx9asmtogl2.h; sourceTree = ""; }; + 50E77DDD1362190C000FC072 /* dxabstract.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = dxabstract.cpp; path = ../glmgr/dxabstract.cpp; sourceTree = ""; }; + 50E77DDE1362190C000FC072 /* dxabstract.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = dxabstract.h; path = ../glmgr/dxabstract.h; sourceTree = ""; }; + 50E77DDF1362190C000FC072 /* glmdebug.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = glmdebug.h; path = ../glmgr/glmdebug.h; sourceTree = ""; }; + 50E77DE01362190C000FC072 /* glmdisplay.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = glmdisplay.h; path = ../glmgr/glmdisplay.h; sourceTree = ""; }; + 50E77DE11362190C000FC072 /* glmgr.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = glmgr.cpp; path = ../glmgr/glmgr.cpp; sourceTree = ""; }; + 50E77DE21362190C000FC072 /* glmgr.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = glmgr.h; path = ../glmgr/glmgr.h; sourceTree = ""; }; + 50E77DE31362190C000FC072 /* glmgrbasics.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = glmgrbasics.cpp; path = ../glmgr/glmgrbasics.cpp; sourceTree = ""; }; + 50E77DE41362190C000FC072 /* glmgrbasics.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = glmgrbasics.h; path = ../glmgr/glmgrbasics.h; sourceTree = ""; }; + 50E77DE51362190C000FC072 /* glmgrcocoa.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = glmgrcocoa.mm; path = ../glmgr/glmgrcocoa.mm; sourceTree = ""; }; + 50E77DE61362190C000FC072 /* glmgrext.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = glmgrext.cpp; path = ../glmgr/glmgrext.cpp; sourceTree = ""; }; + 50E77DE71362190C000FC072 /* glmgrext.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = glmgrext.h; path = ../glmgr/glmgrext.h; sourceTree = ""; }; + 50E77DE81362190C000FC072 /* imageformat.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = imageformat.h; path = ../glmgr/imageformat.h; sourceTree = ""; }; + 50E77DE91362190C000FC072 /* mathlite.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = mathlite.cpp; path = ../glmgr/mathlite.cpp; sourceTree = ""; }; + 50E77DEA1362190C000FC072 /* mathlite.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = mathlite.h; path = ../glmgr/mathlite.h; sourceTree = ""; }; + 50E77DF713621991000FC072 /* IOKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = IOKit.framework; path = System/Library/Frameworks/IOKit.framework; sourceTree = SDKROOT; }; + 840B386E19BB91C50084B9F1 /* htmlsurface.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = htmlsurface.cpp; sourceTree = ""; }; + 840B386F19BB91C50084B9F1 /* htmlsurface.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = htmlsurface.h; sourceTree = ""; }; + 975820DA2765BE3900093F91 /* ItemStore.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ItemStore.cpp; sourceTree = ""; }; + 975820DD2765BE5000093F91 /* ItemStore.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = ItemStore.h; sourceTree = ""; }; + A46ECF6D26BE389800985AA7 /* steamworksexample.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; name = steamworksexample.entitlements; path = osx/steamworksexample.entitlements; sourceTree = ""; }; + A4B5A0FC24906974000E9151 /* RemotePlay.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = RemotePlay.cpp; sourceTree = ""; }; + A4B5A0FE2490698A000E9151 /* RemotePlay.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RemotePlay.h; sourceTree = ""; }; + A4B5A0FF249069C9000E9151 /* remotestoragesync.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = remotestoragesync.cpp; sourceTree = ""; }; + A4B5A100249069C9000E9151 /* remotestoragesync.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = remotestoragesync.h; sourceTree = ""; }; + A4B5A10224906A0E000E9151 /* SimpleProtobuf.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SimpleProtobuf.h; sourceTree = ""; }; + A4B5A10324906A0E000E9151 /* SimpleProtobuf.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SimpleProtobuf.cpp; sourceTree = ""; }; + BA60B6B41A82EDD200F4AC4F /* Friends.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = Friends.cpp; sourceTree = ""; }; + BA60B6B51A82EDD200F4AC4F /* Friends.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Friends.h; sourceTree = ""; }; + BA60B6B61A82EDD200F4AC4F /* Inventory.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = Inventory.cpp; sourceTree = ""; }; + BA60B6B71A82EDD200F4AC4F /* Inventory.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Inventory.h; sourceTree = ""; }; + F323060828947C1800E66D30 /* OverlayExamples.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = OverlayExamples.cpp; sourceTree = ""; }; + F323060A28947C2C00E66D30 /* OverlayExamples.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = OverlayExamples.h; sourceTree = ""; }; + F803304F19087DA600344590 /* musicplayer.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = musicplayer.h; sourceTree = ""; }; + F803305019087F9200344590 /* musicplayer.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = musicplayer.cpp; sourceTree = ""; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + 503C6CAF1268F34200B66E3B /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 50E77DF813621991000FC072 /* IOKit.framework in Frameworks */, + 503C6DB41269002800B66E3B /* libsteam_api.dylib in Frameworks */, + 503C6DAC1268FE1000B66E3B /* OpenAL.framework in Frameworks */, + 503C6DAD1268FE1000B66E3B /* OpenGL.framework in Frameworks */, + 503C6CB61268F34200B66E3B /* Cocoa.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 503C6CA31268F34200B66E3B = { + isa = PBXGroup; + children = ( + 503C6D291268F4EE00B66E3B /* Headers */, + 503C6CAB1268F34200B66E3B /* Source */, + 503C6CAC1268F34200B66E3B /* Resources */, + 503C6CAD1268F34200B66E3B /* Frameworks */, + 503C6CB31268F34200B66E3B /* Products */, + ); + sourceTree = ""; + }; + 503C6CAB1268F34200B66E3B /* Source */ = { + isa = PBXGroup; + children = ( + 50E77DCF136218F5000FC072 /* glmgr */, + 503C6CD91268F49F00B66E3B /* BaseMenu.cpp */, + 50D642851461EF3200A5739B /* clanchatroom.cpp */, + 503C6CDB1268F49F00B66E3B /* connectingmenu.cpp */, + BA60B6B41A82EDD200F4AC4F /* Friends.cpp */, + 503C6CE01268F49F00B66E3B /* gameengineosx.mm */, + 503C6CE21268F49F00B66E3B /* glstringosx.mm */, + 840B386E19BB91C50084B9F1 /* htmlsurface.cpp */, + BA60B6B61A82EDD200F4AC4F /* Inventory.cpp */, + 975820DA2765BE3900093F91 /* ItemStore.cpp */, + 503C6CE31268F49F00B66E3B /* Leaderboards.cpp */, + 503C6CE51268F49F00B66E3B /* Lobby.cpp */, + 503C6CE71268F49F00B66E3B /* Main.cpp */, + 503C6CE81268F49F00B66E3B /* MainMenu.cpp */, + F803305019087F9200344590 /* musicplayer.cpp */, + F323060828947C1800E66D30 /* OverlayExamples.cpp */, + 503C6CED1268F49F00B66E3B /* p2pauth.cpp */, + 503C6CEF1268F49F00B66E3B /* PhotonBeam.cpp */, + 503C6CF11268F49F00B66E3B /* QuitMenu.cpp */, + A4B5A0FC24906974000E9151 /* RemotePlay.cpp */, + 503C6CF31268F49F00B66E3B /* RemoteStorage.cpp */, + A4B5A0FF249069C9000E9151 /* remotestoragesync.cpp */, + 503C6CF51268F49F00B66E3B /* ServerBrowser.cpp */, + 503C6CF81268F49F00B66E3B /* Ship.cpp */, + A4B5A10324906A0E000E9151 /* SimpleProtobuf.cpp */, + 503C6CFB1268F49F00B66E3B /* SpaceWarClient.cpp */, + 503C6CFD1268F49F00B66E3B /* SpaceWarEntity.cpp */, + 503C6D011268F49F00B66E3B /* SpaceWarServer.cpp */, + 503C6D031268F49F00B66E3B /* StarField.cpp */, + 503C6D051268F49F00B66E3B /* StatsAndAchievements.cpp */, + 503C6D071268F49F00B66E3B /* stdafx.cpp */, + 503C6D091268F49F00B66E3B /* Sun.cpp */, + 503C6D0B1268F49F00B66E3B /* VectorEntity.cpp */, + 503C6D0D1268F49F00B66E3B /* voicechat.cpp */, + ); + name = Source; + sourceTree = ""; + }; + 503C6CAC1268F34200B66E3B /* Resources */ = { + isa = PBXGroup; + children = ( + A46ECF6D26BE389800985AA7 /* steamworksexample.entitlements */, + 504EDCC01269025A00F96D63 /* steam_appid.txt */, + 504EDCB4126900D600F96D63 /* steamworksexample-Info.plist */, + ); + name = Resources; + sourceTree = ""; + }; + 503C6CAD1268F34200B66E3B /* Frameworks */ = { + isa = PBXGroup; + children = ( + 50E77DF713621991000FC072 /* IOKit.framework */, + 503C6DAA1268FE1000B66E3B /* OpenAL.framework */, + 503C6DAB1268FE1000B66E3B /* OpenGL.framework */, + 503C6DB31269002800B66E3B /* libsteam_api.dylib */, + 503C6CB51268F34200B66E3B /* Cocoa.framework */, + ); + name = Frameworks; + sourceTree = ""; + }; + 503C6CB31268F34200B66E3B /* Products */ = { + isa = PBXGroup; + children = ( + 503C6CB21268F34200B66E3B /* steamworksexample.app */, + ); + name = Products; + sourceTree = ""; + }; + 503C6D291268F4EE00B66E3B /* Headers */ = { + isa = PBXGroup; + children = ( + 503C6CDA1268F49F00B66E3B /* BaseMenu.h */, + 50D642861461EF3200A5739B /* clanchatroom.h */, + 503C6CDC1268F49F00B66E3B /* connectingmenu.h */, + BA60B6B51A82EDD200F4AC4F /* Friends.h */, + 503C6CDD1268F49F00B66E3B /* GameEngine.h */, + 503C6CDF1268F49F00B66E3B /* gameengineosx.h */, + 503C6CE11268F49F00B66E3B /* glstringosx.h */, + 840B386F19BB91C50084B9F1 /* htmlsurface.h */, + BA60B6B71A82EDD200F4AC4F /* Inventory.h */, + 975820DD2765BE5000093F91 /* ItemStore.h */, + 503C6CE41268F49F00B66E3B /* Leaderboards.h */, + 503C6CE61268F49F00B66E3B /* Lobby.h */, + 503C6CE91268F49F00B66E3B /* MainMenu.h */, + 503C6CEA1268F49F00B66E3B /* Messages.h */, + F803304F19087DA600344590 /* musicplayer.h */, + F323060A28947C2C00E66D30 /* OverlayExamples.h */, + 503C6CEE1268F49F00B66E3B /* p2pauth.h */, + 503C6CF01268F49F00B66E3B /* PhotonBeam.h */, + 503C6CF21268F49F00B66E3B /* QuitMenu.h */, + A4B5A0FE2490698A000E9151 /* RemotePlay.h */, + 503C6CF41268F49F00B66E3B /* RemoteStorage.h */, + A4B5A100249069C9000E9151 /* remotestoragesync.h */, + 503C6CF61268F49F00B66E3B /* ServerBrowser.h */, + 503C6CF71268F49F00B66E3B /* ServerBrowserMenu.h */, + 503C6CF91268F49F00B66E3B /* Ship.h */, + A4B5A10224906A0E000E9151 /* SimpleProtobuf.h */, + 503C6CFA1268F49F00B66E3B /* SpaceWar.h */, + 503C6CFC1268F49F00B66E3B /* SpaceWarClient.h */, + 503C6CFE1268F49F00B66E3B /* SpaceWarEntity.h */, + 503C6CFF1268F49F00B66E3B /* SpaceWarRes.h */, + 503C6D021268F49F00B66E3B /* SpaceWarServer.h */, + 503C6D041268F49F00B66E3B /* StarField.h */, + 503C6D061268F49F00B66E3B /* StatsAndAchievements.h */, + 503C6D081268F49F00B66E3B /* stdafx.h */, + 503C6D0A1268F49F00B66E3B /* Sun.h */, + 503C6D0C1268F49F00B66E3B /* VectorEntity.h */, + 503C6D0E1268F49F00B66E3B /* voicechat.h */, + ); + name = Headers; + sourceTree = ""; + }; + 50E77DCF136218F5000FC072 /* glmgr */ = { + isa = PBXGroup; + children = ( + 50E77DD11362190C000FC072 /* cglmbuffer.cpp */, + 50E77DD21362190C000FC072 /* cglmbuffer.h */, + 50E77DD31362190C000FC072 /* cglmfbo.cpp */, + 50E77DD41362190C000FC072 /* cglmfbo.h */, + 50E77DD51362190C000FC072 /* cglmprogram.cpp */, + 50E77DD61362190C000FC072 /* cglmprogram.h */, + 50E77DD71362190C000FC072 /* cglmquery.cpp */, + 50E77DD81362190C000FC072 /* cglmquery.h */, + 50E77DD91362190C000FC072 /* cglmtex.cpp */, + 50E77DDA1362190C000FC072 /* cglmtex.h */, + 50E77DDB1362190C000FC072 /* dx9asmtogl2.cpp */, + 50E77DDC1362190C000FC072 /* dx9asmtogl2.h */, + 50E77DDD1362190C000FC072 /* dxabstract.cpp */, + 50E77DDE1362190C000FC072 /* dxabstract.h */, + 50E77DDF1362190C000FC072 /* glmdebug.h */, + 50E77DE01362190C000FC072 /* glmdisplay.h */, + 50E77DE11362190C000FC072 /* glmgr.cpp */, + 50E77DE21362190C000FC072 /* glmgr.h */, + 50E77DE31362190C000FC072 /* glmgrbasics.cpp */, + 50E77DE41362190C000FC072 /* glmgrbasics.h */, + 50E77DE51362190C000FC072 /* glmgrcocoa.mm */, + 50E77DE61362190C000FC072 /* glmgrext.cpp */, + 50E77DE71362190C000FC072 /* glmgrext.h */, + 50E77DE81362190C000FC072 /* imageformat.h */, + 50E77DE91362190C000FC072 /* mathlite.cpp */, + 50E77DEA1362190C000FC072 /* mathlite.h */, + ); + name = glmgr; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXNativeTarget section */ + 503C6CB11268F34200B66E3B /* steamworksexample */ = { + isa = PBXNativeTarget; + buildConfigurationList = 503C6CC91268F34200B66E3B /* Build configuration list for PBXNativeTarget "steamworksexample" */; + buildPhases = ( + 503C6CAE1268F34200B66E3B /* Sources */, + 503C6CAF1268F34200B66E3B /* Frameworks */, + 503C6CB01268F34200B66E3B /* Resources */, + 504EDCBB126901D200F96D63 /* CopyFiles */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = steamworksexample; + productName = steamworksexample; + productReference = 503C6CB21268F34200B66E3B /* steamworksexample.app */; + productType = "com.apple.product-type.application"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + 503C6CA51268F34200B66E3B /* Project object */ = { + isa = PBXProject; + attributes = { + }; + buildConfigurationList = 503C6CA81268F34200B66E3B /* Build configuration list for PBXProject "steamworksexample" */; + compatibilityVersion = "Xcode 3.2"; + developmentRegion = English; + hasScannedForEncodings = 0; + knownRegions = ( + English, + en, + ); + mainGroup = 503C6CA31268F34200B66E3B; + productRefGroup = 503C6CB31268F34200B66E3B /* Products */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + 503C6CB11268F34200B66E3B /* steamworksexample */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXResourcesBuildPhase section */ + 503C6CB01268F34200B66E3B /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXResourcesBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + 503C6CAE1268F34200B66E3B /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 840B387019BB91C50084B9F1 /* htmlsurface.cpp in Sources */, + 503C6D0F1268F49F00B66E3B /* BaseMenu.cpp in Sources */, + 503C6D101268F49F00B66E3B /* connectingmenu.cpp in Sources */, + F803305119087F9200344590 /* musicplayer.cpp in Sources */, + 503C6D121268F49F00B66E3B /* gameengineosx.mm in Sources */, + 503C6D131268F49F00B66E3B /* glstringosx.mm in Sources */, + 503C6D141268F49F00B66E3B /* Leaderboards.cpp in Sources */, + 503C6D151268F49F00B66E3B /* Lobby.cpp in Sources */, + A4B5A0FD24906974000E9151 /* RemotePlay.cpp in Sources */, + 503C6D161268F49F00B66E3B /* Main.cpp in Sources */, + 503C6D171268F49F00B66E3B /* MainMenu.cpp in Sources */, + 503C6D191268F49F00B66E3B /* p2pauth.cpp in Sources */, + 503C6D1A1268F49F00B66E3B /* PhotonBeam.cpp in Sources */, + 503C6D1B1268F49F00B66E3B /* QuitMenu.cpp in Sources */, + 503C6D1C1268F49F00B66E3B /* RemoteStorage.cpp in Sources */, + 503C6D1D1268F49F00B66E3B /* ServerBrowser.cpp in Sources */, + 503C6D1E1268F49F00B66E3B /* Ship.cpp in Sources */, + 503C6D1F1268F49F00B66E3B /* SpaceWarClient.cpp in Sources */, + 503C6D201268F49F00B66E3B /* SpaceWarEntity.cpp in Sources */, + 503C6D221268F49F00B66E3B /* SpaceWarServer.cpp in Sources */, + 503C6D231268F49F00B66E3B /* StarField.cpp in Sources */, + 503C6D241268F49F00B66E3B /* StatsAndAchievements.cpp in Sources */, + 503C6D251268F49F00B66E3B /* stdafx.cpp in Sources */, + 503C6D261268F49F00B66E3B /* Sun.cpp in Sources */, + 503C6D271268F49F00B66E3B /* VectorEntity.cpp in Sources */, + 503C6D281268F49F00B66E3B /* voicechat.cpp in Sources */, + 50E77DEB1362190C000FC072 /* cglmbuffer.cpp in Sources */, + 50E77DEC1362190C000FC072 /* cglmfbo.cpp in Sources */, + F323060928947C1800E66D30 /* OverlayExamples.cpp in Sources */, + 50E77DED1362190C000FC072 /* cglmprogram.cpp in Sources */, + BA60B6B91A82EDD200F4AC4F /* Inventory.cpp in Sources */, + 975820DB2765BE3900093F91 /* ItemStore.cpp in Sources */, + 50E77DEE1362190C000FC072 /* cglmquery.cpp in Sources */, + 50E77DEF1362190C000FC072 /* cglmtex.cpp in Sources */, + A4B5A10424906A0E000E9151 /* SimpleProtobuf.cpp in Sources */, + 50E77DF01362190C000FC072 /* dx9asmtogl2.cpp in Sources */, + 50E77DF11362190C000FC072 /* dxabstract.cpp in Sources */, + 50E77DF21362190C000FC072 /* glmgr.cpp in Sources */, + 50E77DF31362190C000FC072 /* glmgrbasics.cpp in Sources */, + 50E77DF41362190C000FC072 /* glmgrcocoa.mm in Sources */, + 50E77DF51362190C000FC072 /* glmgrext.cpp in Sources */, + A4B5A101249069C9000E9151 /* remotestoragesync.cpp in Sources */, + BA60B6B81A82EDD200F4AC4F /* Friends.cpp in Sources */, + 50E77DF61362190C000FC072 /* mathlite.cpp in Sources */, + 50D642871461EF3200A5739B /* clanchatroom.cpp in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin XCBuildConfiguration section */ + 503C6CC71268F34200B66E3B /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + CODE_SIGN_ENTITLEMENTS = osx/steamworksexample.entitlements; + ENABLE_HARDENED_RUNTIME = YES; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + DEBUG, + GL_SILENCE_DEPRECATION, + ); + "GCC_PREPROCESSOR_DEFINITIONS[arch=*]" = ( + POSIX, + OSX, + GL_SILENCE_DEPRECATION, + ); + GCC_WARN_ABOUT_DEPRECATED_FUNCTIONS = NO; + GCC_WARN_ABOUT_INVALID_OFFSETOF_MACRO = NO; + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_UNUSED_VARIABLE = NO; + MACOSX_DEPLOYMENT_TARGET = 10.11; + OTHER_CODE_SIGN_FLAGS = "--deep"; + SDKROOT = macosx; + USER_HEADER_SEARCH_PATHS = ../public; + }; + name = Debug; + }; + 503C6CC81268F34200B66E3B /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + CODE_SIGN_ENTITLEMENTS = osx/steamworksexample.entitlements; + ENABLE_HARDENED_RUNTIME = YES; + GCC_C_LANGUAGE_STANDARD = gnu99; + "GCC_PREPROCESSOR_DEFINITIONS[arch=*]" = ( + POSIX, + OSX, + ); + GCC_WARN_ABOUT_DEPRECATED_FUNCTIONS = NO; + GCC_WARN_ABOUT_INVALID_OFFSETOF_MACRO = NO; + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_UNUSED_VARIABLE = NO; + MACOSX_DEPLOYMENT_TARGET = 10.11; + OTHER_CODE_SIGN_FLAGS = "--deep"; + SDKROOT = macosx; + USER_HEADER_SEARCH_PATHS = ../public; + }; + name = Release; + }; + 503C6CCA1268F34200B66E3B /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_CXX_LANGUAGE_STANDARD = "c++17"; + CLANG_LINK_OBJC_RUNTIME = NO; + COPY_PHASE_STRIP = NO; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_DYNAMIC_NO_PIC = NO; + GCC_ENABLE_OBJC_EXCEPTIONS = YES; + GCC_PRECOMPILE_PREFIX_HEADER = YES; + INFOPLIST_FILE = "osx/steamworksexample-Info.plist"; + INSTALL_PATH = "$(HOME)/Applications"; + LIBRARY_SEARCH_PATHS = ( + ../lib/osx32/release, + "\"$(SRCROOT)/../lib/osx32/release\"", + ../lib/osx/release, + "\"$(SRCROOT)/../lib/osx/release\"", + ../redistributable_bin/osx/, + ); + PRODUCT_BUNDLE_IDENTIFIER = com.valvesoftware.steam.steamworksexample; + PRODUCT_NAME = steamworksexample; + WRAPPER_EXTENSION = app; + }; + name = Debug; + }; + 503C6CCB1268F34200B66E3B /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_CXX_LANGUAGE_STANDARD = "c++17"; + CLANG_LINK_OBJC_RUNTIME = NO; + COPY_PHASE_STRIP = YES; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_ENABLE_OBJC_EXCEPTIONS = YES; + GCC_PRECOMPILE_PREFIX_HEADER = YES; + INFOPLIST_FILE = "osx/steamworksexample-Info.plist"; + INSTALL_PATH = "$(HOME)/Applications"; + LIBRARY_SEARCH_PATHS = ( + ../lib/osx32/debug, + "\"$(SRCROOT)/../lib/osx32/release\"", + ../lib/osx/debug, + "\"$(SRCROOT)/../lib/osx/release\"", + ../redistributable_bin/osx/, + ); + PRODUCT_BUNDLE_IDENTIFIER = com.valvesoftware.steam.steamworksexample; + PRODUCT_NAME = steamworksexample; + WRAPPER_EXTENSION = app; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + 503C6CA81268F34200B66E3B /* Build configuration list for PBXProject "steamworksexample" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 503C6CC71268F34200B66E3B /* Debug */, + 503C6CC81268F34200B66E3B /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 503C6CC91268F34200B66E3B /* Build configuration list for PBXNativeTarget "steamworksexample" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 503C6CCA1268F34200B66E3B /* Debug */, + 503C6CCB1268F34200B66E3B /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = 503C6CA51268F34200B66E3B /* Project object */; +} diff --git a/steamworks_sdk/public/steam/isteamapplist.h b/steamworks_sdk/public/steam/isteamapplist.h index e83a52b..eb57435 100644 --- a/steamworks_sdk/public/steam/isteamapplist.h +++ b/steamworks_sdk/public/steam/isteamapplist.h @@ -47,7 +47,7 @@ STEAM_DEFINE_USER_INTERFACE_ACCESSOR( ISteamAppList *, SteamAppList, STEAMAPPLIS //--------------------------------------------------------------------------------- -// Purpose: Sent when a new app is installed +// Purpose: Sent when a new app is installed (not downloaded yet) //--------------------------------------------------------------------------------- STEAM_CALLBACK_BEGIN( SteamAppInstalled_t, k_iSteamAppListCallbacks + 1 ) STEAM_CALLBACK_MEMBER( 0, AppId_t, m_nAppID ) // ID of the app that installs diff --git a/steamworks_sdk/public/steam/isteamapps.h b/steamworks_sdk/public/steam/isteamapps.h index 704a7ff..908a762 100644 --- a/steamworks_sdk/public/steam/isteamapps.h +++ b/steamworks_sdk/public/steam/isteamapps.h @@ -137,30 +137,6 @@ struct DlcInstalled_t }; -//----------------------------------------------------------------------------- -// Purpose: possible results when registering an activation code -//----------------------------------------------------------------------------- -enum ERegisterActivationCodeResult -{ - k_ERegisterActivationCodeResultOK = 0, - k_ERegisterActivationCodeResultFail = 1, - k_ERegisterActivationCodeResultAlreadyRegistered = 2, - k_ERegisterActivationCodeResultTimeout = 3, - k_ERegisterActivationCodeAlreadyOwned = 4, -}; - - -//----------------------------------------------------------------------------- -// Purpose: response to RegisterActivationCode() -//----------------------------------------------------------------------------- -struct RegisterActivationCodeResponse_t -{ - enum { k_iCallback = k_iSteamAppsCallbacks + 8 }; - ERegisterActivationCodeResult m_eResult; - uint32 m_unPackageRegistered; // package that was registered. Only set on success -}; - - //--------------------------------------------------------------------------------- // Purpose: posted after the user gains executes a Steam URL with command line or query parameters // such as steam://run///-commandline/?param1=value1¶m2=value2¶m3=value3 etc diff --git a/steamworks_sdk/public/steam/isteamcontroller.h b/steamworks_sdk/public/steam/isteamcontroller.h index ce9ff1e..193a131 100644 --- a/steamworks_sdk/public/steam/isteamcontroller.h +++ b/steamworks_sdk/public/steam/isteamcontroller.h @@ -21,9 +21,9 @@ #define STEAM_CONTROLLER_MAX_COUNT 16 -#define STEAM_CONTROLLER_MAX_ANALOG_ACTIONS 16 +#define STEAM_CONTROLLER_MAX_ANALOG_ACTIONS 24 -#define STEAM_CONTROLLER_MAX_DIGITAL_ACTIONS 128 +#define STEAM_CONTROLLER_MAX_DIGITAL_ACTIONS 256 #define STEAM_CONTROLLER_MAX_ORIGINS 8 @@ -448,6 +448,16 @@ enum EControllerActionOrigin k_EControllerActionOrigin_SteamDeck_Reserved19, k_EControllerActionOrigin_SteamDeck_Reserved20, + k_EControllerActionOrigin_Switch_JoyConButton_N, // With a Horizontal JoyCon this will be Y or what would be Dpad Right when vertical + k_EControllerActionOrigin_Switch_JoyConButton_E, // X + k_EControllerActionOrigin_Switch_JoyConButton_S, // A + k_EControllerActionOrigin_Switch_JoyConButton_W, // B + + k_EControllerActionOrigin_PS5_LeftGrip, + k_EControllerActionOrigin_PS5_RightGrip, + k_EControllerActionOrigin_PS5_LeftFn, + k_EControllerActionOrigin_PS5_RightFn, + k_EControllerActionOrigin_Count, // If Steam has added support for new controllers origins will go here. k_EControllerActionOrigin_MaximumPossibleValue = 32767, // Origins are currently a maximum of 16 bits. }; @@ -529,6 +539,7 @@ typedef uint64 ControllerAnalogActionHandle_t; #define ControllerAnalogActionData_t InputAnalogActionData_t #define ControllerDigitalActionData_t InputDigitalActionData_t #define ControllerMotionData_t InputMotionData_t +#define ControllerMotionDataV2_t InputMotionDataV2_t #else struct ControllerAnalogActionData_t { diff --git a/steamworks_sdk/public/steam/isteamfriends.h b/steamworks_sdk/public/steam/isteamfriends.h index e0a0b0f..d57231a 100644 --- a/steamworks_sdk/public/steam/isteamfriends.h +++ b/steamworks_sdk/public/steam/isteamfriends.h @@ -514,7 +514,9 @@ enum EPersonaChange struct GameOverlayActivated_t { enum { k_iCallback = k_iSteamFriendsCallbacks + 31 }; - uint8 m_bActive; // true if it's just been activated, false otherwise + uint8 m_bActive; // true if it's just been activated, false otherwise + bool m_bUserInitiated; // true if the user asked for the overlay to be activated/deactivated + AppId_t m_nAppID; // the appID of the game (should always be the current game) }; diff --git a/steamworks_sdk/public/steam/isteamgameserver.h b/steamworks_sdk/public/steam/isteamgameserver.h index e7d1a1a..73d3c4e 100644 --- a/steamworks_sdk/public/steam/isteamgameserver.h +++ b/steamworks_sdk/public/steam/isteamgameserver.h @@ -152,7 +152,9 @@ class ISteamGameServer // Retrieve ticket to be sent to the entity who wishes to authenticate you ( using BeginAuthSession API ). // pcbTicket retrieves the length of the actual ticket. - virtual HAuthTicket GetAuthSessionTicket( void *pTicket, int cbMaxTicket, uint32 *pcbTicket ) = 0; + // SteamNetworkingIdentity is an optional parameter to hold the public IP address of the entity you are connecting to + // if an IP address is passed Steam will only allow the ticket to be used by an entity with that IP address + virtual HAuthTicket GetAuthSessionTicket( void *pTicket, int cbMaxTicket, uint32 *pcbTicket, const SteamNetworkingIdentity *pSnid ) = 0; // Authenticate ticket ( from GetAuthSessionTicket ) from entity steamID to be sure it is valid and isnt reused // Registers for callbacks if the entity goes offline or cancels the ticket ( see ValidateAuthTicketResponse_t callback and EAuthSessionResponse ) @@ -264,7 +266,7 @@ class ISteamGameServer ) }; -#define STEAMGAMESERVER_INTERFACE_VERSION "SteamGameServer014" +#define STEAMGAMESERVER_INTERFACE_VERSION "SteamGameServer015" // Global accessor inline ISteamGameServer *SteamGameServer(); diff --git a/steamworks_sdk/public/steam/isteaminput.h b/steamworks_sdk/public/steam/isteaminput.h index 98e7694..0d2d48a 100644 --- a/steamworks_sdk/public/steam/isteaminput.h +++ b/steamworks_sdk/public/steam/isteaminput.h @@ -17,9 +17,9 @@ #define STEAM_INPUT_MAX_COUNT 16 -#define STEAM_INPUT_MAX_ANALOG_ACTIONS 16 +#define STEAM_INPUT_MAX_ANALOG_ACTIONS 24 -#define STEAM_INPUT_MAX_DIGITAL_ACTIONS 128 +#define STEAM_INPUT_MAX_DIGITAL_ACTIONS 256 #define STEAM_INPUT_MAX_ORIGINS 8 @@ -319,10 +319,10 @@ enum EInputActionOrigin k_EInputActionOrigin_Switch_LeftGrip_Upper, // Left JoyCon SL Button k_EInputActionOrigin_Switch_RightGrip_Lower, // Right JoyCon SL Button k_EInputActionOrigin_Switch_RightGrip_Upper, // Right JoyCon SR Button - k_EInputActionOrigin_Switch_Reserved11, - k_EInputActionOrigin_Switch_Reserved12, - k_EInputActionOrigin_Switch_Reserved13, - k_EInputActionOrigin_Switch_Reserved14, + k_EInputActionOrigin_Switch_JoyConButton_N, // With a Horizontal JoyCon this will be Y or what would be Dpad Right when vertical + k_EInputActionOrigin_Switch_JoyConButton_E, // X + k_EInputActionOrigin_Switch_JoyConButton_S, // A + k_EInputActionOrigin_Switch_JoyConButton_W, // B k_EInputActionOrigin_Switch_Reserved15, k_EInputActionOrigin_Switch_Reserved16, k_EInputActionOrigin_Switch_Reserved17, @@ -386,10 +386,10 @@ enum EInputActionOrigin k_EInputActionOrigin_PS5_Gyro_Yaw, k_EInputActionOrigin_PS5_Gyro_Roll, k_EInputActionOrigin_PS5_DPad_Move, - k_EInputActionOrigin_PS5_Reserved1, - k_EInputActionOrigin_PS5_Reserved2, - k_EInputActionOrigin_PS5_Reserved3, - k_EInputActionOrigin_PS5_Reserved4, + k_EInputActionOrigin_PS5_LeftGrip, + k_EInputActionOrigin_PS5_RightGrip, + k_EInputActionOrigin_PS5_LeftFn, + k_EInputActionOrigin_PS5_RightFn, k_EInputActionOrigin_PS5_Reserved5, k_EInputActionOrigin_PS5_Reserved6, k_EInputActionOrigin_PS5_Reserved7, @@ -643,12 +643,12 @@ struct InputDigitalActionData_t struct InputMotionData_t { - // Sensor-fused absolute rotation; will drift in heading + // Sensor-fused absolute rotation; will drift in heading toward average float rotQuatX; float rotQuatY; float rotQuatZ; float rotQuatW; - + // Positional acceleration float posAccelX; float posAccelY; @@ -660,6 +660,58 @@ struct InputMotionData_t float rotVelZ; }; + +struct InputMotionDataV2_t +{ + // + // Gyro post processing: + // + + // Drift Corrected Quaternion is calculated after steam input controller calibration values have been applied. + // Rawest _useful_ version of a quaternion. + // Most camera implementations should use this by comparing last rotation against current rotation, and applying the difference to the in game camera (plus your own sensitivity tweaks) + // It is worth viewing + float driftCorrectedQuatX; + float driftCorrectedQuatY; + float driftCorrectedQuatZ; + float driftCorrectedQuatW; + + // Sensor fusion corrects using accelerometer, and "average forward over time" for "forward". + // This can "ouija" your aim, so it's not so appropriate for camera controls (sensor fusion was originally made for racing game steering ) + // Same result as from old InputMotionData_t::rotQuatX/Y/Z/W + float sensorFusionQuatX; + float sensorFusionQuatY; + float sensorFusionQuatZ; + float sensorFusionQuatW; + + // Deferred Sensor fusion quaternion with deferred correction + // Reduces perception of "ouija" effect by only applying correction when the controller is below "low noise" thresholds, + // while the controller rotates fast - never when the user is attempting precision aim. + float deferredSensorFusionQuatX; + float deferredSensorFusionQuatY; + float deferredSensorFusionQuatZ; + float deferredSensorFusionQuatW; + + // Same as accel but values are calibrated such that 1 unit = 1G. + // X = Right + // Y = Forward out through the joystick USB port. + // Z = Up through the joystick axis. + float gravityX; + float gravityY; + float gravityZ; + + // + // Same as rotVel values in GetMotionData but values are calibrated to degrees per second. + // Local Space (controller relative) + // X = Pitch = left to right axis + // Y = Roll = axis through charging port + // Z = Yaw = axis through sticks + float degreesPerSecondX; + float degreesPerSecondY; + float degreesPerSecondZ; + +}; + //----------------------------------------------------------------------------- // Purpose: when callbacks are enabled this fires each time a controller action // state changes @@ -897,7 +949,7 @@ class ISteamInput // See isteamremoteplay.h for more information on Steam Remote Play sessions virtual uint32 GetRemotePlaySessionID( InputHandle_t inputHandle ) = 0; - // Get a bitmask of the Steam Input Configuration types opted in for the current session. Returns ESteamInputConfigurationEnableType values.? + // Get a bitmask of the Steam Input Configuration types opted in for the current session. Returns ESteamInputConfigurationEnableType values. // Note: user can override the settings from the Steamworks Partner site so the returned values may not exactly match your default configuration virtual uint16 GetSessionInputConfigurationSettings() = 0; @@ -959,4 +1011,4 @@ struct SteamInputConfigurationLoaded_t #pragma pack( pop ) -#endif // ISTEAMINPUT_H \ No newline at end of file +#endif // ISTEAMINPUT_H diff --git a/steamworks_sdk/public/steam/isteamparentalsettings.h b/steamworks_sdk/public/steam/isteamparentalsettings.h index 66e18a0..ad43587 100644 --- a/steamworks_sdk/public/steam/isteamparentalsettings.h +++ b/steamworks_sdk/public/steam/isteamparentalsettings.h @@ -29,6 +29,7 @@ enum EParentalFeature k_EFeatureLibrary = 11, k_EFeatureTest = 12, k_EFeatureSiteLicense = 13, + k_EFeatureKioskMode = 14, k_EFeatureMax }; diff --git a/steamworks_sdk/public/steam/isteamugc.h b/steamworks_sdk/public/steam/isteamugc.h index 347e119..560258a 100644 --- a/steamworks_sdk/public/steam/isteamugc.h +++ b/steamworks_sdk/public/steam/isteamugc.h @@ -157,6 +157,15 @@ enum EItemPreviewType k_EItemPreviewType_ReservedMax = 255, // you can specify your own types above this value }; +enum EUGCContentDescriptorID +{ + k_EUGCContentDescriptor_NudityOrSexualContent = 1, + k_EUGCContentDescriptor_FrequentViolenceOrGore = 2, + k_EUGCContentDescriptor_AdultOnlySexualContent = 3, + k_EUGCContentDescriptor_GratuitousSexualContent = 4, + k_EUGCContentDescriptor_AnyMatureContent = 5, +}; + const uint32 kNumUGCResultsPerPage = 50; const uint32 k_cchDeveloperMetadataMax = 5000; @@ -237,6 +246,8 @@ class ISteamUGC STEAM_FLAT_NAME( GetQueryFirstUGCKeyValueTag ) virtual bool GetQueryUGCKeyValueTag( UGCQueryHandle_t handle, uint32 index, const char *pchKey, STEAM_OUT_STRING_COUNT(cchValueSize) char *pchValue, uint32 cchValueSize ) = 0; + virtual uint32 GetQueryUGCContentDescriptors( UGCQueryHandle_t handle, uint32 index, EUGCContentDescriptorID *pvecDescriptors, uint32 cMaxEntries ) = 0; + // Release the request to free up memory, after retrieving results virtual bool ReleaseQueryUGCRequest( UGCQueryHandle_t handle ) = 0; @@ -293,6 +304,8 @@ class ISteamUGC virtual bool UpdateItemPreviewFile( UGCUpdateHandle_t handle, uint32 index, const char *pszPreviewFile ) = 0; // updates an existing preview file for this item. pszPreviewFile points to local file, which must be under 1MB in size virtual bool UpdateItemPreviewVideo( UGCUpdateHandle_t handle, uint32 index, const char *pszVideoID ) = 0; // updates an existing preview video for this item virtual bool RemoveItemPreview( UGCUpdateHandle_t handle, uint32 index ) = 0; // remove a preview by index starting at 0 (previews are sorted) + virtual bool AddContentDescriptor( UGCUpdateHandle_t handle, EUGCContentDescriptorID descid ) = 0; + virtual bool RemoveContentDescriptor( UGCUpdateHandle_t handle, EUGCContentDescriptorID descid ) = 0; STEAM_CALL_RESULT( SubmitItemUpdateResult_t ) virtual SteamAPICall_t SubmitItemUpdate( UGCUpdateHandle_t handle, const char *pchChangeNote ) = 0; // commit update process started with StartItemUpdate() @@ -371,7 +384,7 @@ class ISteamUGC virtual SteamAPICall_t GetWorkshopEULAStatus() = 0; }; -#define STEAMUGC_INTERFACE_VERSION "STEAMUGC_INTERFACE_VERSION016" +#define STEAMUGC_INTERFACE_VERSION "STEAMUGC_INTERFACE_VERSION017" // Global interface accessor inline ISteamUGC *SteamUGC(); diff --git a/steamworks_sdk/public/steam/isteamuser.h b/steamworks_sdk/public/steam/isteamuser.h index 54b9fa3..fc14483 100644 --- a/steamworks_sdk/public/steam/isteamuser.h +++ b/steamworks_sdk/public/steam/isteamuser.h @@ -124,7 +124,10 @@ class ISteamUser // Retrieve ticket to be sent to the entity who wishes to authenticate you. // pcbTicket retrieves the length of the actual ticket. - virtual HAuthTicket GetAuthSessionTicket( void *pTicket, int cbMaxTicket, uint32 *pcbTicket ) = 0; + // SteamNetworkingIdentity is an optional input parameter to hold the public IP address or SteamID of the entity you are connecting to + // if an IP address is passed Steam will only allow the ticket to be used by an entity with that IP address + // if a Steam ID is passed Steam will only allow the ticket to be used by that Steam ID + virtual HAuthTicket GetAuthSessionTicket( void *pTicket, int cbMaxTicket, uint32 *pcbTicket, const SteamNetworkingIdentity *pSteamNetworkingIdentity ) = 0; // Authenticate ticket from entity steamID to be sure it is valid and isnt reused // Registers for callbacks if the entity goes offline or cancels the ticket ( see ValidateAuthTicketResponse_t callback and EAuthSessionResponse ) @@ -210,7 +213,7 @@ class ISteamUser }; -#define STEAMUSER_INTERFACE_VERSION "SteamUser021" +#define STEAMUSER_INTERFACE_VERSION "SteamUser022" // Global interface accessor inline ISteamUser *SteamUser(); @@ -225,12 +228,13 @@ STEAM_DEFINE_USER_INTERFACE_ACCESSOR( ISteamUser *, SteamUser, STEAMUSER_INTERFA #error steam_api_common.h should define VALVE_CALLBACK_PACK_xxx #endif + //----------------------------------------------------------------------------- -// Purpose: called when a connections to the Steam back-end has been established -// this means the Steam client now has a working connection to the Steam servers -// usually this will have occurred before the game has launched, and should +// Purpose: Called when an authenticated connection to the Steam back-end has been established. +// This means the Steam client now has a working connection to the Steam servers. +// Usually this will have occurred before the game has launched, and should // only be seen if the user has dropped connection due to a networking issue -// or a Steam server update +// or a Steam server update. //----------------------------------------------------------------------------- struct SteamServersConnected_t { diff --git a/steamworks_sdk/public/steam/isteamutils.h b/steamworks_sdk/public/steam/isteamutils.h index d841f40..9474321 100644 --- a/steamworks_sdk/public/steam/isteamutils.h +++ b/steamworks_sdk/public/steam/isteamutils.h @@ -6,9 +6,6 @@ #ifndef ISTEAMUTILS_H #define ISTEAMUTILS_H -#ifdef _WIN32 -#pragma once -#endif #include "steam_api_common.h" @@ -60,12 +57,6 @@ enum ETextFilteringContext }; -// function prototype for warning message hook -#if defined( POSIX ) -#define __cdecl -#endif -extern "C" typedef void (__cdecl *SteamAPIWarningMessageHook_t)(int, const char *); - //----------------------------------------------------------------------------- // Purpose: interface to user independent utility functions //----------------------------------------------------------------------------- @@ -317,6 +308,7 @@ struct GamepadTextInputDismissed_t enum { k_iCallback = k_iSteamUtilsCallbacks + 14 }; bool m_bSubmitted; // true if user entered & accepted text (Call ISteamUtils::GetEnteredGamepadTextInput() for text), false if canceled input uint32 m_unSubmittedText; + AppId_t m_unAppID; }; // k_iSteamUtilsCallbacks + 15 through 35 are taken @@ -334,6 +326,15 @@ struct FloatingGamepadTextInputDismissed_t enum { k_iCallback = k_iSteamUtilsCallbacks + 38 }; }; +//----------------------------------------------------------------------------- +// The text filtering dictionary has changed +//----------------------------------------------------------------------------- +struct FilterTextDictionaryChanged_t +{ + enum { k_iCallback = k_iSteamUtilsCallbacks + 39 }; + int m_eLanguage; // One of ELanguage, or k_LegallyRequiredFiltering +}; + #pragma pack( pop ) #endif // ISTEAMUTILS_H diff --git a/steamworks_sdk/public/steam/lib/linux32/libsdkencryptedappticket.so b/steamworks_sdk/public/steam/lib/linux32/libsdkencryptedappticket.so index e3fb93b..2ec9bd8 100644 Binary files a/steamworks_sdk/public/steam/lib/linux32/libsdkencryptedappticket.so and b/steamworks_sdk/public/steam/lib/linux32/libsdkencryptedappticket.so differ diff --git a/steamworks_sdk/public/steam/lib/linux64/libsdkencryptedappticket.so b/steamworks_sdk/public/steam/lib/linux64/libsdkencryptedappticket.so index dd4ca5a..fe77ac2 100644 Binary files a/steamworks_sdk/public/steam/lib/linux64/libsdkencryptedappticket.so and b/steamworks_sdk/public/steam/lib/linux64/libsdkencryptedappticket.so differ diff --git a/steamworks_sdk/public/steam/lib/osx/libsdkencryptedappticket.dylib b/steamworks_sdk/public/steam/lib/osx/libsdkencryptedappticket.dylib index 6361ba8..6e785d4 100644 Binary files a/steamworks_sdk/public/steam/lib/osx/libsdkencryptedappticket.dylib and b/steamworks_sdk/public/steam/lib/osx/libsdkencryptedappticket.dylib differ diff --git a/steamworks_sdk/public/steam/lib/win32/sdkencryptedappticket.dll b/steamworks_sdk/public/steam/lib/win32/sdkencryptedappticket.dll index 191ee2a..1aad7bf 100644 Binary files a/steamworks_sdk/public/steam/lib/win32/sdkencryptedappticket.dll and b/steamworks_sdk/public/steam/lib/win32/sdkencryptedappticket.dll differ diff --git a/steamworks_sdk/public/steam/lib/win64/sdkencryptedappticket64.dll b/steamworks_sdk/public/steam/lib/win64/sdkencryptedappticket64.dll index 62f1158..1fd4d50 100644 Binary files a/steamworks_sdk/public/steam/lib/win64/sdkencryptedappticket64.dll and b/steamworks_sdk/public/steam/lib/win64/sdkencryptedappticket64.dll differ diff --git a/steamworks_sdk/public/steam/matchmakingtypes.h b/steamworks_sdk/public/steam/matchmakingtypes.h index 6446a57..b15af3f 100644 --- a/steamworks_sdk/public/steam/matchmakingtypes.h +++ b/steamworks_sdk/public/steam/matchmakingtypes.h @@ -8,16 +8,6 @@ #ifndef MATCHMAKINGTYPES_H #define MATCHMAKINGTYPES_H -#ifdef _WIN32 -#pragma once -#endif - -#ifdef POSIX -#ifndef _snprintf -#define _snprintf snprintf -#endif -#endif - #include #include @@ -68,9 +58,6 @@ class servernetadr_t servernetadr_t() : m_usConnectionPort( 0 ), m_usQueryPort( 0 ), m_unIP( 0 ) {} void Init( unsigned int ip, uint16 usQueryPort, uint16 usConnectionPort ); -#ifdef NETADR_H - netadr_t GetIPAndQueryPort(); -#endif // Access the query port. uint16 GetQueryPort() const; @@ -113,13 +100,6 @@ inline void servernetadr_t::Init( unsigned int ip, uint16 usQueryPort, uint16 us m_usConnectionPort = usConnectionPort; } -#ifdef NETADR_H -inline netadr_t servernetadr_t::GetIPAndQueryPort() -{ - return netadr_t( m_unIP, m_usQueryPort ); -} -#endif - inline uint16 servernetadr_t::GetQueryPort() const { return m_usQueryPort; @@ -156,9 +136,9 @@ inline const char *servernetadr_t::ToString( uint32 unIP, uint16 usPort ) const static int nBuf = 0; unsigned char *ipByte = (unsigned char *)&unIP; #ifdef VALVE_BIG_ENDIAN - _snprintf (s[nBuf], sizeof( s[nBuf] ), "%u.%u.%u.%u:%i", (int)(ipByte[0]), (int)(ipByte[1]), (int)(ipByte[2]), (int)(ipByte[3]), usPort ); + snprintf(s[nBuf], sizeof( s[nBuf] ), "%u.%u.%u.%u:%i", (int)(ipByte[0]), (int)(ipByte[1]), (int)(ipByte[2]), (int)(ipByte[3]), usPort ); #else - _snprintf (s[nBuf], sizeof( s[nBuf] ), "%u.%u.%u.%u:%i", (int)(ipByte[3]), (int)(ipByte[2]), (int)(ipByte[1]), (int)(ipByte[0]), usPort ); + snprintf(s[nBuf], sizeof( s[nBuf] ), "%u.%u.%u.%u:%i", (int)(ipByte[3]), (int)(ipByte[2]), (int)(ipByte[1]), (int)(ipByte[0]), usPort ); #endif const char *pchRet = s[nBuf]; ++nBuf; diff --git a/steamworks_sdk/public/steam/steam_api.json b/steamworks_sdk/public/steam/steam_api.json index aa99da9..c93ba66 100644 --- a/steamworks_sdk/public/steam/steam_api.json +++ b/steamworks_sdk/public/steam/steam_api.json @@ -136,7 +136,9 @@ { "callback_id": 331, "fields": [ - { "fieldname":"m_bActive", "fieldtype":"uint8" } + { "fieldname":"m_bActive", "fieldtype":"uint8" }, + { "fieldname":"m_bUserInitiated", "fieldtype":"bool" }, + { "fieldname":"m_nAppID", "fieldtype":"AppId_t" } ], "struct": "GameOverlayActivated_t" }, @@ -347,7 +349,8 @@ "callback_id": 714, "fields": [ { "fieldname":"m_bSubmitted", "fieldtype":"bool" }, - { "fieldname":"m_unSubmittedText", "fieldtype":"uint32" } + { "fieldname":"m_unSubmittedText", "fieldtype":"uint32" }, + { "fieldname":"m_unAppID", "fieldtype":"AppId_t" } ], "struct": "GamepadTextInputDismissed_t" }, @@ -361,6 +364,13 @@ "fields": [], "struct": "FloatingGamepadTextInputDismissed_t" }, + { + "callback_id": 739, + "fields": [ + { "fieldname":"m_eLanguage", "fieldtype":"int" } + ], + "struct": "FilterTextDictionaryChanged_t" + }, { "callback_id": 502, "fields": [ @@ -968,14 +978,6 @@ ], "struct": "DlcInstalled_t" }, - { - "callback_id": 1008, - "fields": [ - { "fieldname":"m_eResult", "fieldtype":"ERegisterActivationCodeResult" }, - { "fieldname":"m_unPackageRegistered", "fieldtype":"uint32" } - ], - "struct": "RegisterActivationCodeResponse_t" - }, { "callback_id": 1014, "fields": [], @@ -2162,7 +2164,8 @@ { "name":"k_EAuthSessionResponseAuthTicketCanceled", "value":"6" }, { "name":"k_EAuthSessionResponseAuthTicketInvalidAlreadyUsed", "value":"7" }, { "name":"k_EAuthSessionResponseAuthTicketInvalid", "value":"8" }, - { "name":"k_EAuthSessionResponsePublisherIssuedBan", "value":"9" } + { "name":"k_EAuthSessionResponsePublisherIssuedBan", "value":"9" }, + { "name":"k_EAuthSessionResponseAuthTicketNetworkIdentityFailure", "value":"10" } ] }, { @@ -2236,6 +2239,7 @@ { "enumname": "ENotificationPosition", "values": [ + { "name":"k_EPositionInvalid", "value":"-1" }, { "name":"k_EPositionTopLeft", "value":"0" }, { "name":"k_EPositionTopRight", "value":"1" }, { "name":"k_EPositionBottomLeft", "value":"2" }, @@ -2743,16 +2747,6 @@ { "name":"k_ELeaderboardUploadScoreMethodForceUpdate", "value":"2" } ] }, - { - "enumname": "ERegisterActivationCodeResult", - "values": [ - { "name":"k_ERegisterActivationCodeResultOK", "value":"0" }, - { "name":"k_ERegisterActivationCodeResultFail", "value":"1" }, - { "name":"k_ERegisterActivationCodeResultAlreadyRegistered", "value":"2" }, - { "name":"k_ERegisterActivationCodeResultTimeout", "value":"3" }, - { "name":"k_ERegisterActivationCodeAlreadyOwned", "value":"4" } - ] - }, { "enumname": "EP2PSessionError", "values": [ @@ -2850,6 +2844,7 @@ { "name":"k_EHTTPStatusCode304NotModified", "value":"304" }, { "name":"k_EHTTPStatusCode305UseProxy", "value":"305" }, { "name":"k_EHTTPStatusCode307TemporaryRedirect", "value":"307" }, + { "name":"k_EHTTPStatusCode308PermanentRedirect", "value":"308" }, { "name":"k_EHTTPStatusCode400BadRequest", "value":"400" }, { "name":"k_EHTTPStatusCode401Unauthorized", "value":"401" }, { "name":"k_EHTTPStatusCode402PaymentRequired", "value":"402" }, @@ -3153,10 +3148,10 @@ { "name":"k_EInputActionOrigin_Switch_LeftGrip_Upper", "value":"245" }, { "name":"k_EInputActionOrigin_Switch_RightGrip_Lower", "value":"246" }, { "name":"k_EInputActionOrigin_Switch_RightGrip_Upper", "value":"247" }, - { "name":"k_EInputActionOrigin_Switch_Reserved11", "value":"248" }, - { "name":"k_EInputActionOrigin_Switch_Reserved12", "value":"249" }, - { "name":"k_EInputActionOrigin_Switch_Reserved13", "value":"250" }, - { "name":"k_EInputActionOrigin_Switch_Reserved14", "value":"251" }, + { "name":"k_EInputActionOrigin_Switch_JoyConButton_N", "value":"248" }, + { "name":"k_EInputActionOrigin_Switch_JoyConButton_E", "value":"249" }, + { "name":"k_EInputActionOrigin_Switch_JoyConButton_S", "value":"250" }, + { "name":"k_EInputActionOrigin_Switch_JoyConButton_W", "value":"251" }, { "name":"k_EInputActionOrigin_Switch_Reserved15", "value":"252" }, { "name":"k_EInputActionOrigin_Switch_Reserved16", "value":"253" }, { "name":"k_EInputActionOrigin_Switch_Reserved17", "value":"254" }, @@ -3218,10 +3213,10 @@ { "name":"k_EInputActionOrigin_PS5_Gyro_Yaw", "value":"310" }, { "name":"k_EInputActionOrigin_PS5_Gyro_Roll", "value":"311" }, { "name":"k_EInputActionOrigin_PS5_DPad_Move", "value":"312" }, - { "name":"k_EInputActionOrigin_PS5_Reserved1", "value":"313" }, - { "name":"k_EInputActionOrigin_PS5_Reserved2", "value":"314" }, - { "name":"k_EInputActionOrigin_PS5_Reserved3", "value":"315" }, - { "name":"k_EInputActionOrigin_PS5_Reserved4", "value":"316" }, + { "name":"k_EInputActionOrigin_PS5_LeftGrip", "value":"313" }, + { "name":"k_EInputActionOrigin_PS5_RightGrip", "value":"314" }, + { "name":"k_EInputActionOrigin_PS5_LeftFn", "value":"315" }, + { "name":"k_EInputActionOrigin_PS5_RightFn", "value":"316" }, { "name":"k_EInputActionOrigin_PS5_Reserved5", "value":"317" }, { "name":"k_EInputActionOrigin_PS5_Reserved6", "value":"318" }, { "name":"k_EInputActionOrigin_PS5_Reserved7", "value":"319" }, @@ -3818,7 +3813,15 @@ { "name":"k_EControllerActionOrigin_SteamDeck_Reserved18", "value":"375" }, { "name":"k_EControllerActionOrigin_SteamDeck_Reserved19", "value":"376" }, { "name":"k_EControllerActionOrigin_SteamDeck_Reserved20", "value":"377" }, - { "name":"k_EControllerActionOrigin_Count", "value":"378" }, + { "name":"k_EControllerActionOrigin_Switch_JoyConButton_N", "value":"378" }, + { "name":"k_EControllerActionOrigin_Switch_JoyConButton_E", "value":"379" }, + { "name":"k_EControllerActionOrigin_Switch_JoyConButton_S", "value":"380" }, + { "name":"k_EControllerActionOrigin_Switch_JoyConButton_W", "value":"381" }, + { "name":"k_EControllerActionOrigin_PS5_LeftGrip", "value":"382" }, + { "name":"k_EControllerActionOrigin_PS5_RightGrip", "value":"383" }, + { "name":"k_EControllerActionOrigin_PS5_LeftFn", "value":"384" }, + { "name":"k_EControllerActionOrigin_PS5_RightFn", "value":"385" }, + { "name":"k_EControllerActionOrigin_Count", "value":"386" }, { "name":"k_EControllerActionOrigin_MaximumPossibleValue", "value":"32767" } ] }, @@ -3951,6 +3954,16 @@ { "name":"k_EItemPreviewType_ReservedMax", "value":"255" } ] }, + { + "enumname": "EUGCContentDescriptorID", + "values": [ + { "name":"k_EUGCContentDescriptor_NudityOrSexualContent", "value":"1" }, + { "name":"k_EUGCContentDescriptor_FrequentViolenceOrGore", "value":"2" }, + { "name":"k_EUGCContentDescriptor_AdultOnlySexualContent", "value":"3" }, + { "name":"k_EUGCContentDescriptor_GratuitousSexualContent", "value":"4" }, + { "name":"k_EUGCContentDescriptor_AnyMatureContent", "value":"5" } + ] + }, { "enumname": "ESteamItemFlags", "values": [ @@ -3976,7 +3989,8 @@ { "name":"k_EFeatureLibrary", "value":"11" }, { "name":"k_EFeatureTest", "value":"12" }, { "name":"k_EFeatureSiteLicense", "value":"13" }, - { "name":"k_EFeatureMax", "value":"14" } + { "name":"k_EFeatureKioskMode", "value":"14" }, + { "name":"k_EFeatureMax", "value":"15" } ] }, { @@ -4556,7 +4570,7 @@ { "kind": "user", "name": "SteamUser", - "name_flat": "SteamAPI_SteamUser_v021" + "name_flat": "SteamAPI_SteamUser_v022" } ], "classname": "ISteamUser", @@ -4685,7 +4699,8 @@ "params": [ { "paramname":"pTicket", "paramtype":"void *" }, { "paramname":"cbMaxTicket", "paramtype":"int" }, - { "paramname":"pcbTicket", "paramtype":"uint32 *" } + { "paramname":"pcbTicket", "paramtype":"uint32 *" }, + { "paramname":"pSteamNetworkingIdentity", "paramtype":"const SteamNetworkingIdentity *" } ], "returntype": "HAuthTicket" }, @@ -4831,7 +4846,7 @@ "returntype": "bool" } ], - "version_string": "SteamUser021" + "version_string": "SteamUser022" }, { "accessors": [ @@ -9735,12 +9750,12 @@ { "kind": "user", "name": "SteamUGC", - "name_flat": "SteamAPI_SteamUGC_v016" + "name_flat": "SteamAPI_SteamUGC_v017" }, { "kind": "gameserver", "name": "SteamGameServerUGC", - "name_flat": "SteamAPI_SteamGameServerUGC_v016" + "name_flat": "SteamAPI_SteamGameServerUGC_v017" } ], "classname": "ISteamUGC", @@ -9984,6 +9999,17 @@ ], "returntype": "bool" }, + { + "methodname": "GetQueryUGCContentDescriptors", + "methodname_flat": "SteamAPI_ISteamUGC_GetQueryUGCContentDescriptors", + "params": [ + { "paramname":"handle", "paramtype":"UGCQueryHandle_t" }, + { "paramname":"index", "paramtype":"uint32" }, + { "paramname":"pvecDescriptors", "paramtype":"EUGCContentDescriptorID *" }, + { "paramname":"cMaxEntries", "paramtype":"uint32" } + ], + "returntype": "uint32" + }, { "methodname": "ReleaseQueryUGCRequest", "methodname_flat": "SteamAPI_ISteamUGC_ReleaseQueryUGCRequest", @@ -10360,6 +10386,24 @@ ], "returntype": "bool" }, + { + "methodname": "AddContentDescriptor", + "methodname_flat": "SteamAPI_ISteamUGC_AddContentDescriptor", + "params": [ + { "paramname":"handle", "paramtype":"UGCUpdateHandle_t" }, + { "paramname":"descid", "paramtype":"EUGCContentDescriptorID" } + ], + "returntype": "bool" + }, + { + "methodname": "RemoveContentDescriptor", + "methodname_flat": "SteamAPI_ISteamUGC_RemoveContentDescriptor", + "params": [ + { "paramname":"handle", "paramtype":"UGCUpdateHandle_t" }, + { "paramname":"descid", "paramtype":"EUGCContentDescriptorID" } + ], + "returntype": "bool" + }, { "callresult": "SubmitItemUpdateResult_t", "methodname": "SubmitItemUpdate", @@ -10611,7 +10655,7 @@ "returntype": "SteamAPICall_t" } ], - "version_string": "STEAMUGC_INTERFACE_VERSION016" + "version_string": "STEAMUGC_INTERFACE_VERSION017" }, { "accessors": [ @@ -12675,7 +12719,7 @@ { "kind": "gameserver", "name": "SteamGameServer", - "name_flat": "SteamAPI_SteamGameServer_v014" + "name_flat": "SteamAPI_SteamGameServer_v015" } ], "classname": "ISteamGameServer", @@ -12867,7 +12911,8 @@ "params": [ { "paramname":"pTicket", "paramtype":"void *" }, { "paramname":"cbMaxTicket", "paramtype":"int" }, - { "paramname":"pcbTicket", "paramtype":"uint32 *" } + { "paramname":"pcbTicket", "paramtype":"uint32 *" }, + { "paramname":"pSnid", "paramtype":"const SteamNetworkingIdentity *" } ], "returntype": "HAuthTicket" }, @@ -13011,7 +13056,7 @@ "returntype": "bool" } ], - "version_string": "SteamGameServer014" + "version_string": "SteamGameServer015" }, { "accessors": [ @@ -13431,6 +13476,29 @@ ], "struct": "InputMotionData_t" }, + { + "fields": [ + { "fieldname":"driftCorrectedQuatX", "fieldtype":"float" }, + { "fieldname":"driftCorrectedQuatY", "fieldtype":"float" }, + { "fieldname":"driftCorrectedQuatZ", "fieldtype":"float" }, + { "fieldname":"driftCorrectedQuatW", "fieldtype":"float" }, + { "fieldname":"sensorFusionQuatX", "fieldtype":"float" }, + { "fieldname":"sensorFusionQuatY", "fieldtype":"float" }, + { "fieldname":"sensorFusionQuatZ", "fieldtype":"float" }, + { "fieldname":"sensorFusionQuatW", "fieldtype":"float" }, + { "fieldname":"deferredSensorFusionQuatX", "fieldtype":"float" }, + { "fieldname":"deferredSensorFusionQuatY", "fieldtype":"float" }, + { "fieldname":"deferredSensorFusionQuatZ", "fieldtype":"float" }, + { "fieldname":"deferredSensorFusionQuatW", "fieldtype":"float" }, + { "fieldname":"gravityX", "fieldtype":"float" }, + { "fieldname":"gravityY", "fieldtype":"float" }, + { "fieldname":"gravityZ", "fieldtype":"float" }, + { "fieldname":"degreesPerSecondX", "fieldtype":"float" }, + { "fieldname":"degreesPerSecondY", "fieldtype":"float" }, + { "fieldname":"degreesPerSecondZ", "fieldtype":"float" } + ], + "struct": "InputMotionDataV2_t" + }, { "fields": [ { "fieldname":"controllerHandle", "fieldtype":"InputHandle_t" }, diff --git a/steamworks_sdk/public/steam/steam_api_common.h b/steamworks_sdk/public/steam/steam_api_common.h index 7620a8d..f8e80d1 100644 --- a/steamworks_sdk/public/steam/steam_api_common.h +++ b/steamworks_sdk/public/steam/steam_api_common.h @@ -9,9 +9,6 @@ #ifndef STEAM_API_COMMON_H #define STEAM_API_COMMON_H -#ifdef _WIN32 -#pragma once -#endif #include "steamtypes.h" #include "steamclientpublic.h" @@ -25,7 +22,7 @@ #else #define S_API extern "C" __declspec( dllimport ) #endif // STEAM_API_EXPORTS -#elif defined( GNUC ) +#elif defined( __GNUC__ ) #if defined( STEAM_API_EXPORTS ) #define S_API extern "C" __attribute__ ((visibility("default"))) #else @@ -51,12 +48,18 @@ typedef int32 HSteamPipe; // handle to single instance of a steam user typedef int32 HSteamUser; -// function prototype -#if defined( POSIX ) -#define __cdecl + +// #define away __cdecl on posix. +// This is really, really bad. We're sorry. But it's been this way for +// a long time now and it's scary to change it, as there may be others that +// depend on it. +#ifndef _WIN32 + #define __cdecl #endif -extern "C" typedef void (__cdecl *SteamAPIWarningMessageHook_t)(int, const char *); -extern "C" typedef uint32 ( *SteamAPI_CheckCallbackRegistered_t )( int iCallbackNum ); + +// function prototype +extern "C" typedef void ( S_CALLTYPE *SteamAPIWarningMessageHook_t )( int, const char * ); +extern "C" typedef uint32 ( S_CALLTYPE *SteamAPI_CheckCallbackRegistered_t )( int iCallbackNum ); #if defined( __SNC__ ) #pragma diag_suppress=1700 // warning 1700: class "%s" has virtual functions but non-virtual destructor #endif diff --git a/steamworks_sdk/public/steam/steam_api_flat.h b/steamworks_sdk/public/steam/steam_api_flat.h index dfabb9a..9e85179 100644 --- a/steamworks_sdk/public/steam/steam_api_flat.h +++ b/steamworks_sdk/public/steam/steam_api_flat.h @@ -58,9 +58,9 @@ S_API ISteamRemotePlay * SteamAPI_ISteamClient_GetISteamRemotePlay( ISteamClient // ISteamUser // A versioned accessor is exported by the library -S_API ISteamUser *SteamAPI_SteamUser_v021(); +S_API ISteamUser *SteamAPI_SteamUser_v022(); // Inline, unversioned accessor to get the current version. Essentially the same as SteamUser(), but using this ensures that you are using a matching library. -inline ISteamUser *SteamAPI_SteamUser() { return SteamAPI_SteamUser_v021(); } +inline ISteamUser *SteamAPI_SteamUser() { return SteamAPI_SteamUser_v022(); } S_API HSteamUser SteamAPI_ISteamUser_GetHSteamUser( ISteamUser* self ); S_API bool SteamAPI_ISteamUser_BLoggedOn( ISteamUser* self ); S_API uint64_steamid SteamAPI_ISteamUser_GetSteamID( ISteamUser* self ); @@ -74,7 +74,7 @@ S_API EVoiceResult SteamAPI_ISteamUser_GetAvailableVoice( ISteamUser* self, uint S_API EVoiceResult SteamAPI_ISteamUser_GetVoice( ISteamUser* self, bool bWantCompressed, void * pDestBuffer, uint32 cbDestBufferSize, uint32 * nBytesWritten, bool bWantUncompressed_Deprecated, void * pUncompressedDestBuffer_Deprecated, uint32 cbUncompressedDestBufferSize_Deprecated, uint32 * nUncompressBytesWritten_Deprecated, uint32 nUncompressedVoiceDesiredSampleRate_Deprecated ); S_API EVoiceResult SteamAPI_ISteamUser_DecompressVoice( ISteamUser* self, const void * pCompressed, uint32 cbCompressed, void * pDestBuffer, uint32 cbDestBufferSize, uint32 * nBytesWritten, uint32 nDesiredSampleRate ); S_API uint32 SteamAPI_ISteamUser_GetVoiceOptimalSampleRate( ISteamUser* self ); -S_API HAuthTicket SteamAPI_ISteamUser_GetAuthSessionTicket( ISteamUser* self, void * pTicket, int cbMaxTicket, uint32 * pcbTicket ); +S_API HAuthTicket SteamAPI_ISteamUser_GetAuthSessionTicket( ISteamUser* self, void * pTicket, int cbMaxTicket, uint32 * pcbTicket, const SteamNetworkingIdentity * pSteamNetworkingIdentity ); S_API EBeginAuthSessionResult SteamAPI_ISteamUser_BeginAuthSession( ISteamUser* self, const void * pAuthTicket, int cbAuthTicket, uint64_steamid steamID ); S_API void SteamAPI_ISteamUser_EndAuthSession( ISteamUser* self, uint64_steamid steamID ); S_API void SteamAPI_ISteamUser_CancelAuthTicket( ISteamUser* self, HAuthTicket hAuthTicket ); @@ -753,14 +753,14 @@ S_API bool SteamAPI_ISteamController_GetControllerBindingRevision( ISteamControl // ISteamUGC // A versioned accessor is exported by the library -S_API ISteamUGC *SteamAPI_SteamUGC_v016(); +S_API ISteamUGC *SteamAPI_SteamUGC_v017(); // Inline, unversioned accessor to get the current version. Essentially the same as SteamUGC(), but using this ensures that you are using a matching library. -inline ISteamUGC *SteamAPI_SteamUGC() { return SteamAPI_SteamUGC_v016(); } +inline ISteamUGC *SteamAPI_SteamUGC() { return SteamAPI_SteamUGC_v017(); } // A versioned accessor is exported by the library -S_API ISteamUGC *SteamAPI_SteamGameServerUGC_v016(); +S_API ISteamUGC *SteamAPI_SteamGameServerUGC_v017(); // Inline, unversioned accessor to get the current version. Essentially the same as SteamGameServerUGC(), but using this ensures that you are using a matching library. -inline ISteamUGC *SteamAPI_SteamGameServerUGC() { return SteamAPI_SteamGameServerUGC_v016(); } +inline ISteamUGC *SteamAPI_SteamGameServerUGC() { return SteamAPI_SteamGameServerUGC_v017(); } S_API UGCQueryHandle_t SteamAPI_ISteamUGC_CreateQueryUserUGCRequest( ISteamUGC* self, AccountID_t unAccountID, EUserUGCList eListType, EUGCMatchingUGCType eMatchingUGCType, EUserUGCListSortOrder eSortOrder, AppId_t nCreatorAppID, AppId_t nConsumerAppID, uint32 unPage ); S_API UGCQueryHandle_t SteamAPI_ISteamUGC_CreateQueryAllUGCRequestPage( ISteamUGC* self, EUGCQuery eQueryType, EUGCMatchingUGCType eMatchingeMatchingUGCTypeFileType, AppId_t nCreatorAppID, AppId_t nConsumerAppID, uint32 unPage ); S_API UGCQueryHandle_t SteamAPI_ISteamUGC_CreateQueryAllUGCRequestCursor( ISteamUGC* self, EUGCQuery eQueryType, EUGCMatchingUGCType eMatchingeMatchingUGCTypeFileType, AppId_t nCreatorAppID, AppId_t nConsumerAppID, const char * pchCursor ); @@ -779,6 +779,7 @@ S_API bool SteamAPI_ISteamUGC_GetQueryUGCAdditionalPreview( ISteamUGC* self, UGC S_API uint32 SteamAPI_ISteamUGC_GetQueryUGCNumKeyValueTags( ISteamUGC* self, UGCQueryHandle_t handle, uint32 index ); S_API bool SteamAPI_ISteamUGC_GetQueryUGCKeyValueTag( ISteamUGC* self, UGCQueryHandle_t handle, uint32 index, uint32 keyValueTagIndex, char * pchKey, uint32 cchKeySize, char * pchValue, uint32 cchValueSize ); S_API bool SteamAPI_ISteamUGC_GetQueryFirstUGCKeyValueTag( ISteamUGC* self, UGCQueryHandle_t handle, uint32 index, const char * pchKey, char * pchValue, uint32 cchValueSize ); +S_API uint32 SteamAPI_ISteamUGC_GetQueryUGCContentDescriptors( ISteamUGC* self, UGCQueryHandle_t handle, uint32 index, EUGCContentDescriptorID * pvecDescriptors, uint32 cMaxEntries ); S_API bool SteamAPI_ISteamUGC_ReleaseQueryUGCRequest( ISteamUGC* self, UGCQueryHandle_t handle ); S_API bool SteamAPI_ISteamUGC_AddRequiredTag( ISteamUGC* self, UGCQueryHandle_t handle, const char * pTagName ); S_API bool SteamAPI_ISteamUGC_AddRequiredTagGroup( ISteamUGC* self, UGCQueryHandle_t handle, const SteamParamStringArray_t * pTagGroups ); @@ -820,6 +821,8 @@ S_API bool SteamAPI_ISteamUGC_AddItemPreviewVideo( ISteamUGC* self, UGCUpdateHan S_API bool SteamAPI_ISteamUGC_UpdateItemPreviewFile( ISteamUGC* self, UGCUpdateHandle_t handle, uint32 index, const char * pszPreviewFile ); S_API bool SteamAPI_ISteamUGC_UpdateItemPreviewVideo( ISteamUGC* self, UGCUpdateHandle_t handle, uint32 index, const char * pszVideoID ); S_API bool SteamAPI_ISteamUGC_RemoveItemPreview( ISteamUGC* self, UGCUpdateHandle_t handle, uint32 index ); +S_API bool SteamAPI_ISteamUGC_AddContentDescriptor( ISteamUGC* self, UGCUpdateHandle_t handle, EUGCContentDescriptorID descid ); +S_API bool SteamAPI_ISteamUGC_RemoveContentDescriptor( ISteamUGC* self, UGCUpdateHandle_t handle, EUGCContentDescriptorID descid ); S_API SteamAPICall_t SteamAPI_ISteamUGC_SubmitItemUpdate( ISteamUGC* self, UGCUpdateHandle_t handle, const char * pchChangeNote ); S_API EItemUpdateStatus SteamAPI_ISteamUGC_GetItemUpdateProgress( ISteamUGC* self, UGCUpdateHandle_t handle, uint64 * punBytesProcessed, uint64 * punBytesTotal ); S_API SteamAPICall_t SteamAPI_ISteamUGC_SetUserItemVote( ISteamUGC* self, PublishedFileId_t nPublishedFileID, bool bVoteUp ); @@ -1120,9 +1123,9 @@ S_API bool SteamAPI_ISteamNetworkingUtils_SteamNetworkingIdentity_ParseString( I // ISteamGameServer // A versioned accessor is exported by the library -S_API ISteamGameServer *SteamAPI_SteamGameServer_v014(); +S_API ISteamGameServer *SteamAPI_SteamGameServer_v015(); // Inline, unversioned accessor to get the current version. Essentially the same as SteamGameServer(), but using this ensures that you are using a matching library. -inline ISteamGameServer *SteamAPI_SteamGameServer() { return SteamAPI_SteamGameServer_v014(); } +inline ISteamGameServer *SteamAPI_SteamGameServer() { return SteamAPI_SteamGameServer_v015(); } S_API void SteamAPI_ISteamGameServer_SetProduct( ISteamGameServer* self, const char * pszProduct ); S_API void SteamAPI_ISteamGameServer_SetGameDescription( ISteamGameServer* self, const char * pszGameDescription ); S_API void SteamAPI_ISteamGameServer_SetModDir( ISteamGameServer* self, const char * pszModDir ); @@ -1147,7 +1150,7 @@ S_API void SteamAPI_ISteamGameServer_SetGameTags( ISteamGameServer* self, const S_API void SteamAPI_ISteamGameServer_SetGameData( ISteamGameServer* self, const char * pchGameData ); S_API void SteamAPI_ISteamGameServer_SetRegion( ISteamGameServer* self, const char * pszRegion ); S_API void SteamAPI_ISteamGameServer_SetAdvertiseServerActive( ISteamGameServer* self, bool bActive ); -S_API HAuthTicket SteamAPI_ISteamGameServer_GetAuthSessionTicket( ISteamGameServer* self, void * pTicket, int cbMaxTicket, uint32 * pcbTicket ); +S_API HAuthTicket SteamAPI_ISteamGameServer_GetAuthSessionTicket( ISteamGameServer* self, void * pTicket, int cbMaxTicket, uint32 * pcbTicket, const SteamNetworkingIdentity * pSnid ); S_API EBeginAuthSessionResult SteamAPI_ISteamGameServer_BeginAuthSession( ISteamGameServer* self, const void * pAuthTicket, int cbAuthTicket, uint64_steamid steamID ); S_API void SteamAPI_ISteamGameServer_EndAuthSession( ISteamGameServer* self, uint64_steamid steamID ); S_API void SteamAPI_ISteamGameServer_CancelAuthTicket( ISteamGameServer* self, HAuthTicket hAuthTicket ); diff --git a/steamworks_sdk/public/steam/steam_api_internal.h b/steamworks_sdk/public/steam/steam_api_internal.h index ac005a8..86defb1 100644 --- a/steamworks_sdk/public/steam/steam_api_internal.h +++ b/steamworks_sdk/public/steam/steam_api_internal.h @@ -54,12 +54,6 @@ S_API void S_CALLTYPE SteamAPI_UnregisterCallback( class CCallbackBase *pCallbac S_API void S_CALLTYPE SteamAPI_RegisterCallResult( class CCallbackBase *pCallback, SteamAPICall_t hAPICall ); S_API void S_CALLTYPE SteamAPI_UnregisterCallResult( class CCallbackBase *pCallback, SteamAPICall_t hAPICall ); -// disable this warning; this pattern need for steam callback registration -#ifdef _MSVC_VER -#pragma warning( push ) -#pragma warning( disable: 4355 ) // 'this' : used in base member initializer list -#endif - #define _STEAM_CALLBACK_AUTO_HOOK( thisclass, func, param ) #define _STEAM_CALLBACK_HELPER( _1, _2, SELECTED, ... ) _STEAM_CALLBACK_##SELECTED #define _STEAM_CALLBACK_SELECT( X, Y ) _STEAM_CALLBACK_HELPER X Y @@ -244,6 +238,9 @@ class ISteamInput; class ISteamParties; class ISteamRemotePlay; +// Forward declare types +struct SteamNetworkingIdentity; + //----------------------------------------------------------------------------- // Purpose: Base values for callback identifiers, each callback must // have a unique ID. @@ -289,10 +286,6 @@ enum { k_iSteamRemotePlayCallbacks = 5700 }; enum { k_iSteamChatCallbacks = 5900 }; // NOTE: Internal "IClientXxx" callback IDs go in clientenums.h -#ifdef _MSVC_VER -#pragma warning( pop ) -#endif - // Macros used to annotate various Steamworks interfaces to generate the // flat API #ifdef API_GEN diff --git a/steamworks_sdk/public/steam/steamclientpublic.h b/steamworks_sdk/public/steam/steamclientpublic.h index 8a1f79b..ee6b978 100644 --- a/steamworks_sdk/public/steam/steamclientpublic.h +++ b/steamworks_sdk/public/steam/steamclientpublic.h @@ -79,7 +79,7 @@ enum EResult k_EResultAccountLogonDenied = 63, // account login denied due to 2nd factor authentication failure k_EResultCannotUseOldPassword = 64, // The requested new password is not legal k_EResultInvalidLoginAuthCode = 65, // account login denied due to auth code invalid - k_EResultAccountLogonDeniedNoMail = 66, // account login denied due to 2nd factor auth failure - and no mail has been sent + k_EResultAccountLogonDeniedNoMail = 66, // account login denied due to 2nd factor auth failure - and no mail has been sent - partner site specific k_EResultHardwareNotCapableOfIPT = 67, // k_EResultIPTInitError = 68, // k_EResultParentalControlRestricted = 69, // operation failed due to parental control restrictions for current user @@ -208,6 +208,7 @@ enum EAuthSessionResponse k_EAuthSessionResponseAuthTicketInvalidAlreadyUsed = 7, // This ticket has already been used, it is not valid. k_EAuthSessionResponseAuthTicketInvalid = 8, // This ticket is not from a user instance currently connected to steam. k_EAuthSessionResponsePublisherIssuedBan = 9, // The user is banned for this game. The ban came via the web api and not VAC + k_EAuthSessionResponseAuthTicketNetworkIdentityFailure = 10, // The network identity in the ticket does not match the server authenticating the ticket }; // results from UserHasLicenseForApp @@ -310,6 +311,7 @@ enum EChatSteamIDInstanceFlags //----------------------------------------------------------------------------- enum ENotificationPosition { + k_EPositionInvalid = -1, k_EPositionTopLeft = 0, k_EPositionTopRight = 1, k_EPositionBottomLeft = 2, @@ -908,6 +910,14 @@ class CGameID { public: + enum EGameIDType + { + k_EGameIDTypeApp = 0, + k_EGameIDTypeGameMod = 1, + k_EGameIDTypeShortcut = 2, + k_EGameIDTypeP2P = 3, + }; + CGameID() { m_gameID.m_nType = k_EGameIDTypeApp; @@ -938,12 +948,12 @@ class CGameID m_gameID.m_nAppID = nAppID; } - CGameID( uint32 nAppID, uint32 nModID ) + // Not validating anything .. use IsValid() + explicit CGameID( uint32 nAppID, uint32 nModID, CGameID::EGameIDType nType ) { - m_ulGameID = 0; m_gameID.m_nAppID = nAppID; m_gameID.m_nModID = nModID; - m_gameID.m_nType = k_EGameIDTypeGameMod; + m_gameID.m_nType = nType; } CGameID( const CGameID &that ) @@ -1002,10 +1012,14 @@ class CGameID return m_gameID.m_nModID; } - uint32 AppID() const +#if !defined(VALVE_SHORTCUT_DEBUG) + uint32 AppID( bool = false ) const { return m_gameID.m_nAppID; } +#else + uint32 AppID( bool bShortcutOK = false ) const; +#endif bool operator == ( const CGameID &rhs ) const { @@ -1031,13 +1045,15 @@ class CGameID return m_gameID.m_nAppID != k_uAppIdInvalid; case k_EGameIDTypeGameMod: - return m_gameID.m_nAppID != k_uAppIdInvalid && m_gameID.m_nModID & 0x80000000; + return m_gameID.m_nAppID != k_uAppIdInvalid && (m_gameID.m_nModID & 0x80000000); case k_EGameIDTypeShortcut: - return (m_gameID.m_nModID & 0x80000000) != 0; + return m_gameID.m_nAppID == k_uAppIdInvalid + && (m_gameID.m_nModID & 0x80000000) + && m_gameID.m_nModID >= (5000 | 0x80000000); // k_unMaxExpectedLocalAppId - shortcuts are pushed beyond that range case k_EGameIDTypeP2P: - return m_gameID.m_nAppID == k_uAppIdInvalid && m_gameID.m_nModID & 0x80000000; + return m_gameID.m_nAppID == k_uAppIdInvalid && (m_gameID.m_nModID & 0x80000000); default: return false; @@ -1054,14 +1070,6 @@ class CGameID // Internal stuff. Use the accessors above if possible // - enum EGameIDType - { - k_EGameIDTypeApp = 0, - k_EGameIDTypeGameMod = 1, - k_EGameIDTypeShortcut = 2, - k_EGameIDTypeP2P = 3, - }; - struct GameID_t { #ifdef VALVE_BIG_ENDIAN @@ -1080,6 +1088,8 @@ class CGameID uint64 m_ulGameID; GameID_t m_gameID; }; + + friend CGameID GameIDFromAppAndModPath( uint32 nAppID, const char *pchModPath ); }; #pragma pack( pop ) @@ -1135,7 +1145,7 @@ enum ESteamIPv6ConnectivityState // Define compile time assert macros to let us validate the structure sizes. #define VALVE_COMPILE_TIME_ASSERT( pred ) typedef char compile_time_assert_type[(pred) ? 1 : -1]; -#if defined(__linux__) || defined(__APPLE__) +#if defined(__linux__) || defined(__APPLE__) || defined(__FreeBSD__) // The 32-bit version of gcc has the alignment requirement for uint64 and double set to // 4 meaning that even with #pragma pack(8) these types will only be four-byte aligned. // The 64-bit version of gcc has the alignment requirement for these types set to diff --git a/steamworks_sdk/public/steam/steamhttpenums.h b/steamworks_sdk/public/steam/steamhttpenums.h index ff8551e..ecb21ed 100644 --- a/steamworks_sdk/public/steam/steamhttpenums.h +++ b/steamworks_sdk/public/steam/steamhttpenums.h @@ -62,6 +62,7 @@ enum EHTTPStatusCode k_EHTTPStatusCode305UseProxy = 305, //k_EHTTPStatusCode306Unused = 306, (used in old HTTP spec, now unused in 1.1) k_EHTTPStatusCode307TemporaryRedirect = 307, + k_EHTTPStatusCode308PermanentRedirect = 308, // Error codes k_EHTTPStatusCode400BadRequest = 400, diff --git a/steamworks_sdk/public/steam/steamnetworkingtypes.h b/steamworks_sdk/public/steam/steamnetworkingtypes.h index 42723cb..a1b9392 100644 --- a/steamworks_sdk/public/steam/steamnetworkingtypes.h +++ b/steamworks_sdk/public/steam/steamnetworkingtypes.h @@ -1699,7 +1699,7 @@ inline SteamNetworkingPOPID CalculateSteamNetworkingPOPIDFromString( const char // // There is also extra paranoia to make sure the bytes are not treated as signed. SteamNetworkingPOPID result = (uint32)(uint8)pszCode[0] << 16U; - if ( pszCode[1] ) + if ( result && pszCode[1] ) { result |= ( (uint32)(uint8)pszCode[1] << 8U ); if ( pszCode[2] ) @@ -1716,9 +1716,7 @@ inline SteamNetworkingPOPID CalculateSteamNetworkingPOPIDFromString( const char template inline void GetSteamNetworkingLocationPOPStringFromID( SteamNetworkingPOPID id, char (&szCode)[N] ) { -#if !defined( __GNUC__ ) || __GNUC__ >= 5 static_assert( N >= 5, "Fixed-size buffer not big enough to hold SDR POP ID" ); -#endif szCode[0] = char( id >> 16U ); szCode[1] = char( id >> 8U ); szCode[2] = char( id ); diff --git a/steamworks_sdk/public/steam/steamtypes.h b/steamworks_sdk/public/steam/steamtypes.h index 966aa12..49653c4 100644 --- a/steamworks_sdk/public/steam/steamtypes.h +++ b/steamworks_sdk/public/steam/steamtypes.h @@ -1,27 +1,20 @@ -//========= Copyright � 1996-2008, Valve LLC, All rights reserved. ============ -// -// Purpose: -// -//============================================================================= +//========= Copyright 1996-2022, Valve LLC, All rights reserved. ============ #ifndef STEAMTYPES_H #define STEAMTYPES_H -#ifdef _WIN32 -#pragma once -#endif #define S_CALLTYPE __cdecl +// WARNING: __cdecl is potentially #defined away in steam_api_common.h // Steam-specific types. Defined here so this header file can be included in other code bases. #ifndef WCHARTYPES_H typedef unsigned char uint8; #endif -#if defined( __GNUC__ ) && !defined(_WIN32) && !defined(POSIX) +#ifdef __GNUC__ #if __GNUC__ < 4 #error "Steamworks requires GCC 4.X (4.2 or 4.4 have been tested)" #endif - #define POSIX 1 #endif #if defined(__LP64__) || defined(__x86_64__) || defined(_WIN64) || defined(__aarch64__) || defined(__s390x__) diff --git a/steamworks_sdk/redistributable_bin/linux32/libsteam_api.so b/steamworks_sdk/redistributable_bin/linux32/libsteam_api.so index 9476561..e0f23af 100644 Binary files a/steamworks_sdk/redistributable_bin/linux32/libsteam_api.so and b/steamworks_sdk/redistributable_bin/linux32/libsteam_api.so differ diff --git a/steamworks_sdk/redistributable_bin/linux64/libsteam_api.so b/steamworks_sdk/redistributable_bin/linux64/libsteam_api.so index d755843..bbd3ff3 100644 Binary files a/steamworks_sdk/redistributable_bin/linux64/libsteam_api.so and b/steamworks_sdk/redistributable_bin/linux64/libsteam_api.so differ diff --git a/steamworks_sdk/redistributable_bin/osx/libsteam_api.dylib b/steamworks_sdk/redistributable_bin/osx/libsteam_api.dylib index 41fc923..4d1cd97 100644 Binary files a/steamworks_sdk/redistributable_bin/osx/libsteam_api.dylib and b/steamworks_sdk/redistributable_bin/osx/libsteam_api.dylib differ diff --git a/steamworks_sdk/redistributable_bin/steam_api.dll b/steamworks_sdk/redistributable_bin/steam_api.dll index 3c4d47f..5b03e97 100644 Binary files a/steamworks_sdk/redistributable_bin/steam_api.dll and b/steamworks_sdk/redistributable_bin/steam_api.dll differ diff --git a/steamworks_sdk/redistributable_bin/steam_api.lib b/steamworks_sdk/redistributable_bin/steam_api.lib index 44d01ec..12726a5 100644 Binary files a/steamworks_sdk/redistributable_bin/steam_api.lib and b/steamworks_sdk/redistributable_bin/steam_api.lib differ diff --git a/steamworks_sdk/redistributable_bin/win64/steam_api64.dll b/steamworks_sdk/redistributable_bin/win64/steam_api64.dll index 5b798af..45a49e9 100644 Binary files a/steamworks_sdk/redistributable_bin/win64/steam_api64.dll and b/steamworks_sdk/redistributable_bin/win64/steam_api64.dll differ diff --git a/steamworks_sdk/redistributable_bin/win64/steam_api64.lib b/steamworks_sdk/redistributable_bin/win64/steam_api64.lib index 7b6b2f8..663b11e 100644 Binary files a/steamworks_sdk/redistributable_bin/win64/steam_api64.lib and b/steamworks_sdk/redistributable_bin/win64/steam_api64.lib differ