PowerPoint Presentationdownload.microsoft.com/download/3/9/E/39E03584-EB5A-44DC... ·...

Preview:

Citation preview

스타크래프트 2 구입을 위한 줄 서기

개발 편의성 게임 개발에 필요한 리소스를 제공

기존 대비 게임 개발에 필요한 유틸리티와 툴을 Visual Studio에 통합

DirectX 11.1로 통합된 API 환경

ARM 기반 기기에도 동일한 코드로 동작. 배포에 유리

OS 지원 실행 시 항상 풀스크린 모드로 동작 (기존과 달리 OS UI 간섭이 없음)

게임 개발에 필요한 설정, 소셜 기능 등을 쉽게 사용할 수 있도록 지원

API 최적화를 통해 기존 보다 빠르게 게임 구동가능

손쉬운 XBOX Live와 마켓 플레이스 통합

메트로라는 이름만 붙일 수 없을 뿐!

Cut Scenes

Your Game

Game Input Graphics

Audio

3-D Streaming Touch Activation Sound FX User ID

Connected Services

Local

Services

2-D, Text

Game Controllers

Sensors Music Distributio

n

Roaming UI

Controls

Effects Storage

Search & Settings …

Compilers

Debuggers

Asset Processors

Tools

Platform Architecture

Communication

& Data

Devices &

Printing

WinRT APIs

Graphics &

Media

Desktop apps

C

C++

Win32

C#

VB

.NET

SL

HTML JavaScript

Internet

Explorer

Metro style apps

Application Model

XAML

JavaScript

HTML / CSS

C

C++

C#

VB

Windows Kernel Services

Sys

tem

Serv

ices

Vie

w

Model

Cont

rolle

r K

ern

el

Devices

Sensors Geolocation Portable NFC

Communications & Data

Contracts

XML

Web

SMS Networking

Notifications

Local & Cloud Storage

Streams

Background

Transfer

User Interface

HTML5/CSS XAML DirectX Controls

Input Accessibility Printing

Data Binding

Tiles SVG

Fundamentals Application Services Authentication Cryptography Globalization Memory Management Threading/Timers

Media Visual

Effects Playback PlayTo Capture

Movies & Cut Scenes

Your Game

Game Input

Graphics

Audio

Direct3D DirectX Video

Pointer Point

PLM XAudio Windows

Live

Connected Services

Local

Services

Direct2D

XInput

SensorAPI WASAPI Windows

Store

XBox Live

Media Foundation

AppData

Contracts

Visual Studio

Asset Viewers

Asset Processors

Tools

Initialization 시스템 초기화 및 게임 데이터 로드

Main Loop: Poll input - 터치나 네트워크 입력 처리

Update state - AI, physics, collisions, animations, etc.

Render

Present

Update Audio

게임 루프 기반으로 접근하면 첫 단추를 풀기 쉽습니다!

Snapped Filled Full Screen Rotation

renderLoop

updateLoop

updateTimer

renderLoop

updateLoop

gamePage.enableAppBarGameButtons

updateTimer updateLoop

gamePage.renderLoop

Topic Description

Getting started with Metro style JavaScript game development

Jump right into Metro style JavaScript game development with this tutorial and downloadable template.

Working with graphics in your Metro style JavaScript Game

Get more details about the graphics and media technologies available to your Metro style JavaScript game, including the canvas.

Working with audio in your Metro style JavaScript game

Get more details about the audio technologies available to your Metro style JavaScript game.

Working with input and controls in your Metro style JavaScript game

Get more details about the input control and device technologies available to your Metro style JavaScript game.

Cut the rope & sample 구동

while (!m_windowClosed)

Update

Render

Present

Title Description

Marble Maze sample fundamentals Provides an overview of the game structure and some of the code and style guidelines that the source code follows.

Marble Maze application structure Describes how the Marble Maze application code is structured and how the structure of a DirectX Metro style app differs from that of a traditional desktop application.

Adding visual content to the Marble Maze sample

Describes some of the key practices to keep in mind when you work with Direct3D and Direct2D. Also describes how Marble Maze applies these practices for visual content.

Adding input and interactivity to the Marble Maze sample

Describes how Marble Maze works with accelerometer, touch, and Xbox 360 controller devices to enable users to navigate menus and interact with the game board. Also describes some of the best practices to keep in mind when you work with input.

Adding audio to the Marble Maze sample Describes how Marble Maze works with audio to add music and sound effects to the game.

Pinball Ex2

OnLaunched

m_game->Initialize

OnRendering

Update

m_game->Render()

Shooting Game Sample

Touch PointerPoint API : 터치, 마우스, 스타일러스 지원

Sensors Sensor APIs : Gyro, Accelerometer, and Compass

Sensor Fusion : orientation state computed from all three

Game Controllers XInput API : Xbox game controllers

XAudio2 빠른 속도로 저수준 사운드출력 처리 (효과음)

동시에 많은 수의 사운드를 믹싱할 수 있음

Media Foundation 배경음악을 가장 쉽게 재생할 수 있는 방법을 제공

Contract를 통해 Music Library에서 노래를 찾아 재생할 수 있음

Media Foundation Direct3D 11과 결합되어 빠른 속도로 비디오 재생 가능

다양한 미디오 포멧 지원

텍스쳐 등 다양한 형태로 활용 가능

시작 화면에 타일이 동적으로 변경

봤을 때 기분 좋을 만한 데이터를 보여줘야 함 플레이어의 레벨 정보

친구의 숫자, 랭킹 순위, 플레이 타임 등

XML로 정의

Level 7

테스트

게임

<tile>

<visual version=“1” lang=“en-US”>

<binding template=“TileWideText03”>

<text id=“1”>Level 7</text>

</binding>

</visual>

</tile>

최고 점수 달성, 친구 정보 등을 즉시 알려줌

백그라운드에서도 통지 받을 수 있음

너무 자주 받을 경우를 대비해 유저가 활성화 여부를 결정할 수 있게 해야 함

XML로 정의

다양한 템플릿 제공

<toast>

<visual lang=“en-US”>

<binding template=“ToastText04”>

<text id=“1”>Big Text</text>

<text id=“2”>Small Text 1</text>

<text id=“3”>Small Text 2</text>

</binding>

</visual>

</toast>

제스쳐를 통해 활성화

App bar가 뜨면 게임을 일시멈춤으로 하는 것이 좋음

OS Setting 메뉴와 동일한 UI (Charms Bar)

보통 메뉴가 뜨면 게임은 일시 멈춤상태로 설정하는 것이 좋음

특별한 UI가 필요 없음

게임 난이도, 입력 컨트롤 세팅 등에 사용

단! 그래픽 퀄리티 세팅이나 시스템 세팅을 변경하는 것은 메인 화면의 변화가 생기기 때문에 추천하지 않음

게임 내 내용을 공유할 때 사용

스크린샷, 업적 정보 등 다양한 정보 공유 가능

사용자 라이브러리나 다른 App에 전달 가능

Recommended