Číst v angličtině

Sdílet prostřednictvím


Xbox

Poznámka

Xbox není testován jako součást procesu kontinuální integrace úložiště vcpkg, takže regrese můžou nastat jako součást aktualizací knihovny.

Triplety komunity Xboxu

Vcpkg zahrnuje komunitní triplety pro vývoj počítačů Microsoft GDK a Xbox . Používají sadu nástrojů kompilátoru MSVC (Visual Studio 2019 verze 16.11 nebo novější).

Pro každý triplet existují dvě varianty: statické a dynamické propojení.

Konzola vcpkg community triplets
Xbox One x64-xbox-xboxone
x64-xbox-xboxone-static
Xbox Series X|S x64-xbox-scarlett
x64-xbox-scarlett-static

Propojování static tripletů je nastavené tak, aby používalo modul runtime MSVC jako knihovnu DLL (tj. VCPKG_CRT_LINKAGE dynamic) jako doporučený a podporovaný scénář použití.

Sestavení pomocí sady Windows SDK

Sada Windows SDK (19041) nebo novější obsahuje systémové hlavičky potřebné k sestavení na WINAPI_FAMILY_GAMES oddílu rozhraní API používaném operačním systémem Xbox Game. Proto lze většinu knihoven vytvořit na těchto trojité sadě bez přístupu k NDA Microsoft GDK s rozšířeními xboxu.

Sestavování pomocí sady Microsoft GDK s rozšířeními xboxu

Knihovny, které využívají rozhraní API grafiky DirectX, musí být sestaveny pomocí vlastní varianty Direct3D 12.X používané herním operačním systémem Xbox a to vyžaduje přístup k NDA Microsoft GDK s rozšířeními xboxu. Všimněte si, že herní operační systém Xbox nepodporuje Direct3D 11, Direct2D/DirectWrite, OpenGL, GDI ani žádnou starší verzi Direct3D.

Knihovny, které vyžadují tyto hlavičky, musí k označení tohoto požadavku použít ms-gdkx port "zástupných procedur". Tento port hledá cesty, na které GameDKLatestodkazuje , GameGXDKLatesta GameGRDKLatest proměnné prostředí.

Poznámka

Vývojáři her pro Xbox zodpovídají za zajištění toho, aby měli odpovídající a správné licenční podmínky pro použití softwarových komponent třetích stran podle podmínek licenční smlouvy s nadpisem. Nezapomeňte vyhledat vhodné právní poradenství pro jakékoli použití opensourcových komponent ve vašem názvu.

UPW na Xboxu

Pokud vytváříte upW na Xboxu, použijte místo toho stávající x64-uwp trojku.

Poznámky k údržbě

Projekty CMake pro tyto triplety se sestavují pomocí CMAKE_SYSTEM_NAME nastavení na "Windows". Pokud chcete označit cílovou konzolu Xbox, XBOX_CONSOLE_TARGET proměnná je nastavená na "xboxone" nebo "scarlett".

Trojité sady Xbox se vytvářejí buď s /DWINAPI_FAMILY=WINAPI_FAMILY_GAMES/arch:AVX cílovou konzolou, nebo /arch:AVX2 v závislosti na cílové konzole.

Trojité sady Xbox jsou také postavené na /DUNICODE /D_UNICODE tom, jak se důrazně doporučují pro moderní vývoj. Další informace najdete v manifestu UTF-8 Všude.

U dynamických knihoven nezapomeňte vyhnout se vytváření duplicitních odkazů nebo KERNEL32.LIBONECORE.LIB. Pro platformu Xbox se místo toho používá zastřešující knihovna platformy, která je v konfliktu s kernel32atd. Viz Microsoft Learn.

Další texty

Další informace najdete v tomto blogovém příspěvku.

Viz také ukázku CMakeExample na GitHubu.