1. How to develop and
localize Xbox 360 Titles
강상진 (sjkang@microsoft.com)
XBOX Program Manager
한국마이크로소프트 소프트웨어 연구소
2. Agenda
Xbox Title DEV Team
Xbox Software Architecture Overview
XTL(Xbox Title Library)
XDK(Xbox Development Kit)
Creating an Xbox Project
What is Localization?
Q&A
3. Microsoft
Xbox Title DEV Team
Producer/Program Manager
Programmers
Artists
Designers
Sound Designers/Composers
Testers
Writers
Marketing
4. Microsoft
Producer/Program Manager
Hub of communication
Specifications
Team meetings
Resolving design conflicts
Communication to management
Responsible for budget
In many companies responsible for hiring team.
Usually one main producer with associate or executive
producer
5. Microsoft
Programmers
Lead programmer – acts as architect of the game, managers other
developers, sets up build processes etc.
Graphics programmers – Rendering engine. Usually at least 2.
AI programmers – artificial intelligence. Used to be smaller team. Now is
increasing to 2-3.
Network programmer – at least one.
UI programmer - usually 1 newer programmer or is scripted.
Audio programmer – almost always combined with another function.
Tools programmers – depends on what tools the team is using. Usually
most of the team is dedicated to tools at one point in the process. Focus
is typically art/level design tool work.
Some studios will use middleware for engine reducing this work.
Some studios will have an internal shared tools team.
9. Microsoft
Artists (cont.)
Modelers
All 3D modeling – depending on game can be anywhere from 2-5
Animators
Responsible for all animations
Anywhere from 2-3
2D artists – not as common as they once were
UI/setup UI, splash screen, manuals
Sometimes these artists will do some script or mock up for UI functionality.
Typically one or two of these on a project
Texture artists
All texturing in game. Up to 2 people in this role
Terrain artists. They typically both model and texture. For outdoor games like
Crimson or Mech terrain resources creation can represent a large percentage of
overall art staff duties
Effects artist
Responsible for all particle effects/explosions etc.
Usually a shared role between teams or combined with another role
Cinema/cut scenes/photographs
10. Microsoft
Designers
Lead Designer
Owns overall vision of the game.
Works with team to incorporate best ideas
The more technical the better the designer
Level designers
Responsible for individual levels or areas in the game.
Depending on abilities and toolset, handle layout as well as
scripting of levels. Sometimes programmer handles scripting
Can be 2-6 depending on game
Multiplayer designer
Teams will sometimes have designer just dedicated to this area
given its importance, balance issues etc.
11. Microsoft
Sound Designers/Composers
Sound designers
Responsible for designing the audio for the
game.
Utilize many sound libraries and create from
scratch.
Composers
Design the music track for the game.
Not on every project. Particularly important
for period games.
12. Microsoft
Testers
Game testers
Testers focused on the game play
Core team members
Usability testing
Focuses on ease of use in particular UI
Often a shared team. Use one to lead with external people testing
Gameplay balancing/playtesting
External to the team. Gives feedback on balance of game and first user
experience
Both internal testers and external
Often a shared team
Beta program
All external testers
Usually most important in PC games where you have many configurations
Configuration testing
Shared team with hardware lab. More common with PC
13. Microsoft
Writers
Story writers
Can take an overall story idea and make it cohesive and ensure
it fits into the universe (ala MechWarrior)
Usually a shared service or contracted team
Script writers
Script the dialogue of the game.
Example: Crimson Skies set in 30’s. Needed dialogue consistent
with the time
Usually a shared service or contracted team
Manual writers
More common in PC where manuals can be large
Usually a shared service. Sometimes this is done by the
designers
14. Microsoft
Marketing
Responsible for developing the
messaging, box, advertisements, pricing,
promotions.
Usually a shared service. In small
development shops this role is mainly
interfacing with Publisher marketing.
15. Microsoft
Scheduling
Milestones – 1- 12 – each adds more
functionality
Content Complete
Code Complete (should be 3 months
prior to ship) – time to spend those
advertising dollars
16. Typical Milestones
Alpha
Precert
100% hand off to localization
ZBR – 4-6 weeks before ship
RC0 – 4 weeks before ship
RC1 – 2 weeks before ship
RTX – Release to Xbox/Publisher (Cert
#2)
RTM
Shelf – 3-6 weeks after RTM
18. What typically goes wrong in
game development
We needed more resources
We needed a better schedule
The specs were inadequate
Marketing didn’t know what it wanted
We should communicate better
Your group doesn’t understand
My group isn’t valued
Didn’t build tools soon enough
Group conflict
Poor performers
19. Microsoft
Xbox S/W
Architecture Overview
Design goal: Helping developers create
awesome games.
System software is not Windows. It’s not
designed to be a platform.
System software be small, fast, close to
the hardware, and predictable.
21. Microsoft
XTL (Xbox Title Library)
A collection of static libraries containing
functions that game titles link to and call.
A highly optimized version of DirectX
written specifically for the Xbox.
Music and sound libraries.
Networking.
System link play and the Xbox Live.
22. Microsoft
XTL (Xbox Title Library) - cont.
Peripherals
Thin layer for interfacing with Xbox peripherals such as
controllers, memory units, and voice units.
Storage
Save games, Save Game Signing, Soundtracks, and Nicknames.
CRT
Microsoft C Run-time libraries.
Display and Other Drivers
The bulk of the display driver for the GPU is contained in the
XTL.
Kernel contains minimum amount of display driver code.
23. Microsoft
Dashboard
Can be thought of as another game title.
Allowing interaction with the Xbox when
no game disc is inserted.
Provides a DVD movie player with
standard movie viewing features and
controls.
User can manage the storage space.
Online Dash : Xbox Live
24. Microsoft
PC to Xbox
No mouse and PC Keyboard
Except Xbox input devices like controller
TV output
Low resolution, Safe Area
Certification
Pre Cert and Final Cert
Registration and download latest XDK
https://xds.xbox.com
For more information
http://www.xbox.com/dev
25. Microsoft
XDK
The Xbox Development Kit (XDK) for
Microsoft® Visual Studio® .NET
provides many new features that make
development easier and faster for the
Xbox™ video game system from
Microsoft.
28. Microsoft
Direct3D Support
Support added to tool-tips and watch window for Direct3D
variable expansion,
View render states and texture states, e.g. @D3DRS_ZBIAS
29. Microsoft
Pipeline, Developer’s View
XboxPC
Deep
Exploration
Art Browser and
Translator
.xdx Resource
Compiler
xbrc
Compiled
Resources
.xbr
Preview
Client
xbview
Content Tool
(Maya, Max,
Softimage, Lightwave,
etc.)
Deep Exploration outputs XDX file
XDX file is checked into source tree, with source
textures (and source models, if desired)
Compile from XDX to Xbox resources
XDX is import format, too
31. Microsoft
Art Translation
MAX, Maya, Lightwave, SoftImage
SDK allows for creation of other converters
Techniques common to multiple 3D packages and
often supported by translators
Simple animation
Meshes
Textures
Standard materials
Custom materials
Bi-directional
XDX native Xbox format can be output to graphic tools
32. Game = Art, Cultural Content
Localization = Globalization + Translation
Local market에 맞는 Local content로
둔갑시키는 작업
SMART한 Global code design은 최소한의
개발자의 노력으로 세계 각국의 언어로 짧은
시갂내에 발표 가능하게 하는 원동력
What is Localization?
33. WW Sim-Launch with High quality
Titles
Target 지역, 문화적 특성, 게이머 성향을 고려한 디자인
International/Localization을 고려한 코드 디자인
한국의 경우, Xbox 360 타이틀은 적어도 “자막 한글화” 이상의
버젂을 출시할 수 있도록 노력
여러 특화된 팀이 각 지역에서 유기적으로 연계해서 작업
Scenario Editor, Game Design Engineer, Art Engineer, Audio/Sound
Engineer
Program Manager, Developing Engineer, Testing Engineer,
Localization Engineer
Licensing Specialist, Legal Specialist
Globalization Support Engineer
Geopolitical Intelligence Specialist
Localization Strategy
34. Requirements
- 사용자 요구사항/시나리오
체크
- Feature list 결정
Design
- 기능적인 측면
- 로컬리제이션 측면
- 테스팅 측면
Implementation
- 코딩
- 테스팅
- 매뉴얼/도움말
- 로컬라이징
Verification
- 모든 작업 완료
- 전반적인 최종 품질 검사
Release
- 보안검사
- 라이선스 검사
- GeOPS
Development Cycle
35. Localization System
소스 관리 시스템
버그 추적 시스템
Multiple Language 빌드 개발 시스템
UI 번역/관리 시스템
Postmortem Scorecard 시스템
Network infra
코드의 라이브러리화 !
리소스의 데이터베이스화 !
36. Techincal Requirements
Unicode 기반
게임 실행 코드와 리소스 파일의 철저한
분리
Multilingual 지원
언어별로 구분된 리소스 파일 – UI
텍스트, 오디오/비디오, 그래픽 이미지
Language specific setting 파일 –
Default 게임 언어, 정렬 값 등
37. Techincal Requirements
Word wrap
EA character: Character-base break
Alpha/Numeric character: Space-
base break
Hotkey
각 나라의 등급 시스템 요구 조건 고려
예) 일본의 경우, 4 손가락의 캐릭터는
허용되지 않음
World-wide 라이선스
38. Techincal Requirements
UI layout은 긴 문장의 경우 30%의 버퍼를,
짧은 단어의 경우 200% 정도의 버퍼를
가지고 디자인
UI 각각의 스트링은 중복해서 여러 굮데
사용하지 말 것
UI 텍스트
변수값의 순서는 변동이 가능하게
디자인
조사 처리 (한국어)
39. Techincal Requirements
폰트
기준 폰트 크기: 12px (9pt) – PC 타이틀
폰트 – 3가지 set 이상 존재
Alpha/Numeric/Latin , East-European,
Asian
폰트 속성, 크기, 위치 및 줄갂격을 조정할
수 있도록 코드 디자인
40. Technical Requirements
UI 리소스 파일은 20~30개 정도가
관리하기에 수월
Localization이 필요한 Art 파일은 30개
미맊으로 구성
리소스 파일의 기본 구조: Identifier =
string
A/V
립싱크 자동 보정
보이스 오디오 길이에 대한 유연성
자막