powerpoint presentationdownload.microsoft.com/download/3/9/e/39e03584-eb5a-44dc... ·...
TRANSCRIPT
스타크래프트 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에 전달 가능
http://channel9.msdn.com/Events/BUILD/BUILD2011/PLAT-750T
http://channel9.msdn.com/Events/BUILD/BUILD2011/TOOL-761T
http://channel9.msdn.com/Events/BUILD/BUILD2011/PLAT-754T
http://channel9.msdn.com/Events/BUILD/BUILD2011/PLAT-755T
http://channel9.msdn.com/Events/BUILD/BUILD2011/PLAT-756T