david pevreal dip app sc, bit. lead programmer on the merkury engine, krome studios. titles:...
TRANSCRIPT
• David PevrealDip App Sc, BIT.
• Lead Programmer on the Merkury Engine, Krome Studios.
• Titles:Stargunner, Sunny Garcia Surfing, The Adventures of Jimmy Neutron Boy Genius: Jet Fusion, King Arthur, TY the Tasmanian Tiger 1 & 2.
• Platforms:PC, Dreamcast, PS2, Xbox, Gamecube.
Who The Hell Am I?Who The Hell Am I?
Who The Hell Are You?Who The Hell Are You?
• PC Developers coming to console development
• Single console developers considering moving over to multi-sku
• Killing time until the next presentation
From PC To Console:Console Manufacturer Requirements
From PC To Console:Console Manufacturer Requirements
• Just because you think your game is finished, that doesn’t mean the manufacturer will allow it to ship
• Guidelines like language and terminology, user interface, and memory card access are the most common failures
• Each platform is different, and sometimes platform requirements conflict!
From PC To Console:Concatenate Files Into A Single Archive
From PC To Console:Concatenate Files Into A Single Archive
• You can’t dump hundreds or thousands of files into a directory like you can on a PC. There are file system limitations.
• How well you order the files inside the archive will have a big impact on your game’s load-speed performance
• There are load-time guidelines, so your game may not ship if it’s too slow to load!
From PC to Console:Differing Development Philosophies
From PC to Console:Differing Development Philosophies
• Hardware is consistent
• Audience is different
• Memory is limited
• Game design should have given thought to hardware limitations of consoles
• Inflexible ship dates: late games often have to wait for the next “window” for manufacturer testing. This costs money.
Console DifferencesConsole Differences
• Input devices – each platform has a different controller, different buttons
• Storage capacity, PS2/Xbox use DVD (up to 9GB), GameCube uses a 1.4GB proprietry disk
• Alignment and endianness
• TRC/TCR/LotCheck requirements differ
Casualties of MultiplatformismCasualties of Multiplatformism
• Memory management
– Needs to be same on all platforms
– PS2 has problems using its MMU
– Needed to use a lowest common denominator approach
• Textures
– Each platform has different display characteristics
– PS2 needs indexed textures
Commercial RealitiesCommercial Realities
• Making games costs a lot of money – on average between 5 and 7 million
• Some decisions are made based on making more money, not a better game
• PS2 will most often be the lead platform in a multi-platform game
Interface Design: A Little Thought Now or Cripple Your Next Platform
Interface Design: A Little Thought Now or Cripple Your Next Platform
• Layer between hardware and game needs to be finely balanced
• Too thin and you’ll have problems porting
• Too thick and you’ll have performance problems
• The trick is to package up effects in ways that each platform can achieve the same result, but in different ways
Interface Design: Common Denominators Are Bad
Interface Design: Common Denominators Are Bad
• Avoid the temptation to expose common denominators among your platforms
• Keep interfaces high-level enough that platforms can implement the effect in a variety of different ways
• Avoid exposing limitations in interfaces if you can, instead try to hide the limitation artificially (if possible)
Asset PipelineAsset Pipeline
• Time spent perfecting the asset pipeline is an investment
• Ensure your intermediate asset format doesn’t lose or change information
• From the intermediate format transform into a highly optimised and lightweight format specifically designed for each platform
ConclusionConclusion
• Even if you’re coding an engine for one platform, keep an open mind now so that you can port later on
• Keep engine interfaces high level
• Study the TRC/TCR/LotCheck documents
• Spend time refining the asset pipeline
QuestionsQuestions