Casual Game Engines

Preview:

DESCRIPTION

Casual Game Engines. What’s Up With That? David Fox VP Technology, iWin dfox@iwin.com. Why Lil’ Ol’ Me ?. iWin As Web Developer Java Applets Flash iWin As Downloadable Developer Homegrown Framework: SDL/DirectX Flash PC/Mac Multiplayer iWin As Publisher Popcap BlitzBasic - PowerPoint PPT Presentation

Citation preview

What’s Up With That?

David FoxVP Technology, iWin

dfox@iwin.com

Why Lil’ Ol’ Me? iWin As Web Developer

• Java Applets• Flash

iWin As Downloadable Developer• Homegrown Framework: SDL/DirectX• Flash• PC/Mac• Multiplayer

iWin As Publisher• Popcap• BlitzBasic• Torque 3D• Orbital

A Buncha Technologies Flash Shockwave Silverlite Java C# C++ Basic Delphi

A Fistful of Frameworks BlitzBasic VirTools Torque DarkBASIC Playground SDK PopCap Framework SDL DirectX

In 20 Minutes! Yeah, Right.

WHAT METAPHOR?

Cars?

DirectX/SDL

PopCap

Playground SDK

Java

Unreal Engine

Celebrities?

Flash

Torque

C#

Python

Found It!

Formalism == C# Post-Structuralism == C++ Marxism/Feminism == Flash New Historicism == BlitzBASIC Deconstructionism == DirectX Psychoanalysis == Java

Literary Theories!

HOLD ONTO YOUR HATS

Flash CS3 $700 Vector-Based Movie clips and timelines (Visual OOP) MP3 support, embedded markers, etc. ActionScript (like JavaScript) Flash 8 improved math/rendering speed Window, Mac, Linux, Mobile Phones,

PDAs, all Browsers Artist-Friendly “Real” Programmers Rare/Expensive

Flash Gotchas Great Prototype Tool Horrible GUI for Coding (use Eclipse) Painful Debugging Must write C++ wrapper for EXE

• Fullscreen Support• Right click handling• Logs• Support for other graphic/audio formats• Writing to disk

Flash Tricks Embed flash in C++ using f-in-box

Flash

Director/Shockwave $1,200 Lingo or JavaScript/ ECMAScript Good for Downloadable

(Windows/Mac) OK for Web Games – Poor Penetration Good 2D sprite manipulation Strong audio support (streaming,

panning, embedded markers,etc.) Real time 3D (Shockwave3D) Havok physics engine Flash support Can expand with C++ XTras

Silverlight Web-focused Runs atop Visual Studio 2008 AJAX, VB, C#, Python, Ruby Cross-browser/platform (but Windows

focused) Poor penetration Unproven

Java Highly portable (Any browser, PC,

Mac, Linux, Mobile) < 90% browser penetration Version headaches Desktop use requires large JDK

download. Poor 2D library Java3D API Can be work w/ C++ using JNI

C# C++-like Language w/Java Features Microsoft’s Visual Studio Huge .NET Runtime Download (19MB) Vista/XP Focus

C#: Install huge .NET RuntimeSoon? Static .NET Linker/

XNA Game Studio 2.0 Express is Free For students, hobbyists, indies. Based on Visual C# Express 2005 Windows (XP SP2 only) and Xbox 360

C#: Install huge .NET RuntimeSoon? Static .NET Linker/

BASIC/Delphi/Other… BASIC Delphi Phython and PhyGame PHP … Assembly Language

C++ Many seasoned programmers out

there Need to be a “serious” coder Fast, flexible, robust Best IDE: Visual Studio 2008 Many cheap/free frameworks Won’t work in browser (except

ActiveX)

Majority of Hits Are C++

(Director!)

But Not All…

*Based on 50 of the best selling games in Real Arcade from 2004-2006

Frameworks Vary

Director10%

PopCap6%

BlitzBasic2% Flash

2%Torque

2%

C++68%

Delphi10%

ENTER THE MATRIX

The Basics Deal with Mouse/Keyboard Input Draw Animated Sprites Write Text With Fonts Play Music and Sound FX Resource Loading

“Hard” Features Matrix Price (Upfront + License) Runtime Performance Min Sys Reqs Size Dev Support and Documentation Vista Support Unicode Support Cross Platform (Mac, XBLA, Mobile) Localization Tools Other Tools

“Medium” Features Matrix

3D Acceleration Vector Support Flash Support 3D Model Support Scalable Fonts Multiplayer Scripting Languages Particle Systems Encryption or Obfuscation of Assets

“Soft” Features Matrix Learning Curve Known Bugs Custom Coding Required Different Game Genre Support Performance of Your Game Proven?

THE FRAMEWORKS

$80 Basic/C Hybrid (Arrays, Pointers, OOP) Windows/Mac/Linux Modular Design Own IDE/Debugger OpenGL Support Lots of Source Code Also Blitz3D Good for Beginners

BlitzMax

Torque Game Builder 1.7 $100 Hardware Accel SceneGraph Driven Parallax Scrolling / Layers / Camera Advanced Physics/Collision System Tools Up the Wazoo

• Tile Editor• LinkPoint Editor / Collision Polygon Editor• Particle Editor• GUI Editor• Level Editor

Windows, Linux, or Mac OSX Multiplayer with TorqueNet Lite Script in TorqueScript (TGE)

Playground SDK Free! DinerDash 2 (& Other PlayFirst Games) Easy-to-use, Developer Friendly API Hardware Acceleration / 3D / Flash Particle System Lua Script Support Cross-Platform (Mac, Web) Powerful Localization Compact Runtime Documentation / Community Support

Sexy Framework Free (Just credit Popcap) Used In: Bejewelled, Zuma, etc. DirectX 5.0 Windows Only (98 to Vista) FMOD and BASS sound engines. Hardware Acceleration Option Easy Image Manipulation “Widget” Metaphor Memory Leak / Smart Pointers Performance Profiling Routines Sample Apps

Home Grown SDL Free cross-platform multi-media

development API Graphics / Video Control Input / Events Audio / CD-ROM audio Threads Timers Win32/Linux/BeOS/~MacOS

Home Grown DirectX Versions 5.0 to 10.0

• Features Vs. Penetration• Win98/Me = DX7.0• XP = DX8.0• My Advice? Stick to 7.0 or 8.0

Well-Tested Code Your Way

THE BOTTOM LINE

(Almost)

Framework Doesn’t Matter!

Prototyping? Web Only? Mobile Only? Full Cross-Platform Play?

Know Your Purpose

This ain’t rocket science.• Polygons? Frames Per Second? Resolutions?• Polymorphic 3D surround sound?• Gesture based vibrating controller?

Publishers (usually) don’t care

Players won’t know (unless they can’t play)

For 2D puzzle game, easy switching cost

Know Your Game

Programmers ain’t bitching. Artists don’t have to code. Designers can find fun fast. Biz team can maximize profits.

Good Framework If…

2D Downloadable Game? Don’t roll your own!

Bugs are inevitable:• Proven || Strong_Support || Open_Source

Easy to get started. No special knowledge. Easy to expand and write tools.

My Recommendation

Take a Picture Now!Casual Games SIG/Whitepaper/Technologyhttp://www.igda.org/wiki/Casual_Games_SIG/Whitepaper/Technology

Development Platforms for Casual GamesBy Phil Steinmeyer http://www.gamasutra.com/features/20050324/steinmeyer_pfv.htm

What About Flash? Can We Really Make Games With It?By Scott Bilashttp://www.drizzle.com/~scottb/gdc/flash-paper.htm

Casual Games Technology SurveyBy James Smithhttp://www.igda.org/casual/quarterly/2_1/index.php?id=8

Technology Face-Off Panel from Last Year’s Summithttp://www.casualgamessummit.com/presentations/

presentations.html

G’luck! Want the Matrix or Links?

• See Handout!

• e-mail me at dfox@iwin.com

• www.casualgamessummit.com

• Casual Games Whitepaper