Transcript
Page 1: Multiplatform Game Design & Development

Multi-platform GameDesign & DevelopmentAdobe Flash Platform

Hemanth SharmaPlatform Evangelist, Adobe Systems

http://www.hsharma.com@hemanthsharma

http://www.facebook.com/hemanthsharma

Friday 4 November 11

Page 2: Multiplatform Game Design & Development

Multi-platform

Friday 4 November 11

Page 3: Multiplatform Game Design & Development

Multi-platform

Google Android

BlackBerry PlayBook

Apple iOS

Windows

Macintosh

Linux

Friday 4 November 11

Page 4: Multiplatform Game Design & Development

Multi-platform

Across devices

Richer experience

Visibility

More customers

RevenueWHY?

Friday 4 November 11

Page 5: Multiplatform Game Design & Development

Multi-platform

Technology

Display Resolution

Screen Density (DPI)

Physical Size

Input

Processor & Memory

Developer Challenges

Friday 4 November 11

Page 6: Multiplatform Game Design & Development

The Process

Friday 4 November 11

Page 7: Multiplatform Game Design & Development

The Process

Concept

Prototype

Concept Art

Development

Testing & Optimization

Deployment

Friday 4 November 11

Page 8: Multiplatform Game Design & Development

Screen Resolution

Friday 4 November 11

Page 9: Multiplatform Game Design & Development

Screen Resolution

320 px

480 pxPhone

Friday 4 November 11

Page 10: Multiplatform Game Design & Development

Screen Resolution

480 px

800 pxPhone

Friday 4 November 11

Page 11: Multiplatform Game Design & Development

Screen Resolution

640 px

960 pxPhone

Friday 4 November 11

Page 12: Multiplatform Game Design & Development

Screen Resolution

768 px

1024 pxTablet

Friday 4 November 11

Page 13: Multiplatform Game Design & Development

Screen Resolution800 px

1280 pxTablet

Friday 4 November 11

Page 14: Multiplatform Game Design & Development

Screen Resolution

1. Different Resolution

2. Scaling

3. Crop

Friday 4 November 11

Page 15: Multiplatform Game Design & Development

Screen Resolution

Friday 4 November 11

Page 16: Multiplatform Game Design & Development

Screen ResolutionDifferent Resolution

350 x 350600 x 600logo_350.pnglogo_600.png

Friday 4 November 11

Page 17: Multiplatform Game Design & Development

Screen ResolutionDifferent Resolution

1024 x 768

640 x 960

bg_1024.png

bg_640.png

Friday 4 November 11

Page 18: Multiplatform Game Design & Development

Screen ResolutionScaling

Friday 4 November 11

Page 19: Multiplatform Game Design & Development

Screen ResolutionScaling

Friday 4 November 11

Page 20: Multiplatform Game Design & Development

Screen ResolutionScale Down

Scale Up

Friday 4 November 11

Page 21: Multiplatform Game Design & Development

Screen ResolutionCrop

Friday 4 November 11

Page 22: Multiplatform Game Design & Development

Screen ResolutionCrop

Friday 4 November 11

Page 23: Multiplatform Game Design & Development

Graphics

Vector Graphics

Raster (Bitmap) Graphics

Friday 4 November 11

Page 24: Multiplatform Game Design & Development

Screen DPI

Friday 4 November 11

Page 25: Multiplatform Game Design & Development

Screen DPI

Desire HD iPhone 4

480 px

640 px

800 px960 px

Virtually

Friday 4 November 11

Page 26: Multiplatform Game Design & Development

Screen DPI

Desire HD iPhone 4

480 px

640 px

800 px960 px

Physically

Friday 4 November 11

Page 27: Multiplatform Game Design & Development

Screen DPI

Desire HD iPhone 4

Physically

480 px640 px

800 px 960 px

Friday 4 November 11

Page 28: Multiplatform Game Design & Development

Screen DPI

Desire HD iPhone 4

480 px640 px

800 px 960 px

Physically

1 inch

240 px

240 px1 inch

326 px

326 px

Friday 4 November 11

Page 29: Multiplatform Game Design & Development

Screen DPI

Device Resolution DPI

Apple iPhone 4S 640 x 960 326

HTC Desire HD 480 x 800 240

Apple iPad 768 x 1024 132

Samsung Galaxy 10.1 Tab 800 x 1280 149

BlackBerry PlayBook 600 x 1024 192

Friday 4 November 11

Page 30: Multiplatform Game Design & Development

Screen DPIContent Scaling for Virtual Size

object.width = n;

Friday 4 November 11

Page 31: Multiplatform Game Design & Development

Screen DPIContent Scaling for Physical Size

object.width = flash.Capabilities.screenDPI * physicalSize;

Friday 4 November 11

Page 32: Multiplatform Game Design & Development

Input

Friday 4 November 11

Page 33: Multiplatform Game Design & Development

Input

Keyboard

Mouse

Multi-touch

Gestures

Accelerometer

Microphone

Camera

Friday 4 November 11

Page 34: Multiplatform Game Design & Development

Keyboard

import flash.events.KeyboardEvent;

stage.addEventListener(KeyboardEvent.KEY_DOWN, keyDown_handler);

protected function keyDown_handler(event:KeyboardEvent):void { trace(event.keyCode);}

Friday 4 November 11

Page 35: Multiplatform Game Design & Development

Mouse

import flash.events.MouseEvent;

stage.addEventListener(MouseEvent.MOUSE_DOWN, mouseDown_handler);

Friday 4 November 11

Page 36: Multiplatform Game Design & Development

Multitouch

import flash.ui.Multitouch;import flash.ui.MultitouchInputMode;import flash.events.TouchEvent;

if (Multitouch.supportsTouchEvents) {Multitouch.inputMode = MultitouchInputMode.TOUCH_POINT;

stage.addEventListener(TouchEvent.TOUCH_BEGIN, onTouchBegin);stage.addEventListener(TouchEvent.TOUCH_END, onTouchEnd);

}

protected function onTouchBegin(event:TouchEvent):void { trace(event.touchPointID);}

Friday 4 November 11

Page 37: Multiplatform Game Design & Development

Multitouch Gesturesimport flash.ui.Multitouch;import flash.ui.MultitouchInputMode;import flash.events.TransformGestureEvent;

if (Multitouch.supportsGestureEvents) {Multitouch.inputMode = MultitouchInputMode.GESTURE;stage.addEventListener(TransformGestureEvent.GESTURE_ZOOM, onRotate);stage.addEventListener(TransformGestureEvent.GESTURE_ROTATE, onZoom);

}

protected function onRotate(event:TransformGestureEvent):void { trace(event.rotation);}protected function onZoom(event:TransformGestureEvent):void { trace(event.scaleX + ", " + event.scaleY);}

Friday 4 November 11

Page 38: Multiplatform Game Design & Development

Accelerometerimport flash.sensors.Accelerometer;import flash.events.AccelerometerEvent;

var acc_obj:Accelerometer;

if (Accelerometer.isSupported) { acc_obj = new Accelerometer(); acc_obj.addEventListener(AccelerometerEvent.UPDATE, onAccUpdate);}

private function onAccUpdate(event:AccelerometerEvent):void { trace(event.accelerationX); trace(event.accelerationY); trace(event.accelerationZ);}

Friday 4 November 11

Page 39: Multiplatform Game Design & Development

Input

Accelerometer Check Multitouch/Gestures Checkor

Keyboard Fallback Mouse Fallbackor

Friday 4 November 11

Page 40: Multiplatform Game Design & Development

Technology

Friday 4 November 11

Page 41: Multiplatform Game Design & Development

Technology

Java

Objective-C

C or others

Friday 4 November 11

Page 42: Multiplatform Game Design & Development

Technology

.apk

.bar

.ipa

Friday 4 November 11

Page 43: Multiplatform Game Design & Development

Technology

.apk

.bar

.ipa

Adobe Flash Platform

Friday 4 November 11

Page 44: Multiplatform Game Design & Development

Technology

DEMO

Friday 4 November 11

Page 45: Multiplatform Game Design & Development

Game Engines - 2D

• Flixel (http://flixel.org/)

• FlashPunk (http://flashpunk.net/)

• PushButton (http://pushbuttonengine.com/)

Friday 4 November 11

Page 46: Multiplatform Game Design & Development

Game Engines - Isometric

• AS3 ISO Lib (http://code.google.com/p/as3isolib/)

• TheoWorlds (http://www.theoworlds.com/)

Friday 4 November 11

Page 47: Multiplatform Game Design & Development

Game Engines - Physics

• JigLib (http://www.jiglibflash.com/blog/)

• Box2D (http://box2dflash.sourceforge.net/)

• APE (http://www.cove.org/ape/)

• WOW (http://code.google.com/p/wow-engine/)

Friday 4 November 11

Page 48: Multiplatform Game Design & Development

Multiplayer / Multiuser

P2P

Socket & SocketServer

Friday 4 November 11

Page 49: Multiplatform Game Design & Development

3D & GPU

Stage 3D (Molehill)http://alternativaplatform.com/en/demos/maxracer/

Starling Frameworkhttp://www.starling-framework.org

Friday 4 November 11

Page 50: Multiplatform Game Design & Development

Questions?

http://www.hsharma.com

@hemanthsharma

http://www.facebook.com/hemanthsharma

http://www.adobe.com/gaming

http://labs.adobe.com

Friday 4 November 11


Recommended