학습
학습 경로
Xbox 팀에서는 모든 사람이 플레이할 때 우리 모두가 우승한다고 생각합니다. Xbox 팀에서는 가능한 한 많은 개발자에게 액세스 가능한 환경을 만드는 데 필요한 도구를 제공하기 위해 최선을 다하고 있습니다. 이 학습 경로에서는 게임 영역으로 지식을 확장하려는 게임, 플랫폼 및 하드웨어 개발자를 위한 게임 접근성에 관한 기본 개념을 소개합니다.
참고
Xbox는 vcpkg 리포지토리의 연속 통합 프로세스의 일부로 테스트되지 않으므로 라이브러리 업데이트의 일부로 회귀가 발생할 수 있습니다.
vcpkg에는 Microsoft GDK PC 및 Xbox 개발을 위한 커뮤니티 트리플릿이 포함되어 있습니다. MSVC 컴파일러 도구 집합(Visual Studio 2019 버전 16.11 이상)을 사용합니다.
각 트리플렛에는 정적 연결과 동적 연결의 두 가지 변형이 있습니다.
콘솔 | vcpkg 커뮤니티 트리플렛 |
---|---|
Xbox One | x64-xbox-xboxone |
x64-xbox-xboxone-static | |
Xbox Series X|S | x64-xbox-scarlett |
x64-xbox-scarlett-static |
static
MSVC 런타임을 DLL(즉VCPKG_CRT_LINKAGE dynamic
, 권장 및 지원되는 사용 시나리오)으로 사용하도록 연결 세 쌍둥이가 설정됩니다.
Windows SDK(19041) 이상에는 Xbox 게임 OS에서 사용하는 API 파티션에 대해 WINAPI_FAMILY_GAMES
빌드하는 데 필요한 시스템 헤더가 포함되어 있습니다. 따라서 대부분의 라이브러리는 Xbox 확장을 사용하여 NDA Microsoft GDK에 액세스하지 않고도 이러한 삼중자에 대해 빌드할 수 있습니다.
DirectX 그래픽 API를 사용하는 라이브러리는 Xbox 게임 OS에서 사용하는 Direct3D 12.X의 사용자 지정 변형을 사용하여 빌드해야 하며, 이를 위해서는 Xbox 확장으로 NDA Microsoft GDK에 액세스해야 합니다. Xbox 게임 OS는 Direct3D 11, Direct2D/DirectWrite, OpenGL, GDI 또는 이전 버전의 Direct3D를 지원하지 않습니다.
이러한 헤더가 필요한 라이브러리는 이 요구 사항을 나타내기 위해 "스텁" 포트를 사용해야 ms-gdkx
합니다. 이 포트는 , 및 GameGRDKLatest
환경 변수가 가리키는 GameDKLatest
GameGXDKLatest
경로를 찾습니다.
참고
Xbox 게임 개발자는 타이틀 사용권 계약 조건에 따라 타사 소프트웨어 구성 요소를 사용하기 위한 적절하고 올바른 라이선스 조건을 가지고 있는지 확인해야 합니다. 타이틀에서 오픈 소스 구성 요소를 사용하기 위한 적절한 법률 자문을 구해야 합니다.
Xbox에서 UWP용으로 빌드하는 경우 기존 x64-uwp
트리플렛을 대신 사용합니다.
이러한 세 쌍둥이에 대한 CMake 프로젝트는 "Windows" 집합을 사용하여 CMAKE_SYSTEM_NAME
빌드됩니다. 대상이 되는 Xbox 콘솔을 나타내기 위해 변수는 XBOX_CONSOLE_TARGET
"" 또는 "xboxone
scarlett
"로 설정됩니다.
Xbox 트리플렛은 대상 본체를 /DWINAPI_FAMILY=WINAPI_FAMILY_GAMES
/arch:AVX
사용하거나 /arch:AVX2
대상 본체에 따라 빌드됩니다.
Xbox 트리플렛도 최신 개발에 강력하게 권장되기 때문에 빌드 /DUNICODE /D_UNICODE
됩니다. 자세한 내용은 UTF-8 Everywhere 선언문을 참조하세요.
동적 라이브러리의 경우 연결을 제거하거나 ONECORE.LIB
에 연결 KERNEL32.LIB
하지 않도록 해야 합니다. Xbox 플랫폼의 경우 플랫폼 우산 라이브러리를 사용하는 대신 충돌하는 등과 kernel32
충돌합니다. Microsoft Learn을 참조하세요.
자세한 내용은 이 블로그 게시물을 참조하세요.
GitHub의 CMakeExample 샘플도 참조하세요.
vcpkg 피드백
vcpkg은(는) 오픈 소스 프로젝트입니다. 다음 링크를 선택하여 피드백을 제공해 주세요.
학습
학습 경로
Xbox 팀에서는 모든 사람이 플레이할 때 우리 모두가 우승한다고 생각합니다. Xbox 팀에서는 가능한 한 많은 개발자에게 액세스 가능한 환경을 만드는 데 필요한 도구를 제공하기 위해 최선을 다하고 있습니다. 이 학습 경로에서는 게임 영역으로 지식을 확장하려는 게임, 플랫폼 및 하드웨어 개발자를 위한 게임 접근성에 관한 기본 개념을 소개합니다.