İngilizce dilinde oku

Aracılığıyla paylaş


Xbox

Not

Xbox, vcpkg deposunun sürekli tümleştirme sürecinin bir parçası olarak test edilmediğinden, kitaplık güncelleştirmelerinin bir parçası olarak regresyonlar oluşabilir.

Xbox topluluk üçlüleri

vcpkg, Microsoft GDK pc ve Xbox geliştirme için topluluk üçlülerini içerir. MSVC derleyici araç takımını (Visual Studio 2019 sürüm 16.11 veya üzeri) kullanırlar.

Her üçlü için iki değişken vardır: statik ve dinamik bağlama.

Konsol vcpkg topluluk üçlüleri
Xbox One x64-xbox-xboxone
x64-xbox-xboxone-static
Xbox Series X|S x64-xbox-scarlett
x64-xbox-scarlett-static

static Bağlantı üçlüleri, önerilen ve desteklenen kullanım senaryosu olduğundan MSVC Çalışma Zamanı'nı DLL olarak (örneğinVCPKG_CRT_LINKAGE dynamic) kullanacak şekilde ayarlanır.

Windows SDK ile oluşturma

Windows SDK (19041) veya üzeri, Xbox Oyun İşletim Sistemi tarafından kullanılan API bölümünde derlemek WINAPI_FAMILY_GAMES için gereken sistem üst bilgilerini içerir. Bu nedenle çoğu kitaplık, Xbox Uzantıları ile NDA Microsoft GDK'ye erişmeden bu üçüzlere karşı oluşturulabilir.

Xbox Uzantıları ile Microsoft GDK ile derleme

DirectX grafik API'lerini kullanan kitaplıklar, Xbox Oyun İşletim Sistemi tarafından kullanılan özel bir Direct3D 12.X varyantı kullanılarak oluşturulmalıdır ve bunun için Xbox Uzantıları ile NDA Microsoft GDK'ye erişim gerekir. Xbox Oyun İşletim Sistemi'nin Direct3D 11, Direct2D/DirectWrite, OpenGL, GDI veya Direct3D'nin herhangi bir eski sürümünü desteklemediğini unutmayın.

Bu üst bilgileri gerektiren kitaplıklar, bu gereksinimi belirtmek için "saplama" bağlantı noktasını kullanmalıdır ms-gdkx . Bu bağlantı noktası, , GameGXDKLatestve GameGRDKLatest ortam değişkenleri tarafından GameDKLatestişaret edilen yolları arar.

Not

Xbox oyun geliştiricileri, onların ve yayıncılarının, Başlık Lisans Sözleşmesi koşullarına göre üçüncü taraf yazılım bileşenlerinin kullanımı için uygun ve doğru lisans koşullarına sahip olduklarından emin olmakla sorumludur. Başlığınızdaki açık kaynak bileşenlerinin kullanımı için uygun yasal tavsiyeler almayı unutmayın.

Xbox'ta UWP

Xbox'ta UWP için derleme yapıyorsanız, bunun yerine mevcut x64-uwp üçlük kullanın.

Bakımcı notları

Bu üçüzler için CMake projeleri "Windows" olarak ayarlanmış şekilde CMAKE_SYSTEM_NAME oluşturulur. Xbox konsolunun hedeflendiğini XBOX_CONSOLE_TARGET belirtmek için değişkeni "" veya "xboxonescarlett" olarak ayarlanır.

Xbox üçlüleri, hedef konsol ile /DWINAPI_FAMILY=WINAPI_FAMILY_GAMES veya /arch:AVX2/arch:AVX bağlı olarak derler.

Xbox üçlüleri de ile /DUNICODE /D_UNICODE derlenir, her ikisi de modern geliştirme için kesinlikle önerilir. Daha fazla bilgi için UTF-8 Everywhere bildirimine bakın.

Dinamik kitaplıklar için veya ONECORE.LIBbağlantısına yönelik explict'lerden kaçınmayı KERNEL32.LIB unutmayın. Xbox platformu için, bunun yerine ile kernel32çakişen bir platform şemsiye kitaplığı kullanılır. Bkz. Microsoft Learn.

Daha fazla bilgi

Daha fazla bilgi için bu blog gönderisine bakın.

Ayrıca GitHub'da CMakeExample örneğine de bakın.