Introduction to XNA Studio - PowerPoint PPT Presentation

About This Presentation
Title:

Introduction to XNA Studio

Description:

XNA enables studios and publishers to develop better games, more effectively, on ... The asset wrangler puts things in the right places. ... – PowerPoint PPT presentation

Number of Views:218
Avg rating:3.0/5.0
Slides: 35
Provided by: eone7
Category:

less

Transcript and Presenter's Notes

Title: Introduction to XNA Studio


1
Introduction to XNA Studio
  • Presentation by Joe Nalewabau
  • Program Manager Architect,
  • XNA Dev team
  • Given today by Jeff Pobst,
  • Lead Tech Game Manager
  • Xbox Advanced Technology Group

2
XNA Team Mission Statement
XNA enables studios and publishers to develop
better games, more effectively, on all platforms
All platforms All platforms ? When you hear
Microsoft Platforms we mean Windows (current
/ future), Xbox (current / next-gen), and
Mobile devices (PDAs, smartphones)
3
XNA Background and Research talking with Game
Developers
4
XNA Roadmap
  • Beta at US GDC - March
  • Release in Summer 06
  • Showed progress on booked XNA components
  • Talked more with Game Developers
  • Focus on supporting entire game studios
  • Announced XNA Studio
  • XNA announcement
  • DirectX SDK and XDK tools convergence
  • Direct X, HLSL
  • XACT, PIX
  • Common Controller
  • Live on Windows
  • Windows and Xbox teams working on these components

5
Game Technology Map
6
XNA Pillars
Design/Content Creation
Game Technology
Process
7
XNA Pillar Assessment Core Problems
Each group has their own major issues that exist
across groups of products
Design Content Creation Instant Preview Changes to content tools or game engine can break production Content build is game specific and often not reliable Workflow between content creators is ad-hoc
Process Process tools built for programmers with little integration Code and content build systems are different Lack of industry wide testing tools
Game Technology Lack of standard scripting languages and tool sets Non-game UI takes considerable development time
Not just technology issues integration and
standards issues!
8
Other Findings Studio staffing grows towards
content
One example
Dev Studio
Publisher Total
12
52
1 2
39 34
40
Internal Outsourced Art Studio
Programmers 16 18
Content Creators 37 30 74
Producers 2 2
Test 5 6
Total 60 30
130 people at dev house, outsourced group, and
publisher on game
9
XNA BuildAddressing Content Management and
Workflow Efficiency
10
Content build comments
11
Todays content build systems
Todays Content Build
Solution Tenets
  • Game specific, homegrown solutions
  • Studios should be able to leverage existing
    solutions

Advanced build (distributed)
Basic build infrastructure (logging etc)
  • Game specific, homegrown solutions
  • Studios shouldnt have to worry about this
  • Need good tools for creating and maintaining
    build scripts
  • Game specific tools limit investment in
    supporting tools

Game specific build tools
  • Perl scripts
  • Batch files, nmake
  • Core technology needs to be robust
  • Profiling and debuging a must

Core build technology
12
Game content relationships
Game Tools
  • Huge quantities of content being created with
    complex relationships
  • Most tools store content relationships in tool
    specific ways
  • Content storage, production and build tools have
    limited knowledge of relationships
  • Custom knowledge of relationships is required to
    become more efficient
  • Limited time/incentive means no common system is
    evolving

Game Content
13
We Believe
  • Content relationships are key
  • Everyone wants standard ways to describe and
    query content relationships
  • But,
  • We cant replace existing relationship
    information
  • Must be useful without complete knowledge
  • Acknowledge that not all content is equal

14
XNA Build and content relationships
  1. Establish common relationship store
  • Add content build relationships
  • Record content relationships as seen by build
    tools
  • Add production content relationships
  • Simple API used to record relationships
  • Does NOT replacing existing relationships
  • Working with DCC vendors for output
  • Studios decide how to use this for their tools
  • Query engine for relationships
  • Make content relationships available

15
XNA Content Build
Todays Content Build
XNA Content Build
  • Game specific, homegrown solutions

Advanced build (distributed)
Basic build infrastructure (logging etc)
  • Game specific, homegrown solutions

Game specific build tools
  • Perl scripts
  • Batch files, nmake

Core build technology
16
Building MechCommander2 using XNA Build
  • Create build file using existing tools and
    processes
  • Execute build file to not only build game, but
    record the file read and write dependencies
  • Future builds identify changed files and only
    build dependant targets
  • Analyze data to find dependencies and also

unused files
17
Create New Build File for XNA Build Process
ltProject DefaultTargets"ProcessModelsProcessSoun
dsMakeFastFiles" xmlns"http//schemas.
microsoft.com/developer/msbuild/2003"gt
ltUsingTask TaskName"XnaExecTask"
AssemblyFile"C\WINDOWS\Microsoft.NET\Framework\v
2.0.50727\Microsoft.Xna.XNAExecTask.dll"/gt
ltUsingTask TaskName"ASEConvTask"
AssemblyFile".\utils\tasks\bin\MechCommander2Task
s.dll"/gt ltUsingTask TaskName"XPListTask"
AssemblyFile".\utils\tasks\bin\MechCommander2Task
s.dll"/gt ltUsingTask TaskName"XPFileTask"
AssemblyFile".\utils\tasks\bin\MechCommander2Task
s.dll"/gt ltPropertyGroupgt
ltBuildDirectorygt.\build\lt/BuildDirectorygt
ltDependDirectorygt(BuildDirectory)\depends\lt/Depen
dDirectorygt ltToolsDirectorygt.\tools\lt/ToolsDir
ectorygt ltContentDirectorygt.\content\lt/ContentD
irectorygt ltDataDirectorygt.\content\data\lt/Data
Directorygt ltSoundDirectorygt.\content\sound\lt/S
oundDirectorygt ltRSPDirectorygt.\content\respons
efiles\lt/RSPDirectorygt ltFastFileDirectorygt.\co
ntent\fastfiles\lt/FastFileDirectorygt
lt/PropertyGroupgt ltItemGroupgt ltArtFastFiles
Include"(ArtDirectory)\.tga"/gt
ltArtFastFiles Include"(ArtDirectory)\.fit"/gt
ltArtFastFiles Include"(ArtDirectory)\.csv"/gt
ltArtFastFiles Include"(ArtDirectory)\.exe"/
gt
18
Execute XNA Build
  • New Build file has target tags tying building
    to resources created
  • Run new build file to build product using same
    tools as always
  • In addition to building game, relationship store
    is populated
  • All file reads
  • All file writes
  • File reads and writes per target created
  • Information about the creation and update of each
    target stored

19
Raw Log Output of Build Steps
Currently support, XML, HTML, RSS outputs
  • lt?xml version"1.0" encoding"utf-16"?gt
  • ltFileTracker xmlnsFileTracker"http//tempuri.org
    /XMLSchema.xsd"gt
  • ltTool Path"c\xna\mc2\tools\xpfile.exe"
    DateAdded"10/22/2005 004120"
    DateUpdated"05/18/2005 194800" Version"0"
    Ignore"0" CommandLine"c\xna\mc2\tools\xpfile.ex
    e -r .\content\responsefiles\\misc.rsp
    .\content\fastfiles\\misc.fst -z 20480000"gt
  • ltRoots Files"C\XNA\MC2\CONTENT\RESPONSEFILES
    \MISC.RSP"gt
  • ltRoot Path"C\XNA\MC2\CONTENT\RESPONSEFILES
    \MISC.RSP" DateAdded"11/21/2005 212515"
    DateUpdated"11/21/2005 212515" Version"0"
    Ignore"0" gt
  • ltDependency Path"C\XNA\MC2\CONTENT\DATA\
    EFFECTS\MC2.FX" DateAdded"10/22/2005 004559"
    DateUpdated"05/06/2005 210100" Version"0"
    Ignore"0" /gt
  • ltDependency Path"C\XNA\MC2\CONTENT\DATA\
    OBJECTS\2CIVLIVING.FIT" DateAdded"10/22/2005
    004517" DateUpdated"05/06/2005 210200"
    Version"0" Ignore"0" /gt
  • ltDependency Path"C\XNA\MC2\CONTENT\DATA\
    OBJECTS\2STORYCIVLIVING.FIT" DateAdded"10/22/2005
    004517" DateUpdated"05/06/2005 210200"
    Version"0" Ignore"0" /gt
  • ltDependency Path"C\XNA\MC2\CONTENT\DATA\
    OBJECTS\AC.FIT" DateAdded"10/22/2005 004517"
    DateUpdated"05/06/2005 210200" Version"0"
    Ignore"0" /gt

20
Generated Build Execution Report
  • Build Report
  • Summary
  • Projectc\xna\mc2\mc2.xbs
  • Total build time 0 hours 7 min 22.262s
  • ProcessModels 392.01s
  • ProcessSounds 38.41s
  • MakeArtFastFile 95.84s
  • MakeMissionFastFile 47.93s
  • MakeMiscFastFile 12.48s
  • MakeTGLFastFile 161.81s
  • MakeTextureFastFile 135.75s
  • MakeFastFiles 0.00s
  • 0 Error(s)
  • 0 Warning(s)

21
Sample Read Analysis
.csv file output as well as HTML, XML, and RSS
load into Excel and Pivot table to your hearts
content!
Count of File Read  
Root File Total
C\XNA\MC2\CONTENT\RESPONSEFILES\TGL.RSP 2328
C\XNA\MC2\CONTENT\RESPONSEFILES\TEXTURES.RSP 1371
C\XNA\MC2\CONTENT\RESPONSEFILES\MISSION.RSP 1345
C\XNA\MC2\CONTENT\RESPONSEFILES\MISC.RSP 1241
C\XNA\MC2\CONTENT\RESPONSEFILES\ART.RSP 664
C\XNA\MC2\CONTENT\SOUND\BETTY\BETTY.RSP 55
C\XNA\MC2\CONTENT\SOUND\PILOTS\PILOT1.RSP 43
C\XNA\MC2\CONTENT\SOUND\PILOTS\PILOT10.RSP 43
C\XNA\MC2\CONTENT\SOUND\PILOTS\PILOT11.RSP 43
C\XNA\MC2\CONTENT\SOUND\PILOTS\PILOT13.RSP 43
C\XNA\MC2\CONTENT\SOUND\PILOTS\PILOT15.RSP 43
C\XNA\MC2\CONTENT\SOUND\PILOTS\PILOT17.RSP 43
C\XNA\MC2\CONTENT\SOUND\PILOTS\PILOT19.RSP 43
C\XNA\MC2\CONTENT\SOUND\PILOTS\PILOT20.RSP 43
22
Sample Write Analysis
File Written Total
C\XNA\MC2\CONTENT\DATA\TGL\2CIVLIVING.TGL 1
C\XNA\MC2\CONTENT\DATA\TGL\2CIVLIVINGDAM.TGL 1
C\XNA\MC2\CONTENT\DATA\TGL\2CIVLIVINGDAMX.TGL 1
C\XNA\MC2\CONTENT\DATA\TGL\2CIVLIVINGENC.TGL 1
C\XNA\MC2\CONTENT\DATA\TGL\2CIVLIVINGL1.TGL 1
C\XNA\MC2\CONTENT\DATA\TGL\2CIVLIVINGX.TGL 1
C\XNA\MC2\CONTENT\DATA\TGL\2STORYCIVLIVING.TGL 1
C\XNA\MC2\CONTENT\DATA\TGL\2STORYCIVLIVINGDAM.TGL 1
C\XNA\MC2\CONTENT\DATA\TGL\2STORYCIVLIVINGDAMX.TGL 1
C\XNA\MC2\CONTENT\DATA\TGL\2STORYCIVLIVINGENC.TGL 1
C\XNA\MC2\CONTENT\DATA\TGL\2STORYCIVLIVINGL1.TGL 1
C\XNA\MC2\CONTENT\DATA\TGL\2STORYCIVLIVINGX.TGL 1
C\XNA\MC2\CONTENT\DATA\TGL\AEROSPOTTER.TGL 1
C\XNA\MC2\CONTENT\DATA\TGL\AEROSPOTTERDAM.TGL 1
C\XNA\MC2\CONTENT\DATA\TGL\AEROSPOTTERL1.TGL 1
23
MechCommander 2XNA Build observations
  • Build times were dramatically reduced as new tool
    understood dependencies better than previous
    homebrew system
  • Added benefits
  • Data is now pivotable!
  • Build dependencies easily surfaced
  • Additional relationship information revealed
  • 40 of shipped textures were not used in game

Build Type No content changed One asset changed
Original Build System 132 seconds 134 seconds
With XNA Build 6 seconds 33 seconds
Performance Gain 22x faster 4x faster
24
Work Remains until Beta Release
  • GUI front-end for tools
  • Additional optimizations
  • Additional reporting options and analysis
  • Beta at US GDC - March
  • Release in Summer 06

25
XNA StudioAddressing Process and day-to-day
operations
26
Content build comments
27
Visual Studio 2005 Team System
  • VS 2005 new role based products
  • Modeling for Architects
  • Web testing tools for QA
  • Code Profiling for Devs
  • All built on Team Foundation Server
  • 4 key elements to TFS

28
Visual Studio 2005 Work Items
  • Similar to typical bugs in structure
  • Both information and workflow in task
  • MSs internal bug system productized
  • Supports multiple task/bug types and allows for
    custom types
  • Programmer can see work items in Visual Studio

29
Visual Studio 2005 Source Control
  • Source Control based on SQL Server 2005
  • ROBUST!
  • Scalable!
  • Supports integrating work item or bug completion
    with check-in
  • Also supports custom processes check-in tests,
    etc.
  • Can be accessed through web services or.NET APIs
    for further integration with other systems

30
Visual Studio 2005 Build Automation
  • VS 2005 ships will full support for build server
    integration
  • Automated builds can tie in to workflow and asset
    management
  • Data Analysis on builds, check-ins, etc. can be
    automatically available to project managers on
    regular basis

31
Visual Studio 2005 Project Management
  • SQL database of all assets, work items, check-in
    data, etc. opens up new possibilities
  • Two way synchronization with Excel and Project
    files on planned and actuals
  • Web access to data, design the information output
    that you care about

32
XNA Studio Expanding these tools further to
include Content Creators and Producers
33
Summary
  • XNAs mission is to solve problems that allow you
    (the game creator) to spend more of your time on
    the entertainment part of your product!
  • XNA Build and XNA Studio / Visual Studio 2005 are
    first steps in providing solutions for digital
    content creators, producers, and game programmers
  • Beta due out in March 2006!

34
(No Transcript)
Write a Comment
User Comments (0)
About PowerShow.com