게임
Windows 8.1은 최신 센서가 장착된 터치 및 펜 중심의 태블릿에서 고해상도 랩톱 및 데스크톱 PC에 이르기까지 광범위한 장치에서 최고의 사용 범위를 제공합니다. 따라서 게임 게시자는 다양한 시나리오에 적합한 환경을 개발할 수 있는 고유한 기회를 얻게 됩니다. 이 문서에서는 게임에 Windows 원칙 및 UX 지침을 적용하는 동시에 사용자 환경을 개선하고 참여를 증가시키는 방법을 설명합니다.
Windows 8.1에서는 게임과 관련하여 다음과 같은 주요 기능이 새롭게 제공됩니다.
- 라이브 타일 및 알림—점수, 도전과제, 챌린지, 다른 플레이어의 초대 등을 나타내는 타일 활동을 통해 게임이 시작 화면에서 플레이어를 초대하고 참여시킬 수 있습니다. 게임 플레이 또는 기타 사용자 활동 중의 알림을 통해 플레이어는 더 빠르고 자주 게임으로 돌아갈 수 있습니다.
- 공유 계약—앱 간의 계약을 통해 게임이 시스템, Windows 스토어 또는 웹에 이미 설치되어 있는 다른 앱에 연결될 수 있으므로 사용자의 소셜 환경이 강화됩니다.
- 다양한 사용자 조작 지원—Windows 8.1에서는 터치, 펜, 키보드, 마우스 및 외부 게임 컨트롤러가 지원됩니다.
- 센서—Windows 8.1은 조명, 자이로스코프, 가속도계 및 위치를 비롯한 최신 센서를 지원합니다.
- 다양한 폼 팩터 및 화면 크기 지원—큰 화면에서 태블릿에 이르기까지 다양한 폼 팩터를 통해 게임을 플레이할 수 있습니다. 최적의 게임 환경을 위해 창 크기나 화면 크기에 따라 서로 다른 레이아웃으로 게임 컨트롤을 표시할 수 있습니다.
- Windows 스토어—Windows 스토어는 앱 개발자에게 게임 및 앱에서 바로 기능을 배포, 홍보 및 판매할 수 있는 새로운 기회를 제공합니다. Windows 스토어에서는 코드를 작성하지 않고도 사용 가능한 무료 평가판을 손쉽게 제공할 수 있습니다.
이 문서에서는 이와 같은 기능이 Windows 8.1용 게임 디자인 및 개발에 어떤 영향을 주는지에 대해 알아봅니다. Cut the Rope, Microsoft Solitaire, Tankster, PuzzleTouch 및 Cannon Ball 등의 게임과 관련하여 이러한 원칙에 대해 설명합니다.
"최적 환경" 설명
게임을 디자인하기 전에 사용자에게 제공하려는 환경에 대해 설명하는 "최적 환경" 설명을 작성하세요. 이 설명에는 게임을 가장 효율적으로 활용할 수 있는 시나리오와 동일한 시나리오를 수행하는 데 있어 해당 게임이 다른 게임에 비해 우수한 점에 대한 내용을 포함합니다. "최적 환경" 설명을 기반으로 디자인 프로세스를 진행하고 포함 및 포함하지 않을 시나리오와 기능을 결정합니다.
Cannon Ball의 "최적 환경" 설명은 일련의 플랫폼을 따라 공을 굴리면서 동전을 모아 음악을 만들 수 있는 간단하면서도 재미있는 게임을 사용자에게 제공하기 위해 작성되었습니다. 게임을 계획할 때 이 설명을 기준으로 지원할 시나리오가 결정되었습니다. 공을 굴려 동전을 모으려면 플랫폼 각도를 변경할 수 있어야 합니다. 이 시나리오를 적용하기 위해 터치, 키보드 및 마우스 입력 컨트롤이 구현되었습니다. 지원하지 않을 시나리오를 결정할 때도 이 설명이 사용되었습니다. 예를 들어 앱에서 게임 플레이 도중 만든 음악을 저장하는 시나리오는 지원되지 않습니다. 음악 저장 기능은 게임 플레이에 추가되지 않아 구현되지 않았습니다.
라이브 타일, 보조 타일 및 알림
라이브 타일을 사용하면 시작 화면에서 사용자가 게임에 대해 관심을 갖도록 할 수 있습니다. 라이브 타일에는 플레이어의 최근 점수, 최근 성과 또는 현재 게임 상태에 대한 정보를 표시할 수 있습니다. 게임이 게임 개체나 수준 등의 새로운 콘텐츠로 업데이트되는 경우에는 해당 정보도 라이브 타일에 표시하여 사용자가 게임을 플레이할 때 새 콘텐츠를 활용하도록 할 수 있습니다.
여러 명이 차례대로 플레이하는 게임처럼 게임 플레이에 복잡한 진행 상황이나 진행 중인 여러 게임이 포함되는 경우 사용자가 게임 저장이나 특정 매치를 시작 화면에 보조 타일로 고정할 수 있게 하는 것이 좋습니다. 그러면 사용자가 원하는 특정 게임을 바로 시작할 수 있습니다. 라이브 타일에 대한 자세한 내용은 타일 및 배지에 대한 지침 및 검사 목록을 참조하세요.
사용자가 다른 작업을 하는 동안 게임을 계속 할 수 있도록 하는 또 다른 방법은, 자기 차례가 되었을 때(여러 명이 순서대로 하는 게임의 경우) 또는 친구가 자신의 최고 점수보다 높은 점수를 올렸을 때 알려 주는 알림 메시지를 사용하는 것입니다. 알림 메시지를 구현할 때는 알림 메시지에 대한 지침 및 검사 목록의 지침을 따르세요.
사용자는 다양한 타일 크기(작은 타일, 중간 크기, 큰 타일 및 와이드 타일) 중에서 선택할 수 있습니다. 타일의 화면 효과 또는 정보가 더 매력적일수록 사용자가 화면 공간을 할애할 가능성이 커집니다. 다양한 타일 크기, 색 및 콘텐츠로 실험하여 게임에 가장 적합한 설정을 찾으세요. 앱 매니페스트에서 원하는 타일 크기를 선언하고 다른 타일 크기에 적합한 자산도 포함합니다. 앱 매니페스트의 타일 크기에 대한 자세한 내용은 DefaultTile을 참조하세요. 타일 업데이트에 대한 자세한 내용은 타일 스키마를 참조하세요.
그림 1: Cannon Ball의 라이브 타일은 TileWideImageAndText02 타일 템플릿을 사용합니다. 개발자는 이 타일 템플릿을 통해 다채로운 게임 이미지를 표시할 수 있을 뿐 아니라 사용자의 최고 점수와 모은 아이템에 대한 최신 정보를 제공할 수 있습니다. 다른 타일 형식에 대한 자세한 내용은 타일 템플릿 카탈로그를 참조하세요.
시작 화면 및 진행률 컨트롤
게임을 열면 맨 먼저 시작 화면이 표시됩니다. 시작 화면은 게임을 실행하면 표시되어 게임을 할 준비가 되면 본 게임 화면으로 원활하게 전환됩니다. 대부분의 게임은 많은 수의 자산을 포함하므로 로드 시간이 최대값인 3초보다 오래 걸릴 수 있습니다. 이처럼 로드하는 데 시간이 오래 걸리는 경우 사용자가 게임을 로드하는 중임을 확인할 수 있도록 배경 음악 또는 진행률 표시 원을 포함하는 연장된 시작 화면을 제공해야 합니다. 시작 화면에 대한 자세한 내용은 시작 화면에 대한 지침 및 검사 목록을 참조하세요.
연장된 시작 화면 방법은 게임 플레이 중 새로운 레벨을 로드하거나 풍부한 컷신 플레이를 준비하는 등 앱에서 리소스를 가져와야 할 때도 도움이 됩니다. 게임이 0.5초 이상 응답하지 않는 경우 앱이 계속 처리되고 있으며 중단된 것이 아님을 사용자가 확인할 수 있도록 진행률 컨트롤을 표시해야 합니다.
앱을 로드하는 중에 오디오/시각적 흥미를 더하기 위해 배경 음악을 재생하고 게임 브랜딩을 지원하는 동시 애니메이션을 포함할 수도 있습니다.
레이아웃 및 탐색
게임의 탐색 및 명령과 관련해서는, 매우 많은 옵션을 호스팅하는 계층적 메뉴를 필요로 하는 복잡하고 다각적인 전략을 사용할 수도 있고, 메뉴나 옵션이 전혀 없을 수도 있는 간단한 퍼즐 게임처럼 단순한 전략을 적용할 수도 있습니다. 도전과제 화면, 순위표, 멀티 플레이 대기실 등의 다양한 요소를 표시하는 게임이 있는 반면, 게임 환경 자체만 제공하는 게임도 있습니다. 멋진 Windows 8 게임에서는 여러 환경 간 탐색이 빠르고 유연해야 합니다. 게임에서 제공하는 환경 유형에 따라 사용할 탐색 패턴을 결정할 수 있습니다. 계층적 및 플랫 탐색 패턴을 검토하고 이해해야 합니다. 탐색 구조를 결정하는 것이 게임 자체가 아니라 게임의 다른 콘텐츠인 경우도 있습니다.
게임 자체뿐 아니라 풍부한 여러 환경이 게임에 포함되는 경우에는 계층적 패턴을 통해 모든 콘텐츠를 최상위에 표시합니다. 콘텐츠를 메뉴 뒤에 숨기지 마세요. 이렇게 하면 게임을 할 때마다 정성스레 만든 모든 환경을 플레이어에게 보여줄 수 있습니다. 게임 플레이가 유일한 환경인 경우 플랫 패턴을 고려할 수 있습니다. 이 패턴을 사용하면 친구와의 일대일 게임을 여러 개 동시에 실행하는 등 게임의 여러 세션 간을 신속하게 이동할 수 있습니다.
앱에 가장 적합한 탐색 패턴을 선택하는 방법을 보려면 탐색 패턴을 참조하세요.
앱 기능 전체 프로세스 시리즈의 일부인 플랫 탐색 패턴 및 계층적 탐색 패턴을 참조하세요.
계층적 패턴
계층적 패턴을 사용하면 모든 콘텐츠를 기본 허브 페이지에서 사용자에게 표시하여 사용자가 다양한 요소를 활용하고 게임을 처음 시작할 때부터 모든 기능을 체험하도록 할 수 있습니다. 게임 허브에서 게임 진입점(예: 레벨 선택, 새 게임, 게임 계속하기)은 물론 최신 도전과제, 친구 목록 및 기타 콘텐츠 영역도 모두 동일한 가로 이동 화면에 표시할 수 있습니다. 따라서 플레이어가 허브를 확인할 때마다 업데이트된 최신 콘텐츠를 표시할 수 있어 사용자가 게임 자체를 플레이하지 않을 때도 다양한 활동을 하도록 할 수 있습니다. 각 영역에서는 플레이어가 직접 조작할 수 있는 콘텐츠를 제공할 수 있습니다. 해당 범주에 속하는 콘텐츠를 보다 자세히 확인하기 위한 탐색 지점으로는 섹션 머리글을 사용합니다. 허브를 통해 게임의 일부 특성과 브랜딩을 적용할 수도 있습니다. 예를 들어 사용자가 특정 레벨을 선택하면, 표시되는 레벨을 반영하여 섹션 페이지 배경이 변경될 수 있습니다.
Microsoft Solitaire Collection에서는 사용자가 여러 게임 환경 간을 탐색할 수 있도록 하는 계층적 패턴을 사용합니다.
게임 내에서 항상 허브로 돌아갈 수 있는 방법을 제공해야 합니다. 머리글에 있는 뒤로 단추를 통해 제공되는 경우가 많습니다. 어떤 방법을 사용하든, 사용자가 메뉴를 검색하는 것이 아니라 게임 콘텐츠를 자연스럽게 이동하면서 원하는 내용을 확인한다고 느끼도록 해야 합니다. 사용자가 섹션 간에 쉽게 이동할 수 있도록 시맨틱 줌을 구현하는 것이 좋습니다. 기본 허브의 특정 섹션에 있는 사용자는 손가락을 모아 시맨틱 줌아웃하여 다른 앱 섹션으로 빠르게 이동할 수 있습니다.
Microsoft Solitaire Collection에서는 시맨틱 줌을 사용하여 사용자가 허브 섹션 간을 빠르게 이동할 수 있도록 합니다.
계층적 패턴은 사용자가 환경 간에 이동하면서도 게임 콘텐츠에 지속적으로 몰입할 수 있도록 해야 합니다. 따라서 게임 플레이 중에 많은 옵션을 선택해야 하는 게임이나 보조 환경이 다수 포함된 게임의 경우 계층적 패턴이 적합합니다.
플랫 패턴
플랫 패턴에서는 게임 환경이 중앙의 전면에 유지됩니다. 따라서 플랫 패턴은 다른 독립 실행형 환경이 없는 게임에 적절한 레이아웃입니다. 플랫 패턴을 적용하는 경우 사용자를 별도의 허브로 리디렉션하는 대신 위쪽 앱 바를 탐색 홈으로 사용합니다. 이 앱 바를 통해 각 세션을 표시하고 사용자가 세션 간을 원활하게 이동할 수 있도록 합니다. 게임을 시작하기 전에 예비 단계가 있거나 일시 중지한 게임이 있으면 사용자에게 게임 브랜딩을 보여 주고 게임 내 "홈"으로 식별할 장소를 제공하는 화면을 표시할 수 있습니다. 게임이 시작되면 위쪽 앱 바를 표시할 필요가 없습니다. 예를 들어 Internet Explorer 앱은 마지막으로 사용된 웹 페이지를 표시하고 앱 바를 직접 호출하여 탭을 탐색하도록 합니다.
다음 그림에서는 게임 세션 이외의 환경을 제공하지 않는 게임과 이러한 게임에서 세션 간에 이동하는 방법을 보여 줍니다. 이 게임에서는 소수의 기능을 허브로 이동하는 대신 플랫 패턴을 사용해 모든 콘텐츠를 표시함으로써 사용자가 게임을 빠르고 정확하게 탐색하도록 합니다.
추가 레이아웃 고려 사항: 앱에서 한 방향으로만 스크롤을 유지해야 합니다. 즉, 허브 페이지가 가로로 이동하는 방식이면 앱 역시 가로로 이동하는 방식이어야 합니다. 세로 이동 인스턴스가 있으면 안 됩니다. 예를 들어 일반적으로 세로로 표시되는 긴 순위표의 경우 열 레이아웃으로 표시되도록 콘텐츠를 줄 바꿈합니다. 정보가 많아 목록이 길어지는 경우에는 사용자가 시맨틱 줌을 사용하여 긴 목록의 양 끝을 이동하도록 할 수 있습니다.
게임 플레이 시의 조작
터치 조작: 게임은 제어하는 방법은 직접 조작 방식이 가장 좋습니다. Windows 8.1에서는 효율적인 멀티 터치 조작(최대 5개 입력)을 지원하므로 사용자가 이동, 확대/축소 등의 작업과 명령 실행을 동시에 수행할 수도 있고 플레이어 또는 게임 카메라를 이동하는 동시에 공격할 수도 있습니다. 센서나 터치 기능이 없는 장치 사용자를 비롯한 모든 사용자가 마우스와 키보드로 게임을 할 수 있도록 조작을 신중하게 디자인하세요.
가상 D-패드 등의 가상 컨트롤을 사용하여 캐릭터의 움직임을 제어하거나 손가락을 좌우로 밀어 차량을 운전하면 캔버스에 많은 단추와 컨트롤을 표시하지 않아도 되고 사용자가 게임을 조작할 수 있는 공간이 넓어지므로 화면이 깔끔해집니다. W, A, S, D 및 화살표 키는 가상 D-패드에 병렬로 포함할 수 있는 동등한 기본 키보드 탐색 항목입니다. 게임 캔버스에 D-패드 또는 단추 컨트롤을 표시하는 경우 사용자가 컨트롤의 크기와 위치를 사용자 지정하거나, 엄지손가락 또는 나머지 손가락으로 터치하는 위치를 기준으로 배치할 수 있도록 하는 것이 좋습니다. 인간 공학적으로 모든 사용자를 만족하게 하는 하나의 범용 배치는 없습니다. 가상 조이스틱 컨트롤의 기본 배치에서는 사용자가 태블릿을 잡을 때의 엄지손가락 위치를 고려합니다.
사용자의 터치 조작으로 인해 화면 왼쪽에서 다른 활성 앱이 실행되거나 참 메뉴가 표시되는 등의 가장자리 동작이 실수로 호출될 수 있는지도 고려해야 합니다. 게임 내 명령과 그러한 명령의 조작은 참 메뉴나 앱 바와 같은 UI 요소를 방해하지 않도록 화면 가장자리에서 적어도 20픽셀 떨어져야 합니다. 사용자가 가장자리 근처를 살짝 밀지 못하도록 일종의 "경계"를 표시하거나, 실수로 가장자리를 살짝 밀지 않도록 컨트롤을 수정할 수 있습니다. 또한 사용자가 마우스를 화면 모서리로 움직여야 하는 게임 명령을 사용해서는 안 됩니다. 시스템에서는 사용자가 마우스를 사용할 때 모서리를 사용하여 참을 열고 다른 활성 응용 프로그램을 실행하기 때문입니다. 게임에서 마우스 모양 컨트롤을 사용하여 게임의 가상 카메라를 작동하는 경우 마우스 컨트롤 개발에 참조된 플랫폼 모범 사례를 통합하는 것이 좋습니다.
다양한 입력 모드: 게임에서는 키보드, 마우스, 게임 컨트롤러 또는 펜뿐 아니라 터치도 지원해야 합니다. 모든 폼 팩터에서 효율적인 환경을 제공하려면 게임은 가능한 한 모든 입력 모드를 지원해야 하며 제어 체계가 입력 모드와 관계없이 최대한 유연하고 일관되게 유지되어야 합니다. 입력 전환은 실시간에 동적으로 처리되어야 합니다. 예를 들어 터치 이벤트가 검색되면 터치에 적용되는 컨트롤이 페이드 인되고, 마우스 클릭이 검색되면 터치에만 적용되는 컨트롤이 페이드 아웃됩니다. 입력 전환은 최대한 동적으로 처리합니다. 사용자가 터치 컨트롤을 켜거나 끄고 특정 입력 모드를 선택하도록 강제하는 수동 설정은 사용하지 마세요. 또한 게임을 할 때 사용할 입력 방법을 선택하라는 메시지도 표시되지 않도록 하세요. 게임에서는 모드를 전환할 필요 없이 모든 컨트롤 모드를 원활하게 지원할 수 있어야 합니다.
앱 바 명령: 가능하면 사용자가 콘텐츠에 대해 실행되는 명령을 사용하는 대신 캔버스에서 콘텐츠를 직접 조작하여 게임을 플레이하도록 디자인하세요. 추가 명령 또는 탐색 컨트롤이 필요한 경우 사용자가 앱 바에서 해당 명령이나 컨트롤을 찾을 수 있어야 합니다. 여러 페이지가 포함된 게임은 일반적으로 위쪽 앱 바에 배치되는 탐색 명령과 일반적으로 아래쪽 앱 바에 배치되는 기타 보조 명령을 사용할 수 있습니다. 새 게임 시작 등 항상 사용할 수 있는 명령은 아래쪽 앱 바의 오른쪽에 배치해야 합니다. 왼쪽에는 상황에 맞는 명령, 즉 허브에서 사용자의 위치나 허브 내에서 선택한 항목에 따라 달라지는 명령을 추가합니다. 예를 들어 롤플레잉 게임용 허브에 저장된 게임 목록이 있는 경우, 사용자가 저장된 게임을 하나 선택하고 아래쪽 앱 바의 왼쪽에 삭제 명령이 나타날 것으로 기대하면서 아래쪽 앱 바를 호출할 것으로 예상할 수 있습니다.
다음의 두 가지 사항을 고려하여 컨트롤을 캔버스에 배치할지 아래쪽 앱 바에 배치할지를 결정할 수 있습니다.
- 컨트롤 사용 빈도
- 게임 플레이에 있어서 이 컨트롤의 중요성
사용 빈도가 높고 게임에서 중요한 컨트롤은 캔버스에 배치하는 것이 좋습니다. 그러면 사용자가 단순히 게임을 진행하려는 용도로 앱 바를 매번 표시해야 하는 번거로움을 없앨 수 있습니다.
다음 그림의 캔버스에는 컨트롤이 없습니다. 사용자는 직접 조작을 통해 게임을 플레이합니다. 사용자는 터치 또는 마우스를 사용하여 동전이 놓인 길을 따라 공을 굴릴 수 있습니다. 그러나 사용자가 화면을 아래쪽에서 위쪽으로 살짝 밀거나 마우스 오른쪽 단추를 클릭하면 앱 바가 나타나 게임을 일시 중지하고 사용자가 장착된 무기를 변경할 수 있게 합니다.
게임이 일시 중지된 경우 사용자가 앱 바를 중지하여 수준을 다시 시작할 수 있습니다.
게임 플레이를 다시 시작하기 위해 화면에 재생/일시 중지 토글 아이콘을 배치할 수도 있습니다.
Cut the Rope에서는 실행 취소 단추가 중요하므로 캔버스에 배치되어 있습니다. 이 게임에서 자주 사용되는 동작이므로 오른쪽 위 모서리에 제공됩니다.
게임의 브랜드나 특성을 반영하도록 앱 바, 단추 및 진행률 표시줄의 스타일을 지정할 수 있습니다. 이러한 요소는 원하는 모양, 색 및 크기로 지정할 수 있습니다.
앱 바에 컨트롤을 배치하는 방법에 대한 자세한 내용은 명령 패턴을 참조하세요.
센서
Windows 8.1에는 센서가 통합되어 있어 게임 및 대화형 엔터테인먼트 환경을 새로운 방식으로 조작할 수 있습니다. 가속도계, 나침반, 회전계, 광원 센서 등을 사용할 수 있으므로 디자이너가 보다 역동적인 몰입형 게임 플레이를 구현할 수 있습니다. Windows 8.1에서는 센서 퓨전을 통해 게임에 적절하게 활용할 수 있는 정확한 방향 및 위치 데이터도 제공합니다.
센서 사용 가능 게임을 개발할 때는 이러한 데이터를 사용할 수 있는 범위를 고려하고 핵심 시나리오를 지원하는 센서를 파악하세요. 각 작업에 적합한 센서를 선택해야 합니다.
- 가속도계는 차량 운전, 게임 요소 기울이기 등에 사용할 수 있습니다.
- 장치 이동을 감지하여 캐릭터나 카메라 시점을 회전할 수 있습니다.
- 장치를 흔들어서 적의 공격을 방어하거나 퍼즐 게임에서 게임판을 다시 설정할 수 있습니다.
- 광원 센서를 사용하면 더욱 향상된 몰입형 대화형 작업을 위해 게임 렌더링의 조명이나 분위기를 변경할 수 있습니다.
- 마이크 또는 카메라를 사용하여 게임에 실제 환경 요소를 통합할 수 있습니다.
- 숨은 그림 찾기 게임에서 "비밀" 요소를 렌더링하고 센서 퓨전 카메라를 통합하여 증강 현실을 적용할 수 있습니다.
모든 게임에 센서가 적합한 것은 아니지만 약간의 창의력을 발휘하면 간단한 제스처나 이동으로 많은 메뉴 또는 명령을 대신할 수 있으므로 그 가능성은 매우 다양합니다. 사용할 수 있는 센서에 대한 자세한 내용은 위치 및 센서로 앱 보완 게시물을 참조하세요.
계약
계약을 사용하여 게임 환경에 다양한 요소를 추가하고 Windows 8.1 환경의 다른 부분에 게임을 연결할 수 있습니다. 계약에 대한 자세한 내용은 앱 계약 및 확장을 참조하세요. 아래에는 구현할 수 있는 몇 가지 유용한 계약의 예제가 나와 있습니다.
검색: 게임은 여러 가지 흥미로운 검색 시나리오를 제공할 수 있습니다. 사용자가 게임 내에서 검색하고 싶어할 만한 내용을 생각해 보세요. 예를 들어 친구의 성적이나 통계 조회, 함께 게임을 플레이할 친구 찾기, 획득한 특정 게임 아이템 찾기 등에 검색을 사용하도록 설정할 수 있습니다. 이러한 경우 검색 상자를 사용하는 경우에 대한 기존의 검색 지침을 따르세요. 검색에 대한 자세한 내용은 검색에 대한 지침을 참조하세요.
공유: 공유 계약을 통해 사용자가 특정 도전과제나 상태 또는 짤막한 게임 플레이 클립과 스크린샷을 공유할 수 있게 하여 게이머를 다른 게이머, 소셜 미디어 매체 또는 친구에 연결할 수 있습니다. 이 계약을 사용하면 게임 간에 데이터를 공유할 수도 있습니다. 예를 들어 롤플레잉 게임용으로 만들어진 특별한 아이템을 전송하거나 친구가 풀어보도록 사용자 지정 퍼즐을 전송하는 등 게임 간 데이터 공유를 위해 공유 계약을 사용할 수도 있습니다.
공유할 항목을 선택할 때는 공유 정보 스타일을 지정하기 위해 브랜드를 어떻게 전달할 것인지 고려하세요. URL, 메일, 소셜 앱, 클라우드 서비스 등 다양한 형식을 공유할 수 있으며, 특정 게임을 가지고 있지 않거나 다른 플랫폼을 사용하는 친구와도 공유가 가능합니다. 따라서 공유하는 정보를 통해 브랜드를 효율적으로 전달하면 게임 사용자 수를 더욱 늘릴 수 있습니다.
게임이 다른 앱의 데이터를 사용하고 흥미로운 방식으로 변환할 수 있는 경우 앱을 공유 대상으로 정의할 수 있습니다. 예를 들어 PuzzleTouch 게임은 사진 앱에서 사진을 받고 사용자 기본 설정에 따라 퍼즐로 변환합니다. 공유에 대한 자세한 내용은 공유에 대한 지침 및 검사 목록을 참조하세요.
장치: 장치를 구현하면 사용자가 게임 플레이를 준비하면서 게임 패드 및 기타 주변 기기를 컴퓨터에 연결하여 더 큰 화면에 게임 콘텐츠를 표시하도록 할 수 있습니다. 또한 장치 참에서 인쇄를 할 수도 있습니다.
설정 및 옵션
설정 참 메뉴를 통해 게임 설정, 옵션, 개인 정보 취급 방침, 정보 페이지, 제작진 및 도움말 콘텐츠에 액세스할 수 있어야 합니다. 설정 참 메뉴는 Windows 스토어 앱의 설정 및 옵션이 호스트되는 곳이므로 게임의 사운드 효과를 조정하거나 게임 플레이의 특정 요소를 변경할 수 있는 기본 장소입니다. 게임 설정은 게임 플레이 시 자주 수행하는 작업과 관련된 경우가 아니면 게임 화면이나 앱 바에서 액세스해서는 안 됩니다. 사용자는 설정 참 메뉴에서 설정을 찾으므로, 설정 참 메뉴의 기능이나 설정 창을 여는 용도로만 사용되는 UI 요소와 중복되는 추가 메뉴가 있어서는 안 됩니다.
Windows 8.1에서는 전역 볼륨 컨트롤이 제공되지만 대부분의 게임에는 보다 복잡한 자체 사운드 설정(예: 사용자가 각각 따로 조정할 수 있는 음악/소리 효과/음성용 개별 볼륨 슬라이더)을 포함하는 것이 효율적입니다. 오디오 설정이 해당 게임에만 적용된다는 것을 분명히 나타내려면 레이블을 포함하세요. 설정 슬라이더와 단추는 변경 내용을 커밋하기 위해 적용 또는 확인 단추를 누르는 보조 동작을 수행하지 않고도 실시간으로 피드백을 제공해야 합니다.
게임에 초기 게임 플레이 연습 또는 자습서 등의 도움말이 포함되는 경우에는 해당 정보의 경로를 설정 참 메뉴에 제공합니다. 게임 플레이의 일부분으로 자습서를 제공할 수도 있습니다. Cut the Rope 앱에서 초기 게임 플레이 환경의 일부로 자습서를 제공하는 예제가 다음 그림에 나와 있습니다.
앱에서 바로 도움말 및 자습서를 제공하는 방법에 대한 자세한 내용은 사용 안내 UI에 대한 지침을 참조하세요.
플레이어 계정
플레이어 계정은 게임에서 플레이어의 진행 상황을 추적하고, 플레이어를 소셜 네트워크에 연결하고, 수익 모델을 사용하는 데 유용합니다. 사용자 계정을 지원하면, 사용자가 계속 돌아오게 하는 좀 더 흥미로운 환경을 만들 수 있으며 친구들과 함께 플레이하도록 할 수 있습니다.
사용자 로그인: 사용자 데이터에 대한 액세스 및 소셜 연결을 요구하는 소셜 네트워킹 게임과 같이 사용자 로그인이 게임 환경에 반드시 필요한 경우, 게임의 "방문 환경"에 플레이할 수 없는 게임을 보여 주는 대신 로그인을 표시하세요. 가능하면 사용자의 Microsoft 계정 또는 게임의 이전 세션에서 캐시한 로그인 정보에서 로그인 정보를 가져오도록 하세요.
로그인 없이도 게임을 플레이할 수는 있지만, 로그인이 적극 권장되는 경우(예: 게임의 수익 모델이 사용자 로그인을 통해 사용자가 아직 사용하고 있지 않은 다운로드 콘텐츠를 홍보하는 방식에 의존하는 경우), 게임의 허브 공간 또는 방문 환경을 로그인에 사용할 수 있습니다. 허브에서 로그인하는 경우에는 게임에서 사용자가 로그인되어 있지 않다는 메시지를 명확하게 표시해야 합니다. 사용자가 로그인하면 로그인 섹션을 완전히 제거하거나 사용자에게 해당되는 콘텐츠로 교체합니다. 게임의 방문 환경이 로그인 전용으로 사용되는 경우 사용자에게 로그인을 건너뛸 수 있는 옵션을 제공해야 하며, 사용자가 로그인하지 않기로 한 경우 그 결정을 존중하여 이후 게임 세션이 시작될 때에는 사용자에게 로그인 페이지를 표시하지 않아야 합니다. 이러한 경우 허브에서 로그인을 처리할 수 있습니다.
필요한 경우에만 로그인하면 되는 경우에는 로그인 환경을 설정 창에 배치해야 합니다. 앱을 시작할 때 사용자가 로그인 환경을 찾을 수 있도록 설정 창을 열 수 있습니다.
어떠한 경우든 설정 내의 계정 관리 창에서도 로그인을 사용할 수 있어야 합니다.
계정 관리 및 로그아웃: 설정 창에서 사용자 메일 주소 업데이트 또는 암호 변경 등의 계정 관리 시나리오를 수행하세요. 마찬가지로 로그아웃 환경도 옵션과 함께 설정에서 호스트해야 합니다.
게임 일시 중지
모든 게임이 일시 중지를 지원할 필요는 없습니다. 예를 들어 여러 플레이어가 돌아가며 순서대로 하는 게임의 경우 보통 일시 중지라는 개념이 없습니다. 또한 타이머, 시계 등의 외부 요인 없이 전적으로 사용자가 구동하는 게임도 일시 중지할 필요가 없습니다. 이러한 경우 사용자가 게임 외부로 이동할 때도 게임을 일시 중지할 필요가 없습니다. 사용자가 게임으로 돌아왔을 때 게임 외부로 이동하기 이전과 같은 환경이 제공되어야 합니다. 이렇게 할 수 없는 경우(예: 멀티 플레이어 게임 세션이 종료됨) 사용자의 상태를 사용자에게 명확히 전달할 수 있어야 합니다.
의미 있는 일시 중지 시나리오가 없는 게임의 경우 사용자가 화면 왼쪽, 아래쪽 또는 오른쪽 가장자리에서 손가락을 살짝 밀거나 시스템 대화 상자가 표시될 때 초점이 해제되어 게임이 일시 중지되도록 등록하세요. 게임 속도가 빠르거나 시간 제한이 있는 경우 창 크기나 레이아웃이 변경되면 게임이 일시 중지되어야 합니다. 그러면 사용자가 게임 일시 중지를 해제하고 새로운 창 크기나 레이아웃(지원되는 경우) 내에서 게임을 할 수 있습니다. 그러나 초점 해제 여부로만 게임 일시 중지를 결정해서는 안 됩니다. 게임에 단추를 포함하여 사용자가 작업과 멀티태스킹을 일시 중지할 수 있도록 하는 것이 좋습니다. 이 항목의 게임 플레이 시의 조작 섹션에서 설명한 것과 동일한 명령 배치 고려 사항을 기준으로 일시 중지 명령의 위치를 결정하세요.
일시 중지된 상태 표시: 게임이 일시 중지 상태가 되면 사용자에게 해당 상태를 알립니다. 일시 중지 오버레이 또는 일시 중지 화면을 표시할 수 있습니다. 퍼즐, 전략 또는 시간 제한 게임의 경우 사용자가 일시 중지를 통해 게임판을 오랫동안 살펴보는 방법으로 불공정한 혜택을 받지 않도록 게임 캔버스를 흐리게 표시합니다.
일시 중지 해제도 일시 중지만큼 쉽게 수행할 수 있도록 하세요. 일시 중지 오버레이와 일시 중지 화면에는 모두 사용자가 일시 중지를 해제할 수 있는 기능을 포함해야 합니다. 또한 사용자가 허브 페이지로 이동할 때 게임이 일시 중지되도록 합니다. 사용자가 게임으로 돌아오거나 일시 중지를 해제하면 동일한 상태로 게임이 다시 시작되어야 합니다.
사용자가 게임의 일시 중지를 해제할 때 동작을 다시 시작하기 전에 잠시 적응할 시간을 주는 것을 고려해 보세요. 좋은 방법 중 하나는 카운트다운입니다.
시간 흐름 컨트롤을 제공하는 게임(예: 시티 빌더 게임)은 시간의 흐름을 "일시 중지"할 수 있지만, 이것은 게임을 일시 중지하는 것과 같지 않습니다. 일시 중지 상태에서는 애니메이션이 계속 재생되도록 일부 백그라운드 렌더링이 지속될 수 있지만, 사용자의 게임 조작은 완전히 멈추게 됩니다.
방향 및 창 크기 변경
사용자는 전체 화면에서 최소 너비까지 앱 크기를 조정하고, 장치나 화면을 세로 또는 가로 방향으로 회전하고, 여러 앱을 화면에 나란히 배치할 수 있습니다. 게임은 가변 창 크기와 방향을 지원해야 합니다. 플레이어의 환경이 매끄럽고 연속하도록 창 크기를 조정할 때 게임의 상태를 유지해야 합니다. 즉, 가로 보기에서 세로 보기로 이동할 때 사용자가 초기 화면으로 다시 이동해서는 안 되며 원래 있었던 페이지의 크기 조정된 버전을 표시해야 합니다.
게임에서 지원해야 하는 최소 너비는 500픽셀입니다. 그러나 최소 너비 320픽셀을 지원하여 사용자 참여를 증가시킬 수 있습니다. 게임은 선택한 최소 너비까지 플레이할 수 있어야 하며, 제공된 공간에 맞게 표시 내용을 조정해야 합니다.
게임에서 더 작은 너비로 적응할 수 있습니다. 게임의 특성이 선택하는 적응 방법을 결정하는 데 도움이 될 수 있습니다.
크기 조정 및 레터박스: 더 작은 너비에서 게임의 고정 가로 세로 비율과 레터박스를 유지합니다. 이 방법은 대체 창 크기에 맞게 동적으로 정렬할 수 없는 고정적인 콘텐츠가 있는 게임에 가장 효과적입니다. 콘텐츠에 검은색 레터박스를 설정하는 대신 게임의 일치하는 색 또는 패턴을 사용하는 것이 좋습니다. Cut the Rope는 다음 그림과 같이 이 메서드를 사용합니다.
이동, 자르기 및 확대/축소: 사용자가 이동되었거나 잘렸거나 확대/축소된 상태에서 게임의 특정 섹션을 플레이할 수 있도록 합니다. PuzzleTouch는 다음 그림과 같이 이 메서드를 사용합니다.
적응: 사용자가 다른 레이아웃에서 계속 플레이할 수 있도록 게임 콘텐츠의 레이아웃을 조정합니다. 여러 게임 화면이나 페이지를 보기에 통합하여 사용 가능한 창 너비를 가장 효율적으로 사용할 수 있습니다. 예를 들어 화면 맨 위에 게임 화면을 배치하고 그 아래에 순위표와 도전과제를 배치합니다. Microsoft 카드놀이는 다음 그림과 같이 이 메서드를 사용합니다.
포커스가 게임에서 화면에 있는 다른 앱으로 이동하는 경우 게임이 적절하게 조정되거나 일시 중지되어야 합니다.
좁은 너비에서 게임을 할 수 있도록 설정하면 멀티태스킹이 가능해지며 사용자가 시스템에서 다른 작업을 하면서 게임을 계속할 수 있으므로 보다 오랫동안 게임을 하도록 할 수 있습니다. 이 접근 방식은 화면 전체를 차지하지 않고도 사용자의 관심을 끌 수 있는 가벼운 캐주얼 게임에 매우 유용합니다. 예를 들어 사용자는 좁은 보기에서 퍼즐을 풀거나, 차례대로 하는 게임에서 영화를 재생하거나, 보드 게임을 즐길 수 있습니다. 게임을 하면서 친구와 채팅을 하거나 지도를 검색하는 등의 보조 활동도 함께 수행하는 경우 좁은 너비에서도 해당 활동에 포커스를 둘 수 있습니다.
다음 예제에서 Cannon Ball은 좁은 너비에서 플레이 가능합니다. 게임 요소가 좁은 너비에 맞게 누적, 재배치 및 크기 조정되며 페이지 크기가 조정되어 사용자가 해당 수준을 자세히 확인할 수 있습니다.
사용자가 창 크기를 좁은 너비로 조정할 경우의 터치 조작 방식을 고려하세요. 너비가 작을수록 사용자가 가장자리 동작을 실수로 호출하기가 쉬워집니다. 이와 같은 가장자리 살짝 밀기 실수를 방지하기 위해 컨트롤을 수정할 수 있는 방법을 고려하세요. 명령 배치도 고려해야 합니다. 앱이 좁은 경우 모든 명령을 사이드 뷰의 앱 바에 포함하지 못할 수도 있습니다. 이 경우에는 명령을 그룹화하거나 필요한 명령 수가 적은 더욱 집중된 환경을 제공하는 것이 좋습니다. 너무 좁아서 표시할 수 없는 경우 표준 앱 바 단추 레이블이 기본적으로 숨겨지므로 쉽게 식별할 수 있는 아이콘을 선택해야 합니다.
더 작은 크기에서 게임을 플레이할 수 없는 경우 또는 계속 진행하려면 추가 화면 공간이 필요한 상태에 도달한 경우, 게임이 일시 중지되고, 앱 크기를 더 큰 너비로 조정해야만 추가 동작이 가능하다고 설명해야 합니다. 게임을 일시 중지하거나 크기를 조정할 때 게임의 상태 또는 컨텍스트가 손실되지 않아야 합니다. 사용자가 앱 크기를 이전처럼 크게 조정할 때 게임을 매끄럽게 계속할 수 있어야 합니다. 창 크기에 대한 자세한 내용은 창 크기에 대한 지침 및 높고 좁은 레이아웃에 맞게 창 크기 조정에 대한 지침을 참조하세요.
각 화면 해상도 및 DPI 설정에서 게임 크기가 조정되는 방법을 반드시 고려해야 합니다. 일반적으로 게임을 확대 또는 축소하는 경우 게임 자산이 흐려지거나 비율이 맞지 않으므로 모양이 향상되지 않습니다. 따라서 게임의 크기를 직접 조정하는 대신 해상도에 따라 표시되는 내용을 조정하는 레이아웃을 사용하는 것이 좋습니다. 예를 들어 큰 화면에서는 단순히 보기를 확장하는 대신 더 많은 레벨을 표시하는 등 콘텐츠를 추가로 표시할 수 있습니다. 화면 크기 조정에 대한 자세한 내용은 화면 크기에 맞게 조정을 참조하세요.
상태 관리 및 저장
게임은 Windows 스토어 앱의 상태 모델을 따라야 합니다. 마지막 상태를 기억했다가 게임이 활성화되면 사용자를 해당 상태로 보내야 합니다.
의미 있는 일시 중지 모드가 없는 게임이 아닌 한, 일시 중단된 게임은 이미 일시 중지 상태여야 합니다. 앱에 일시 중지 모드가 없는 경우 게임에 다시 들어가면 사용자를 게임 환경으로 직접 돌려놓아야 합니다.
지속적인 멀티플레이어 게임에서 사용자가 참여했던 세션이 종료된 경우, 사용자에게 게임 후 화면을 보여 주거나 어떤 방법으로든 게임 세션이 끝났음을 알려야 합니다.
이러한 상태 관리 지침은 "검사점", "저장된 파일" 또는 게임 내 저장된 여러 게임의 개념과는 다르며, Windows 8.1의 프로세스 수명 주기에만 관련이 있습니다. 상태 관리에 대한 자세한 내용은 앱 일시 중단 및 다시 시작에 대한 지침을 참조하세요.
클라우드에 로밍
사용자가 게임을 중단한 위치에서 다시 시작할 수 있도록 게임 상태와 설정을 로밍하여 사용 중인 장치와 관계없이 모든 장치에서 지속적인 환경을 구축합니다. 로밍을 통해 설정 및 상태를 유지 관리하여 가정용 PC에서 회사 PC, 개인용 태블릿을 비롯한 어디에서든지 게임을 쉽게 사용할 수 있도록 합니다. 자세한 내용은 앱 데이터 로밍 지침을 참조하세요.
접근성
Windows 사용자 중에는 장애가 있는 사용자도 있을 수 있습니다. 장애가 있는 사용자도 플레이 가능하도록 게임을 다시 이미징할 수 있는 경우에는 이러한 사용자들을 고려하세요. 앱을 Windows 스토어에 전송할 때 접근성 있는 게임으로 표시하는 경우 장애가 있는 사용자가 접근성 있는 앱 검색 기능을 사용하여 게임을 찾을 수 있습니다. 앱에 접근성 원칙을 통합하면 보다 폭넓은 사용자가 게임을 사용할 수 있으며 앱의 고객층을 확대할 수 있습니다. Windows 스토어 앱의 경우 접근성 기능을 쉽게 포함할 수 있습니다(특히 디자인 프로세스의 초기에서 접근성 기능을 고려하는 경우). 접근성 기능을 추가하면 모든 사용자가 게임을 더욱 편리하게 플레이할 수 있습니다. 예를 들어 사용자의 손 위치에 따라 게임 컨트롤을 다시 매핑하거나 배치할 수 있도록 하면 오른손잡이 사용자와 왼손잡이 사용자가 모두 가장 편안한 자세로 게임을 할 수 있습니다.
접근성을 디자인할 때 고려해야 할 몇 가지 주요 시나리오는 다음과 같습니다.
시각 장애가 있는 사용자용 디자인: 시각 장애가 있거나 시력이 나쁜 사용자는 화면 읽기 프로그램을 통해 게임 UI를 파악할 수 있습니다. 화면 읽기 프로그램이 작동하려면 게임 내의 모든 UI 요소에 이름, 역할, 설명, 상태, 위치 및 기타 관련 정보를 사용하여 적절한 레이블을 지정해야 합니다. "화면에 있는 모든 항목을 더 크게 보기" 또는 고대비 모드와 같은 시스템 전체 접근성 옵션(접근성 설정)이 사용하도록 설정되어 있는 경우에는 UI의 모양을 반드시 고려해야 합니다. 사용자가 시스템 전체 고대비 모드를 사용하도록 설정하는 경우에는 고대비 모드용으로 대체 자산을 만들거나 코드를 더 추가하여 게임 표시를 조정할 수 있습니다. 색맹용 색 구성표를 사용해야 하며, 게임 내에서 색을 통해 정보를 전달하는 위치가 있는 경우에는 해당 정보를 텍스트, 도형, 아이콘 등의 다른 방식으로도 포함해야 합니다.
Cannon Ball은 고대비 모드에서 플레이할 수 있습니다. 고대비 모드를 설정하기 위해 개발자는 시스템이 고대비 모드로 설정되면 호출되는 대체 자산 집합을 작성했습니다.
키보드 접근성 및 대체 입력 디자인: 스위치 제어기, 시선 추적기 등의 대체 입력 메커니즘 사용자와 화면 읽기 프로그램 사용자의 경우 키보드가 반드시 필요합니다. 탭 및 화살표 키를 사용하여 모든 UI 요소를 탐색할 수 있는지 확인하세요. 스페이스바와 Enter 키를 사용하여 UI 요소를 활성화할 수 있어야 합니다. 바로 가기 키를 통해 명령 및 컨트롤에 액세스할 수 있어야 합니다. 키보드만 사용하여 게임을 하도록 하는 방법을 고려하세요. 예를 들어 Cannon Ball에서는 화살표 키를 사용하여 플랫폼을 돌릴 수 있으므로 키보드 입력만으로 게임을 할 수 있습니다.
청각 장애가 있는 사용자용 디자인: 게임에서 오디오 음성 안내 또는 음성을 사용하여 정보를 전달하는 경우에는 청각 장애가 있거나 듣는 데 어려움이 있는 사용자를 위한 자막을 제공해야 합니다. 또한 모든 오디오 요소에는 시각적 대체 항목이 있어야 하며, 소리를 사용하지 않고도 게임의 분위기와 의미를 전달할 수 있어야 합니다. 소리 효과와 대화 등의 여러 소리가 동시에 재생되는 경우에는 쉽게 이해할 수 있도록 각 소리에 대해 별도의 볼륨 컨트롤을 제공합니다.
인지 장애가 있는 사용자용 디자인: 가능한 경우 게임 플레이 난이도와 속도를 다양하게 제공해야 합니다. 학습 또는 인지 장애가 있는 사용자가 게임을 플레이할 수 있는 방법을 고려해보세요. 여기에는 읽기를 배우고 있는 사용자가 게임을 플레이할 수 있는지 여부 등이 포함됩니다. 가능한 경우 활동이 제한되거나 학습 장애가 있는 사용자를 위해 모래시계 또는 시간 제한이 없는 자유 모드를 제공합니다.
요약
게임은 사용자가 조작할 수 있는 다양한 리치 콘텐츠를 제공하며, Windows 8.1 게임은 사용자를 위해 이러한 콘텐츠를 중심에 배치하며 방해가 되는 불필요한 UI 요소를 제거합니다. 이 문서에서 설명한 지침과 원칙을 따르면 각 게임 구성 요소를 조정하여 최적의 게임 환경을 제공할 수 있습니다.