410 likes | 586 Views
Talking About Games. Brain Dump Jason Schreiber Powerhead Games. Introduction. I’ve been asked to speak about Game Boy Advance development, as well as share some insights into the game industry Who am I, and why should you care?. Jason Schreiber.
E N D
Talking About Games Brain Dump Jason Schreiber Powerhead Games
Introduction • I’ve been asked to speak about Game Boy Advance development, as well as share some insights into the game industry • Who am I, and why should you care?
Jason Schreiber • Employed for over a decade in the game industry • Did my time “in the mines” working for New York based publishers:Simon & Schuster(Star Trek and Tax Software)Hi-Tech(Beethoven and Street Fighter 2)Acclaim(MoCap and blue screen experience)GTIS(Unreal, Wheel Of Time, Unreal Tournament)
Powerhead • Faced with moving to California… • Started Powerhead in 2000 out of my apartment • Focus was (and still is) small games:Manageable teamsGrow TalentSmall scope projectsLess risky for publishersLeverage Contacts • Three years later…
Powerhead Today • Five games in three years • Midtown office space (with a nicely sized TV!) • Still around (hard to be a small guy today) • Projects in the pipeline • Licensed for larger platforms • Internal tools and teams have matured
Topics of Discussion • The Biz • GBA Bl0wz! • GBA R00lz! • Technical Requirements for GBA • Game Boy Advance Development • Available Tools • Make A Demo?
Gaming Business • It’s called show business(If you want to make art, find a patron/marry well) • For most of us, the current rules involve building mainly sequels and licensed product • Make cool games within “the rules” • Still room for original games and ideas • Break the rules?The majority of smash hits are original content games (MYST, The Sims, Roller Coaster Tycoon, Blizzard’s Games, DOOM, Duke, and Unreal.) • Own IP
Gaming Triumvirate • Publisher Crassus: money (They got it, you want it.) • Licensor Caesar: personality (content and marketability) • Developer Pompey: army (creativity and labor) • Other factors: retailers & pressDeer Hunter: Game idea from WalMart Unreal: huge grassroots following before landing deal with GT(BUZZ)
Stretch The Metaphor: The Gods • Oh yeah, the target platform! • Our gods: SCEA, NOA, MSThe hardware manufacturers control the processObey their rulesSony, Nintendo, and Microsoft must approve games before manufacturing • Publishers must use licensed developers • Must be a licensed developer to buy tools, such as development kits • I’m under NDA, so I was never here
No! Not GBA! • Hard for publishers to make money on anything but the top sellers • Fewer games get the green light(And those that do are nearly all licensed) • Heavy competition from established developers(Romero’s company makes GBA games; 40 developers for one shelf space) • Publishers want all games for Christmas • Publishers like genre games Where’s the creativity at, yo?
GBA Is Bad For You! • Developers don’t get to specialize • Old school games won’t keep my skills currentWhere are the polygons? I want to program shaders! I want to code realistic hair simulations like in the Final Fantasy movie!
Yes! GBA! • Projects are small: Generally 4-8 monthsNo long projects=less chance of “genre burnout” • Small teams: Generally 2-8 people • Same tools used as on the larger consolesWe use Maya, 3D-studio, Photoshop, MSVC, Pro Motion, CVS ;-) • GBA Developers not limited to one area of programmingThey are generally responsible for many game aspects. Flex those muscles! Continue your exploration! • Programmers Like ChallengesCreate cool AI, 3D graphics, sound within the platform's constraints • Focus on core gameplay ideas(GTA started as a PC game with a GBA scope)
GBA Rulz! • Nintendo 0wnz U • Demographic Data (From Nintendo of America (NOA), as of 12/02) • Launch of the SP
SCEA Demographics (From Sony, as of 2/03) PLAYSTATION 2 USERS • 8 = 0% • 8-12 = 13% • 13-17 = 29% • 18-25 = 24% • 26-35 = 20% • 36-55 = 12% • 56+ = 1%
Hardware Share Information ("Hardware" is defined as all consoles and handhelds) • December hardware marketshare (units): Nintendo: 40%; Microsoft 15%; Sony 45% • YTD (2002) hardware marketshare (units):Nintendo 41%; Microsoft 13%; Sony 46% • December total hardware: 7.1 million units (+19%); Total software: 44.1 million (+6%)
GBA Sell Thru Information • GBA was #2 selling hardware system in 2002 with hardware share of 31% • GBA hardware - LTD - North America - 11.7 million units • GBA hardware - LTD - worldwide - 23.94 million units • All Game Boy hardware - LTD - worldwide - 142.6 million • GBA software - LTD - worldwide - 71.22 million units • All Game Boy software - LTD - worldwide - 564.77 million units • Game Boy Advance hardware production capacity: 1.8 million units/month (80% are produced in China)
Game Boy Advance SP • Front lit screen • Built in rechargeable battery • Flip top (pocket proof) • Could this be any cooler? • Estimated 15Mil sold in 2003
This Is A Comp Sci Lecture? • Technical talk • Tiles and you • Palette and you • Layers and you
Programming The GBA • Mostly programmed in C using the GNU toolkit (or C++, but we use the C compiler for various performance reasons specific to the platform) • Assembly optimization (ARM7) • The main topics for programmers to know about GBA:the way video hardware and controls workand audio (but don't worry about audio) • There is plenty of information about the GBA on the Internetwww.devrs.comwww.gbadev.org
ROM vs RAM vs VRAM • The Triumvirate of memory! • ROM:Physical Memory (permanent storage) • RAM:Code and variables, etc. (tables, tables) • VRAM:Video memory (stuff on screen)
ROM vs RAM vs VRAM (Continuing the metaphor version) • The Triumvirate of memory! • ROM: Crassus (This is where the money goes)Physical Memory (permanent storage) • RAM: Pompey (This is where the work gets done)Code and variables, etc. (tables, tables) • VRAM: Caesar (“The Look”)Video memory (stuff on screen)
GBA Tech Bits • GBA Cartridges come in various ROM sizes: 32Mbit (4MB) 64Mbit (8 MB), and 128Mbit (16MB) • CPU:16Mhz ARM 32bit (TDMI) • GBA Screen: • 240 x 160 (30 tiles x 20 tiles) • Stereo Sound(Though, mono speaker)
GBA ART: Why So Tiley? • Example level: 10 screens by 5 screens • That’s 2400x800 pixels = • 300 tiles x 100 tiles = • 30,000 tiles in level • 1 tile = 64 bytes • 30,000 x 64bytes = 1,920,000 bytes = • Two Megs for a level ?!?! (Thank you Vicarious Visions)
What is a Tile? • 8x8 pixel graphic • Part of a set of tiles • Assembled to make backgrounds and sprites • The GBA has lots of hardware dedicated to manipulating tiles and their palettesFlip tiles horizontally or verticallyEasy to reuse tiles to save spaceEasy to use tiles with different palettes (Scorpion and Subzero, then Reptile!)VRAM is structured to use tiles and tile maps
Tiles Are Good • Tiles sets challenge and restrain designers • Provide consistent look (licensor friendly) • Tiled levels take much less space in ROM and VRAM (map sizes) • Different size tiles? (No hardware support) • Use Meta tiles to save even more space in ROM
What’s A Memory Map? • As part of pre-production, fixed memory management projects REQUIRE a memory map • Every single asset goes in: Art Sound and Music Game Text Other miscellaneous data (tables, tables, tables!) And Code! • Leave slack! • Continue to update throughout project • Leave more slack!
VRAM • Make a VRAM Memory map for each screen(Or make a VRAM manager that does it automatically)Tilesets provide built-in memory management(The artists are trapped! Muahahah!) • Split into sprites and backgrounds, which live in different worlds
Modes (Layers) • It’s a Super Super Nintendo • Six modes • Main mode allows no frills tiled graphics with four background layers • Another mode has fewer background layers, but they can be rotated • Another mode has only one layer, but it’s a non-tiled 256 color layer (ROM heavy!) • Another mode is optimized for snippets of video
GBA Colors: Backgrounds • Each tile can only use one palette • Palettes have 16 colors(Including transparency) • There are 16 palettes • Levels can have only (16x16) 256 colors for all layersSprites are separate • Effects such as color swapping and cycling use colors too!
GBA Colors: Sprites • All Sprites share 16 palettes • Not the same palettes as backgrounds • Don’t forget transparency (15 colors/palette) • Each sprite can only have one palette(Characters can be made up of multiple sprites) • Sprites can be used for more than just characters(items, spackle)
Programming The GBA • Demo idea: • Check out the homebrew development sites for the GBA (or AGB, as Nintendo acronyms it) • First step: Don’t build “Super Sturman Brothers” just yet. Try throwing together something really simple in C for the GBA to demonstrate that you can actually get something working on the GBA. A simple pong mini-game. Build something with a small amount of gameplay, graphics, and control; use your judgment (but don't go overboard; if it takes you more than a week or two at the most, the scope is too big). • Don't worry about getting it to work on the actual hardware; if it works on the emulator mentioned below, that's more than enough, for now (but not for a commercial product). • http://vboy.emuhq.com/ (visual boy advance)
Other Small Project Game Options? • Since the GBA market is hard to break into, what else is there? • Downloadable games are more accessible for developer and consumer(Shhhh. Shareware is back) • iD, Epic, and 3D Realms all started doing shareware • Pogo, Yahoo, Real, Shockwave, Download.com? • Mobile Phones?
Web Sites New York Area Game Companies • www.powerheadgames.com • www.vvisions.com • www.gamelab.com • www.cointeractive.com • pocket.ign.com • www.devrs.com (forums and examples) • www.gamasutra.com
What Can I Do? • Move to California • Prove your worth (make demos) • Powerhead may be looking • Pass this class • Don’t forget to enjoy games
Thanks • David Sturman • Bernie Yee • Powerhead Staff, especially Jon Simantov • Vicarious Visions
Conclusion • Hard but rewarding work • Marry well • jason@powerheadgames.com • www.powerheadgames.com