multiplatform game design & development

50
Multi-platform Game Design & Development Adobe Flash Platform Hemanth Sharma Platform Evangelist, Adobe Systems http://www.hsharma.com @hemanthsharma http://www.facebook.com/hemanthsharma Friday 4 November 11

Upload: hemanth-sharma

Post on 24-Dec-2014

4.069 views

Category:

Technology


2 download

DESCRIPTION

Designing and developing games for multiple devices, multiple platforms and form factors has been the most common challenge today. In this session, learn the different aspects of game design & development that need to be considered. Understand the challenges from the right perspective and overcome them with one of the best tools and platforms. Learn how Adobe Flash Builder enables you to write code intelligently for all the platforms, including Web, Windows, Macintosh, Linux, Android, BlackBerry PlayBook and iOS. Understand how easy the porting and packaging is for these platforms. Understand how Adobe Flash Builder can be used to develop and deploy multi-device games and also how to use third party gaming engines. The session also would briefly cover various methods of creating multiplayer/multi-device games, the new 3D capabilities of Adobe Flash Player to bring out the best user experiences on desktops, tablets and phones.

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