UWP Development For XBOX ONE

으..드뎌 개발중인 게임데모를 XBOX ONE에도 올렸다.

이전에 포스팅했다시피 현재 XBOX ONE의 UWP 환경에선 DirectX Feature Level이 10.0까지만 지원된다. 칩 사양이 원래 그렇게밖에 안되는건지 아직 개발 환경이 미완성이라 그런지 모르겠다.

어쨌든 내가 만든 엔진은 DX11/12엔진이고 최소한 Feature Level 11을 요구한다.
일단 현재 Feature Level 11을 사용하는 기능은 Compute Shader를 이용한 Hi-Z Occlusion Culling과 일부 쉐이더 코드들이다.
Feature Level 10일 경우 Hi-Z Occlusion Culling을 사용하지 않도록 하고, sm5.0기준으로 작성한 쉐이더코드는 sm4.0 사양에 맞춰 일부 수정하기로 했다.
반나절 정도 작업해서 엔진이 Feature Level 10.0까지 지원할 수 있게 됐다.

코드를 수정하고 XBOX ONE의 Dev Mode에서 deploy했다.
이 과정에서 Deploy실패와 Remote Debugger연결 실패를 모두 겪었다.
아직 개발 환경이 불안정하기 때문에 Deploy가 실패하거나 Remote Debugger연결이 실패할 수 있다. 이 경우 다음과 같이 한다.

1. XBOX 대시보드에서 설치된 앱을 제거한다.
2. Leave Dev-Mode로 리테일 모드로 전환한다.
3. 리테일 모드에서 다시 Dev Mode로 전환한다.
4. 다시 배포한다.

게임 모드로 진입하려면 키보드 입력이 필요한데 현재 게임 컨트롤러 지원이 제한적이라 게임모드로 진입할 방법이 없다.
급한대로 키보드를 XBOX ONE의 USB포트에 연결했다.
다행히 키보드는 바로 인식한다.

다시 앱을 배포하고 리모트 디버깅 상태로 진입. 키보드 입력이 정상 작동한다.
이후는 게임 컨트롤러로 조작 가능하다. 잘 작동한다.
디버그 모드로 55프레임 정도가 나오고 있다.

영상을 찍고 싶었지만 손이 두개뿐이라 폰을 들고 있을수가 없어 그냥 사진만 찍어놨다.
XBOX ONE의 HDMI출력은 데스크탑 모니터에 연결했고, 서피스북으로 배포/디버깅을 하고 있다.
기계식 키보드는 XBOX ONE에 연결되어있다.

VoxelHorizon_UWP_2016_0614_01

VoxelHorizon_UWP_2016_0614_00


답글 남기기

댓글을 게시하려면 다음의 방법 중 하나를 사용하여 로그인 하세요:

WordPress.com 로고

WordPress.com의 계정을 사용하여 댓글을 남깁니다. 로그아웃 /  변경 )

Facebook 사진

Facebook의 계정을 사용하여 댓글을 남깁니다. 로그아웃 /  변경 )

%s에 연결하는 중