개요
이 문서에서는 GDK 구성 요소를 프로젝트에 통합할 때 Unity 시작하는 방법을 설명합니다. 여기에는 다양한 유형의 Unity 패키지, 패키지를 설정하는 방법 및 각 패키지에 포함된 기능이 포함됩니다.
Microsoft 및 Unity 공동 개발한 Unity 위한 최신 Microsoft GDK 패키지는 동일한 구성 및 코드 베이스를 사용하여 Windows x64, Xbox Series X|S 및 Xbox One 콘솔 디바이스를 대상으로 하는 기능을 제공합니다.
필수 구성 요소
Unity Microsoft GDK 패키지를 활용하려면 다음 필수 구성 요소가 필요합니다.
- Unity 편집기 버전 2021.3 이상
- Visual Studio 2019(16.9) 이상
- Windows SDK(22000 이상)
- Windows 10(1709 이상) 또는 Windows 11
- 2023년 10월 업데이트 4 GDK 이상
- Xbox 콘솔을 대상으로 하는 경우 유효한 Unity 라이선스
패키지 요구 사항에 대한 자세한 내용은 Unity 요구 사항 및 설치 문서를 참조하세요.
microsoft GDK Packages for Unity
프로젝트 및 편집기 통합할 때 다양한 기능을 제공하는 여러 GDK 패키지가 있습니다. 모든 패키지는 Unity 의해 배포되며 자세한 내용은 다운로드 포털에서 확인할 수 있습니다.
Microsoft GDK Xbox 콘솔 패키지에 액세스하려면 ID@Xbox 포함한 Xbox 개발자 프로그램의 구성원이어야 하며 Microsoft 담당자에게 문의하여 Unity Xbox 포럼에 대한 액세스를 요청해야 합니다. PC 개발을 시작하는 데 필요한 패키지는 공개적으로 사용할 수 있으며 여기에서 찾을 수 있습니다.
패키지의 전체 목록은 다음과 같습니다.
- Unity(PC & 콘솔)용 Microsoft GDK API 패키지
- Unity용 Microsoft GDK 도구 패키지(PC & 콘솔)
- Unity용 Microsoft GDK Tools for Xbox 패키지(본체에만 해당)
- Unity 대한 GXDK 입력 시스템 패키지(콘솔에만 해당)
- Unity 대한 Game Core 렌더링 파이프라인 패키지(콘솔에만 해당)
Unity 위한 Microsoft GDK API 패키지는 도전 과제, 클라우드 저장 및 순위표와 같은 Xbox 네트워크 서비스에 대한 액세스를 포함하여 PC, Xbox Series X|S 및 Xbox One 장치에서 네이티브 API를 활용하는 데 필요한 C# 래퍼를 제공합니다.
Unity 위한 Microsoft GDK Tools 패키지는 microsoft 게임 구성 파일을 만들고 Microsoft Store에 제출하기 위해 PC 게임을 GDK로 패키지하는 데 Unity 내의 개발 워크플로에 필요한 통합을 제공합니다.
Unity용 Microsoft GDK Tools for Xbox 패키지는 Microsoft Store에 제출하기 위해 콘솔 GDK 게임을 패키징하는 것을 포함하여 Xbox Series X|S 및 Xbox One 디바이스용 개발자 워크플로에 대한 통합을 통해 GDK Tools 패키지를 확장합니다.
Unity 대한 GXDK 입력 시스템 패키지는 Xbox Series X|S 또는 Xbox One 장치를 대상으로 할 때 Unity 입력 시스템에 콘솔 관련 기능을 제공합니다.
Unity용 Game Core 렌더링 파이프라인 패키지는 Xbox Series X|S 또는 Xbox One 디바이스에서 URP(유니버설 렌더링 파이프라인) 또는 HDRP(고화질 렌더링 파이프라인)와 같은 Unity SRP(스크립팅 가능한 렌더링 파이프라인)를 사용하는 콘솔별 기능을 제공합니다.
콘솔용 추가 기능 Unity 편집기
Unity 내에서 Xbox Series X|S 및 Xbox One 디바이스에서 구성, 빌드, 배포 및 시작할 수 있도록 프로젝트 설정을 & 빌드 프로필에 액세스하려면 Unity 제공하는 편집기 추가 기능을 설치하여 이 기능을 포함하도록 편집기 확장해야 합니다.
이러한 추가 기능은 각 편집기 추가 기능을 제공하는 .exe 설치 관리자로 제공됩니다. 따라서 이러한 기능을 잠금 해제하려면 편집기 사용하여 각 컴퓨터에 설치해야 합니다. 추가 기능이 성공적으로 설치되면 Unity Hub의 설치 탭에 있는 연결된 Unity 편집기 버전이 지원되는 기능으로 나열됩니다. 이제 해당 버전의 편집기 사용하는 모든 프로젝트에서 Xbox Series X|S 및 Xbox One GDK 프로젝트 설정 및 빌드 프로필을 사용하도록 설정할 수 있습니다.
다음은 두 추가 기능이 모두 설치된 Unity 6 버전의 편집기 예입니다.
패키지, 추가 기능, GDK 및 엔진 호환성
Unity 위한 Microsoft GDK API & Tools 패키지는 Unity 편집기 내 패키지 관리자의 Unity 레지스트리를 통해 획득됩니다. 제공된 버전은 편집기 버전 2021.3.47f1, 2022.3.55f1, 6000.0.31f1 이상인 경우 실행 중인 편집기 호환됩니다. Unity Microsoft GDK API 패키지의 각 릴리스와 GDK & 엔진 버전 호환성에 대한 자세한 내용은 여기를 참조하세요. 이러한 패키지는 GitHub 를 통해 획득한 GDK와 Xbox 개발자 다운로드 포털을 통해 획득한 GDK를 지원합니다.
Unity 위한 Microsoft GDK Tools for Xbox 패키지는 Unity Xbox 포럼에서 직접 다운로드 링크를 통해 획득됩니다. 이 패키지는 Unity 편집기 버전 2021.3.45f1, 2022.3.49f1, 6000.0.22f1 이상과 호환됩니다. 이 패키지의 요구 사항에 대한 자세한 내용은 이 Unity Xbox 포럼 게시물을 참조하세요. 이 패키지는 Xbox 개발자 다운로드 포털을 통해 획득한 GDK에서만 지원됩니다. 이 패키지를 사용하려면 편집기 Unity 편집기 Xbox Series X|S 및 Xbox One 추가 기능을 설치해야 합니다.
Unity 위한 GXDK 입력 시스템 패키지는 Unity Xbox 포럼에서 직접 다운로드 링크를 통해 가져옵니다. 이 패키지의 요구 사항에 대한 자세한 내용은 이 Unity Xbox 포럼 게시물을 참조하세요. 이 패키지는 Xbox 개발자 다운로드 포털을 통해 획득한 GDK에서만 지원됩니다. 이 패키지를 사용하려면 편집기 Unity 편집기 Xbox Series X|S 및 Xbox One 추가 기능을 설치해야 합니다.
Unity용 Game Core 렌더링 파이프라인 패키지는 Unity Xbox 포럼에서 직접 다운로드 링크를 통해 획득됩니다. 이 패키지의 요구 사항에 대한 자세한 내용은 이 Unity Xbox 포럼 게시물을 참조하세요. 이 패키지는 Xbox 개발자 다운로드 포털을 통해 획득한 GDK에서만 지원됩니다. 이 패키지를 사용하려면 편집기 Unity 편집기 Xbox Series X|S 및 Xbox One 추가 기능을 설치해야 합니다.
Unity 편집기 대한 Xbox Series X|S 및 Xbox One 추가 기능은 Unity Xbox 포럼에서 직접 다운로드 링크를 통해 획득됩니다. 이러한 편집기 추가 기능에 대한 요구 사항에 대한 자세한 내용은 이 Unity Xbox 포럼 게시물을 참조하세요. 이러한 추가 기능은 Xbox 개발자 다운로드 포털을 통해 획득한 GDK에서만 지원됩니다.
프로젝트에 패키지 통합
Unity 위한 Microsoft GDK API & Tools 패키지를 시작하려면 다음 단계를 수행합니다.
- 창 메뉴로 이동하여 '패키지 관리자'를 선택합니다.
- 열리면 오른쪽 열에서 'Unity 레지스트리' 옵션을 선택합니다.
- 검색 상자에 gdk를 입력하고 목록이 새로 고쳐지도록 기다립니다.
- 'Microsoft GDK API' 패키지를 선택하고 설치를 클릭합니다.
- 완료되면 'Microsoft GDK 도구' 패키지를 선택하고 설치를 클릭합니다.
- 두 패키지가 모두 성공적으로 설치되면 패키지 관리자를 닫습니다.
다음은 Unity 6의 Unity 레지스트리에서 패키지를 검색하는 개요입니다.
Xbox 콘솔 관련 패키지의 경우 xbox 포럼 다운로드 포털을 Unity 통해 다운로드합니다. 이러한 패키지는 다음을 통해 프로젝트에 로컬로 추가됩니다.
- 창 메뉴로 이동하고 패키지 관리자를 선택합니다.
- 열리면 "+"를 선택하고 "tarball에서 패키지 추가..."를 선택합니다.
- .tgz 확장 다운로드 패키지로 이동합니다.
- 이를 선택하면 프로젝트에 설치됩니다.
다음은 Unity 6의 프로젝트에 로컬로 설치된 패키지를 보여 주는 이미지입니다.
Unity 패키지는 Unity 프로젝트와 연결됩니다. 새 Unity 프로젝트를 만드는 경우 이러한 패키지를 다시 획득하고 해당 Unity 프로젝트에 다시 설치해야 합니다. 이러한 패키지가 설치된 Unity 프로젝트를 여는 사용자는 이 기능에 액세스하기 위해 레지스트리에서 다시 다운로드할 필요가 없습니다.
참고 항목
이러한 디바이스에서 구성, 빌드, 배포 및 시작하는 기능을 잠금 해제하려면 편집기 설치당 Xbox Series X|S 및 Xbox One 추가 기능을 설치해야 합니다.
GDK를 인식하도록 프로젝트 구성
이 섹션에서는 GDK를 인식할 프로젝트의 초기 통합에 대해 설명합니다.
GDK 설정 자산 만들기
프로젝트에 Unity 대한 Microsoft GDK API & Tools 패키지가 설치되면 추가 메뉴 옵션이 있습니다. 그 중 하나는 GDK 설정 자산을 생성할 수 있는 GDK 특정 자산 집합입니다. 그러면 프로젝트 설정에 GDK 관련 설정이 추가되므로 Unity 내에서 직접 GDK 제품을 구성할 수 있습니다. Unity GDK 설정 관리에 대한 자세한 내용은 여기를 참조하세요.
다음은 Unity 6에서 생성되는 GDK 설정 자산의 예입니다.
Xbox용 GDK 도구 패키지와 Xbox 추가 기능이 설치된 경우 GDK 설정에는 각 플랫폼에 대한 여러 탭이 있으며 플랫폼별 설정 및 구성 파일을 만들 수 있습니다. 프로젝트에는 한 번에 하나의 자산만 활성화할 수 있는 둘 이상의 GDK 설정 자산이 포함될 수 있습니다.
다음은 Unity 6에서 Xbox Series X|S 및 Xbox One에 대해 생성되는 GDK 설정의 예입니다.
Microsoft 게임 구성 자산 만들기
GDK 설정 자산이 만들어지면 프로젝트에 Microsoft 게임 구성 자산을 추가할 수 있습니다. 이렇게 하면 GDK 특정 기능 및 기능을 사용하도록 프로젝트를 구성하는 데 필요한 파일이 생성됩니다. Unity Microsoft 게임 구성 파일을 관리하는 방법에 대한 자세한 내용은 여기를 참조하세요.
다음은 Unity 6에서 만들어지는 Microsoft 게임 구성 자산의 예입니다.
Microsoft 게임 구성을 GDK 자산과 연결
Microsoft 게임 구성을 만든 후에는 GDK 프로젝트 설정을 열고 Microsoft 게임 구성을 프로젝트와 연결해야 합니다. 이렇게 하면 빌드 및 패키징 단계의 일부로 해당 플랫폼에 사용됩니다.
다음은 Unity 6에서 Microsoft 게임 구성을 연결한 예입니다.
Microsoft 게임 구성 자산 편집
GDK 도구 패키지 통합의 일환으로 Microsoft 게임 구성 자산에는 올바른 GDK 구성 값을 쉽게 수정하고 구성하는 데 도움이 되는 특정 편집기 통합이 있습니다. 자산 목록에서 Microsoft 게임 구성 자산을 선택할 때 검사기 창에서 찾을 수 있습니다. Unity Microsoft 게임 구성 파일을 관리하는 방법에 대한 자세한 내용은 여기를 참조하세요.
다음은 Unity 6에서 Microsoft 게임 구성을 편집하는 예제입니다.
GDK 게임을 파트너 센터 제품과 연결
GDK Tools 패키지 통합의 일환으로 Microsoft 게임 구성 편집기 기본 제공 마법사를 사용하여 GDK 게임을 파트너 센터 제품과 쉽게 연결할 수 있습니다. 이렇게 하려면 연결하려는 파트너 센터 제품을 볼 수 있는 권한이 있는 Microsoft 계정에 로그인해야 합니다. 파트너 센터와 성공적으로 연결한 후 마법사는 파트너 센터에서 프로젝트 게임 구성 자산에 자동으로 매핑된 값을 나열합니다. 파트너 센터에서 제품을 만들고 Xbox 서비스 기능에 액세스하는 방법에 대한 자세한 내용은 여기를 참조하세요.
참고 항목
각 사용자가 저장소와 올바르게 연결하는 데 필요한 권한에 대한 자세한 내용은 여기를 참조하세요.
다음은 Unity 6 내에서 스토어 연결 마법사를 시작하는 예제입니다.
참고 항목
스토어 연결 마법사를 올바르게 사용하려면 파트너 센터의 패키지/ID/게시자 행에서 게시자 정보를 가져와 Microsoft 게임 구성 편집기 게시자 필드에 적용해야 합니다.
액세스 API에 C# 래퍼 사용
Unity 위한 Microsoft GDK API 패키지의 일부로 네이티브 GDK API의 C# 래퍼 집합이 제공되어 Unity 프로젝트에서 이러한 API에 직접 액세스합니다. GDK API에 액세스하는 방법에 대한 자세한 내용은 여기를 참조하세요.
다음은 패키지 창에서 Unity 위한 Microsoft GDK API 패키지 내의 C# 래퍼 예입니다.
Visual Studio 및 Unity 활용
Visual Studio는 Unity 직접 통합하기 위해 Visual Studio 설치 관리자 일부로 게임 워크로드를 제공합니다. Visual Studio Tools for Unity 확장에 대한 자세한 내용은 여기를 참조하세요.
샘플 활용
현재 프로젝트를 빌드할 때 코드를 참조하는 데 사용할 수 있는 두 가지 Unity 샘플 집합이 있습니다.
Unity 레지스트리 샘플
샘플의 첫 번째 집합은 Unity 대한 Microsoft GDK API 패키지와 함께 제공되며, 아래와 같이 다운로드한 Unity 레지스트리의 Microsoft GDK API 항목 내의 샘플 탭에서 찾을 수 있습니다.
이러한 샘플은 도전 과제, 클라우드 저장, 게임 저장, In-Game 스토어 동작, 순위표, 로그인, 음성 신시사이저 및 사용자 동작과 같은 시스템과의 기본 상호 작용을 보여 줍니다. 이러한 샘플에 대한 자세한 내용은 여기를 참조 하세요.
참고 항목
이러한 샘플에는 Unity 입력 시스템 패키지에 대한 종속성이 있습니다. Unity 입력 시스템에 대한 자세한 내용과 패키지를 설치하는 방법은 여기를 참조하세요.
GDK 샘플 Unity
Unity 레지스트리를 통해 제공되는 샘플 외에도 GDK 다운로드 자체와 함께 제공되는 샘플 집합이 있습니다. 이는 API의 고급 사용에 대한 데모를 제공하기 위한 것입니다. 포함된 샘플은 다음과 같습니다.
- UnityAchievements - XblAchievement API를 사용하여 도전 과제 진행률을 쿼리하고 업데이트하는 방법을 보여 줍니다.
- UnityInGameStore - 모든 타이틀로 실행되도록 구성하고 카탈로그 제품, 사용자 자격 및 라이선스 제품을 쿼리하기 위해 대부분의 XStore API를 보여 주는 완전한 게임 내 스토어 환경입니다.
- UnityLeaderboardsTitleManaged - 타이틀 관리 순위표를 사용하여 사용자 통계를 업데이트 및 쿼리하고 소셜 및 글로벌 순위표를 쿼리하는 방법을 보여 줍니다.
- UnitySimpleMPSD - 세션 관리 및 매치 메이킹을 위해 MPSD(멀티 플레이어 세션 디렉터리) 및 SmartMatch API를 사용하는 기본 멀티 플레이어 세션 샘플입니다.
- UnityRumble – MPM(멀티 플레이어 관리자) 및 PlayFab 파티를 사용하여 멀티 플레이어 세션을 생성/조인/매치메이크/나가고, 세션 상태를 업데이트하고, 게임 플레이 데이터를 공유하고, 채팅을 통해 통신하는 간단한 멀티 플레이어 게임입니다.
- UnityRumblePlayFabMultiplayer - 위와 비슷하지만 멀티 플레이어 관리자 대신 세션 관리 및 매치 메이킹에 PlayFab 멀티 플레이어를 사용합니다.
- UnitySimpleHttpCall - Xbox Live Http 호출을 사용하여 메시지를 문자열 또는 바이트 배열로 보내고 받는 방법을 보여 줍니다.
- UnitySimpleWebSockets - Http 클라이언트 웹 소켓을 사용하여 미리 구성된 웹 소켓 끝점으로 이진 또는 문자열 메시지를 보내고 받는 방법을 보여 줍니다.
- UnitySimplePLM - 수명 관리 이벤트를 감지하고 대응하는 방법을 보여 주는 기본 샘플입니다(콘솔에서 제한/일시 중단/다시 시작, PC에서 분실/발견됨).
- UnitAssetWorkflow(Xbox에만 해당) - Xbox 콘솔 리소스 및 도구 API를 사용하여 게임 자산을 빠르게 반복하는 방법을 보여 줍니다.
이러한 샘플은 Xbox 개발자 다운로드 사이트에서 가져올 수 있습니다. 다음은 다운로드 포털의 GDK 파일 형식 아래 빌드 목록에 있는 샘플 이름의 예입니다.
프로젝트 패키징 & 빌드
이 섹션에서는 Unity 프로젝트를 빌드하고 패키징하는 방법에 대해 설명합니다.
지역화 및 패키징 설정
Windows 플랫폼에 대한 GDK 설정의 일부로 셸 시각적 개체, 지역화된 자산을 빌드할지, Unity 빌드 단계의 일부로 패키지를 만들 것인지를 지정할 수 있습니다. Windows 패키징을 위해 구성해야 하는 특정 '빌드 프로필' 설정은 없습니다. 패키징 설정에 대한 자세한 내용은 여기를 참조 하세요.
다음은 Unity 6에서 해당 GDK 설정 값을 설정하는 예제입니다.
본체의 경우 프로젝트에 Microsoft GDK Tools for Xbox 패키지가 포함된 경우 '셸 시각적 개체 모드'를 '복사 전용'으로 설정하여 패키지하기 전에 스토어 이미지가 빌드 폴더에 복사되도록 할 수 있습니다. 이렇게 하면 이미지를 수동으로 복사할 필요가 없습니다.
콘솔에 대한 패키지 암호화 방법을 설정하려면 프로젝트 설정 > 플레이어 > 게시자 설정으로 이동합니다. Xbox 대상에는 '패키지 암호화' 설정이 포함됩니다. 로컬 테스트를 위해 테스트용으로 로드할 수 있는 패키지를 빌드할 때 '개발'을 사용합니다('빌드 및 배포' 또는 'xbapp install'을 사용하는 경우). 파트너 센터에 업로드한 다음 스토어에서 설치할 패키지에 '제출'을 사용합니다.
콘솔에 대한 Unity 패키지 생성은 '프로필 빌드' 페이지에 구성됩니다. 대상 플랫폼을 Xbox One 또는 Xbox Series로 변경합니다(빌드 중인 플랫폼에 따라 다름). 테스트용으로 로드할 수 있는 로컬 패키지의 경우 '빌드 유형'을 '개발 플레이어'로 설정합니다. 파트너 센터에 업로드하려는 패키지의 경우 '빌드 유형'을 '마스터 플레이어'로 설정합니다. Deploy 메서드를 'Package'로 변경합니다.
'개발' 암호화를 사용하여 빌드된 콘솔 쪽 로드 가능 패키지의 경우 '빌드 및 실행' 옵션을 사용하여 콘솔에 배포할 수 있습니다. 그러면 느슨한 폴더 빌드가 만들어지고, 테스트 서명으로 makepkg.exe 실행하고, 기본 devkit에 패키지를 설치/시작합니다.
'제출' 암호화를 사용하여 빌드된 패키지는 테스트용으로 로드할 수 없습니다. 파트너 센터에 업로드한 다음 Microsoft Store를 통해 설치해야 합니다.
프로필 빌드
빌드 프로필은 각 대상 플랫폼에 대해 존재합니다. Windows 플랫폼은 Windows GDK 설정 파일에 패키지를 지정한 경우 빌드가 완료된 후 GDK 설정 파일을 사용하고 MSIXVC 폴더에 MSIXVC 패키지를 생성합니다. 빌드 프로필에 대한 자세한 내용은 여기를 참조 하세요.
콘솔의 경우 패키징을 포함한 배포 설정은 추가 빌드, 배포 및 디버깅 옵션과 함께 플랫폼별 빌드 설정에 지정됩니다. 출력 디렉터리에는 빌드가 완료된 후 XVC 폴더에 XVC 패키지가 포함됩니다.
다음은 Unity 6에서 각 플랫폼 빌드 프로필을 보는 예제입니다.
재생 모드에서 프로젝트 테스트
GDK 기반 프로젝트가 재생 모드에서 제대로 작동하는지 확인하기 위한 추가 단계와 고려 사항이 있습니다. 재생 모드를 올바르게 사용하는 데 필요한 단계에 대한 자세한 내용은 여기를 참조하세요.
추가 정보
도움말 보기
적중된 문제에 대한 도움말을 보려면 xbox 포럼 Unity 참조하세요. Xbox 개발자 프로그램에 속하지 않고 Windows 개발에 공용 패키지를 사용하는 경우 Unity Windows 포럼을 사용하세요.
Unity 통합과 관련이 없는 GDK 관련 topics 관련된 도움말을 찾으려면 Xbox GDK 포럼에 게시하세요.
알려진 문제
Unity 대한 GDK API 패키지와 관련된 알려진 문제 목록은 여기를 참조하세요.
Unity 대한 GDK 도구 패키지와 관련된 알려진 문제 목록은 여기를 참조하세요.
이전 버전의 Unity 사용
Microsoft GDK AP & Tools 패키지는 Unity 2021.3 이상 버전의 편집기 지원합니다. 지원되는 버전의 Unity 편집기 사용하여 모든 플랫폼에서 타이틀을 올바르게 빌드하고 실행하는 통합 도구 지원 및 기능을 얻는 것이 좋습니다.
이전 버전의 Unity 사용하는 경우 GDK API 패키지에 제공된 C# 래퍼를 참조하여 GDK 네이티브 API를 사용하여 고유한 프로젝트별 인터페이스를 제공할 수 있습니다. 또한 편집기 도구를 사용하여 게임에 대한 MicrosoftGame.config, 지역화 및 셸 시각적 개체 및 패키지를 만들 수 있습니다.
이러한 프로세스는 수동이며 직접 편집기 통합을 제공하지 않습니다. Unity 편집기 버전을 업그레이드할 수 없고 옵션에 대한 추가 지침이 필요한 경우 Microsoft 담당자에게 문의하세요.
사용되지 않는 패키지
Microsoft에서 GitHub에 배포한 GDK Unity 패키지(PC만 해당)는 이제 더 이상 사용되지 않으며 Unity 위한 Microsoft GDK API & Tools 패키지에 찬성하여 제거되었습니다. GDK Unity 패키지(PC만 해당)에 대한 질문이 있는 경우 Microsoft 담당자에게 문의하세요. 이전 GDK Unity 패키지(PC만 해당)를 사용하고 마이그레이션 방법에 대한 단계를 찾고 있는 경우 여기에서 업그레이드 가이드를 참조하세요.
더 이상 사용되지 않는 Unity 제공 패키지에 대한 자세한 내용은 Unity Xbox 포럼 게시물을 참조하세요.