Jan 18, 2018
“WALK IN” SLIDE
August 14-15 2006
Developing Games for Developing Games for Windows and Xbox Windows and Xbox 360: Stories from the 360: Stories from the TrenchesTrenchesJoe WatersJoe WatersSoftware Development EngineerSoftware Development EngineerFASA Studio /FASA Studio /Microsoft Game StudiosMicrosoft Game Studios
Presentation/Presenter Title Slide
August 14-15 2006
Stories from the TrenchesStories from the TrenchesPanel ParticipantsPanel Participants
Tony Cox – Microsoft Game StudiosTony Cox – Microsoft Game StudiosRod Lopez – Ubisoft MontrealRod Lopez – Ubisoft MontrealJohn O’Rorke – Monolith ProductionsJohn O’Rorke – Monolith ProductionsMichael Saladino – EA Los AngelesMichael Saladino – EA Los Angeles
Standard Slide with subtitle
August 14-15 2006
Stories from the TrenchesStories from the TrenchesTopics at a GlanceTopics at a Glance
Multi-core architectures: Xbox 360 vs. PCMulti-core architectures: Xbox 360 vs. PCAbstraction: How much is too much?Abstraction: How much is too much?Memory managementMemory managementC++: STL, virtual functions, exceptionsC++: STL, virtual functions, exceptionsContent creation and native formatsContent creation and native formatsSource/asset control for team Source/asset control for team productivityproductivityThe Future™The Future™Highlights and vagaries of the displayHighlights and vagaries of the display
Standard Slide without subtitle
August 14-15 2006
Stories from the TrenchesStories from the TrenchesMulti-core architectures: Multi-core architectures: Xbox 360 vs. PCXbox 360 vs. PC
The range extends from multi-core multi-The range extends from multi-core multi-threaded console CPUs down to single-threaded console CPUs down to single-core PC variants. What thread core PC variants. What thread architectures have been successful in architectures have been successful in shipped games so far, and where do we shipped games so far, and where do we go in the future?go in the future?
Standard Slide without subtitle
August 14-15 2006
Stories from the TrenchesStories from the TrenchesAbstraction: How much is too Abstraction: How much is too much?much?Developing portable code requires some Developing portable code requires some
level of abstraction. Too much (or too level of abstraction. Too much (or too little) abstraction can kill performance or little) abstraction can kill performance or make maintenance a nightmare. Where make maintenance a nightmare. Where do you draw the line for abstracting do you draw the line for abstracting systems (rendering, memory systems (rendering, memory management, etc)? Individual management, etc)? Individual functions? Classes? Whole libraries?functions? Classes? Whole libraries?
Standard Slide without subtitle
August 14-15 2006
Stories from the TrenchesStories from the TrenchesMemory ManagementMemory Management
There are established methods for There are established methods for managing memory in console games to managing memory in console games to combat both fragmentation and combat both fragmentation and allocation waste. What techniques have allocation waste. What techniques have you used, and did any generate you used, and did any generate unexpected side-effects while moving unexpected side-effects while moving between platforms?between platforms?
Standard Slide without subtitle
August 14-15 2006
Stories from the TrenchesStories from the TrenchesC++: STL, virtual functions, C++: STL, virtual functions, exceptionsexceptionsC++ is almost ubiquitous in PC games C++ is almost ubiquitous in PC games
and fairly common in console titles. and fairly common in console titles. Between STL, exception handling, virtual Between STL, exception handling, virtual functions, and behind-the-scenes functions, and behind-the-scenes memory management, what are the pros memory management, what are the pros and cons of various features in a multi-and cons of various features in a multi-platform environment?platform environment?
Standard Slide without subtitle
August 14-15 2006
Stories from the TrenchesStories from the TrenchesContent creation and native Content creation and native formatsformatsContent creators need the ability to Content creators need the ability to
rapidly iterate and test their changes in rapidly iterate and test their changes in the runtime environment. However, the runtime environment. However, between PCs and consoles with massive between PCs and consoles with massive next-gen art size requirements, content next-gen art size requirements, content generally needs to be preprocessed generally needs to be preprocessed offline into native formats. How do we offline into native formats. How do we reconcile rapid iteration against speed reconcile rapid iteration against speed and stability of native formats?and stability of native formats?
Standard Slide without subtitle
August 14-15 2006
Stories from the TrenchesStories from the TrenchesSource/asset control for team Source/asset control for team productivityproductivity
With content sizes blooming and assets With content sizes blooming and assets becoming more interdependent, it’s becoming more interdependent, it’s harder than ever to achieve a balance harder than ever to achieve a balance between build stability for line content between build stability for line content creators and rapid build iteration for creators and rapid build iteration for designers and engineers. How often can designers and engineers. How often can we generate “blessed” builds without we generate “blessed” builds without impacting stability or iteration impacting stability or iteration productivity?productivity?
Standard Slide without subtitle
August 14-15 2006
Stories from the TrenchesStories from the TrenchesThe Future™The Future™
Have we reached the point where the Have we reached the point where the only differentiator between good and only differentiator between good and bad games is gameplay? If not, what bad games is gameplay? If not, what technology advances or changes to technology advances or changes to existing hardware would have the existing hardware would have the largest impact on our ability to produce largest impact on our ability to produce quality games?quality games?
Standard Slide without subtitle
August 14-15 2006
Stories from the TrenchesStories from the TrenchesHighlights and vagaries of the Highlights and vagaries of the displaydisplayBetween NTSC, PAL, VGA monitors, and Between NTSC, PAL, VGA monitors, and
HD televisions, black level, gamma, and HD televisions, black level, gamma, and color response is a mess. What color color response is a mess. What color correction methods have worked well in correction methods have worked well in the past, and what are plans for the the past, and what are plans for the future?future?
Standard Slide without subtitle
August 14-15 2006
Stories from the TrenchesStories from the TrenchesCirculus VelocitusCirculus Velocitus( Speed Round! )( Speed Round! )
Color Guidelines
August 14-15 2006
Stories from the TrenchesStories from the TrenchesQuestions?Questions?
August 14-15 2006
Stories from the TrenchesStories from the TrenchesEverybody go to the party. All the cool Everybody go to the party. All the cool
kids will be there.kids will be there.
© 2006 © 2006 MicrosoftMicrosoft Corporation. All rights reserved. Corporation. All rights reserved.This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.
DirectX Developer CenterDirectX Developer Centerhttp://msdn.microsoft.com/directxhttp://msdn.microsoft.com/directx
Game Development MSDN ForumsGame Development MSDN Forumshttp://forums.microsoft.com/msdnhttp://forums.microsoft.com/msdn
Xbox 360 CentralXbox 360 Centralhttp://xds.xbox.com/http://xds.xbox.com/
XNA WebsiteXNA Websitehttp://www.microsoft.com/xnahttp://www.microsoft.com/xna
August 14-15 2006