Xbox
Notes
Xbox n’est pas testée dans le cadre du processus d’intégration continue du référentiel vcpkg, de sorte que les régressions peuvent se produire dans le cadre des mises à jour de bibliothèque.
vcpkg inclut des triplets de communauté pour le pc GDK Microsoft et le développement Xbox . Ils utilisent l’ensemble d’outils du compilateur MSVC (Visual Studio 2019 version 16.11 ou ultérieure).
Il existe deux variantes pour chaque triplet : liaison statique et dynamique.
Console | triplets de la communauté vcpkg |
---|---|
Xbox One | x64-xbox-xboxone |
x64-xbox-xboxone-static | |
Xbox Series X|S | x64-xbox-scarlett |
x64-xbox-scarlett-static |
Les static
triplets de liaison sont définis pour utiliser le runtime MSVC en tant que DLL (c’est-à-dire VCPKG_CRT_LINKAGE dynamic
) comme scénario d’utilisation recommandé et pris en charge.
Le Kit de développement logiciel (SDK) Windows (19041) ou version ultérieure inclut les en-têtes système nécessaires à la génération sur la WINAPI_FAMILY_GAMES
partition d’API utilisée par le système d’exploitation Xbox Game. Par conséquent, la plupart des bibliothèques peuvent être créées sur ces triplets sans avoir accès à NDA Microsoft GDK avec Xbox Extensions.
Les bibliothèques qui utilisent des API graphiques DirectX doivent être créées à l’aide d’une variante personnalisée de Direct3D 12.X utilisée par le système d’exploitation Xbox Game, ce qui nécessite l’accès à NDA Microsoft GDK avec les extensions Xbox. Notez que le système d’exploitation Xbox Game ne prend pas en charge Direct3D 11, Direct2D/DirectWrite, OpenGL, GDI ou toute version antérieure de Direct3D.
Les bibliothèques qui nécessitent ces en-têtes doivent utiliser le ms-gdkx
port « stub » pour indiquer cette exigence. Ce port recherche les chemins d’accès pointés par GameDKLatest
, GameGXDKLatest
et GameGRDKLatest
les variables d’environnement.
Notes
Les développeurs de jeux Xbox sont chargés de s’assurer qu’ils et leurs éditeurs disposent de conditions de licence appropriées et correctes pour l’utilisation de tous les composants logiciels tiers conformément aux termes de leur contrat de licence de titre. Veillez à obtenir des conseils juridiques appropriés pour toute utilisation de composants open source dans votre titre.
Si vous créez pour UWP sur Xbox, utilisez plutôt le triplet existant x64-uwp
.
Les projets CMake pour ces triplets sont générés à l’aide de CMAKE_SYSTEM_NAME
la valeur « Windows ». Pour indiquer que la console Xbox cible, la XBOX_CONSOLE_TARGET
variable est définie sur «xboxone
» ou «scarlett
».
Les triplets Xbox sont générés avec /DWINAPI_FAMILY=WINAPI_FAMILY_GAMES
la console cible ou /arch:AVX
/arch:AVX2
selon la console cible.
Les triplets Xbox sont également générés avec /DUNICODE /D_UNICODE
, car ils sont fortement recommandés pour le développement moderne. Consultez le manifeste UTF-8 Partout pour plus d’informations.
Pour les bibliothèques dynamiques, veillez à éviter la liaison explicite vers KERNEL32.LIB
ou ONECORE.LIB
. Pour la plateforme Xbox, une bibliothèque de parapluies de plateforme est utilisée à la place qui est en conflit avec kernel32
, etc. Consultez Microsoft Learn.
Pour plus d’informations, consultez ce billet de blog.
Consultez également l’exemple CMakeExample sur GitHub.
Commentaires sur vcpkg
vcpkg est un projet open source. Sélectionnez un lien pour fournir des commentaires :