Cross platform challenges and opportunities for games and interactive developers

Post on 31-Aug-2014

1488 Views

Category:

Technology

2 Downloads

Preview:

Click to see full reader

DESCRIPTION

Cross-platform Development and Designs Considerations.

Transcript

Bruno Fonzi

Bruno Fonzi ART+TECH Commodore at CODAME

Cross Platform For games and interactive developers.Challenges + Opportunities

Bruno Fonzi

• Mostly a Geek! • Also UX Software engineer

• C/C++/AS/JS/… • Client/Server (mostly client) • Web/Mobile • Gaming

About MeBruno Fonzi

Bruno Fonzi

Worked at

Project Hermes: The European Spaceplane

European Space Agency (ESA)

Bruno Fonzi

Worked at

Project Silex: World First Data Transmission Between Satellites Using Laser Light

European Space Agency (esa)

Bruno Fonzi

Worked atQuark

Bruno Fonzi

Worked atAdobe

Bruno Fonzi

Worked atPowerflasher (FDT)

Bruno Fonzi

Worked at StartupsAround the world

Bruno Fonzi

Virtual VegasWorked at Startups

Bruno Fonzi

Landed at Lanicaco-founder

Bruno Fonzi

Commodore at CODAME

Bruno Fonzi

My Journey to Gaming

Bruno Fonzi

This is where it all started!TI 99/A4

Bruno Fonzi

Released: 1981 Processor: TMS9900, 16(!) Bit Mhz: 3,3 RAM: 16 KB, expandable to 48 KB ROM: 26 KB, expandable

OS: Basic in ROM, Extendes-Basic with Cartridge Resolution: Graphic: 256x192, 64x48, 32x24,

Text: 40x24

Colors: 15 + 1 transparent color

TI 99/A4 Specs

Bruno Fonzi

How it looked!

Bruno Fonzi

This Too!

Bruno Fonzi

A bit of History

Cross PlatformChallenges + Opportunities

Bruno Fonzi

• Few colors • Screen was mostly our tv • Text based • Basic was the language • Assembler otherwise • Cross-platform:

not really an option

Cross Platform in the 80s

Bruno Fonzi

• 92% Windows PCs • 5% Macintosh • 3% Unix

Cross Platform in the 90s

Bruno Fonzi

• Hardware Cheaper and more powerful

• Java Write once, run anywhere

• Internet AOL: you got mail!

Cross Platform in the 90s Revolution

Bruno Fonzi

Apple Evolution

25 Years of Mac: Product Timeline [Wired]

Bruno Fonzi

Mobile PCs Tablets Other Devices

Cross Platform Now

Bruno Fonzi

So much more!What’s next?

Bruno Fonzi

Development & Design Considerations

Cross PlatformChallenges + Opportunities

Bruno Fonzi

Landscape

• Desktops Windows, OSX, Linux, ChromeOS …

• Browsers IE, Safari, Chrome, Firefox, Opera… (desktop and mobile)

• Mobile iOS, Android, Windows 8, Blackberry, FirefoxOS, Ubuntu …

• Game Consoles & Media Receivers Xbox, Playstation, Wii, OUYA, GameStick, ChromeCast, Apple TV …

• Embedded Devices “iWatch”, Google Glass, Arduino, Car Dashboards ...

Operating Systems

Bruno Fonzi

• Screens Sizes, Colors, Portrait, Landscape …

• Power Processor, Memory, Battery …

• Inputs Keyboard, Gestures …

• Capabilities Accelerometer, Multi Touch, Geolocation …

• Programming Languages C++, Objective C, Java, JavaScript …

DiversityDesign & Functionality

Bruno Fonzi Lanica, Inc.

Fragmentation

Bruno Fonzi Lanica, Inc.

Android Fragmentation

Bruno Fonzi

*via PhoneArena

Apple Screen Fragmentation

Lanica, Inc.

iOS Fragmentation

Bruno Fonzi

• Mobile Market Places Apple, Android, Amazon, Nook, GetJar… (100s!)

• Social Networks & Web Aggregators Facebook, Twitter, Google+, GREE … Mochi Media, Kongregate …

• Video Game Distributors Steam, XBox Live, GREE …

• Desktop Software Platforms Umbutu, Mac, Windows, Chrome Store …

• Game Publishers EA, Activision, Ubisoft, Zynga, Sony …

Distribution & MonetizationMore Challenges

Bruno Fonzi

Let the people know about your app/service !

• Pre-loads • Recommendation sites • SEO • Press • Ad Networks • Giveaways • Cross promotions • User acquisition

+ More ChallengesAdvertise

Bruno Fonzi

++ More ChallengesDevelopment & Design Strategies

Choose a Technical Architecture Strategy

Bruno Fonzi

#1 Multiple Code & Designs

DesktopDesktopDesktop Web MobileDesktop Web Mobile Device

Bruno Fonzi

#2 Single Code & Multiple Designs

Desktop Web Mobile

Core Code

Web Connectivity Core Logic

Error Messages Interaction Logic

Desktop Web Mobile Device

FrameworkPlatform Code System Capabilities

Bruno Fonzi

#3 Single Code Base & Design

• Screen Dimensions • Platform Logic • System Capabilities • Cloud Services • ...

Desktop Web Mobile

Core Code

Web Connectivity Core Logic

Error Messages Interaction Logic

Desktop Web Mobile Device

FrameworkPlatform Code System Capabilities

Bruno Fonzi

• Native Objective C, Java, C/C++, C# … • Web Flash, HTML5 (JQuery, ImpactJS, Angular…) • Hybrid Titanium (Appcellerator), Platino (Lanica)… • Interpreted Adobe Air, PhoneGap… • Generated GWT, Haxe, CoronaSDK, Unity3D …

Technical Solutions+++ More Challenges

Bruno Fonzi

• HTML5 Canvas • Sencha Touch • ImpactJS • JQuery Mobile • LimeJS • Angular • Polymer • …

Technology Web AppsFrameworks Help

Bruno Fonzi

• WebGL • Goo Engine • Ludei • Three.js • Cocos2D-JS • Isogenic • …

Technology Web AppsFrameworks Help

Bruno Fonzi

HTML or FLASH*

* Except on iOS Safari otherwise plug-in required!

Technology Web Apps

Bruno Fonzi

Toshiba libretto conceptTechnology Web Apps

Bruno Fonzi

Games?Technology Web Apps

FLASH HTML5

Bruno Fonzi

HTML or FLASH*Technology Web Apps

Development Easy

Effort Known technology

Monetization Not ideal user experience

Experience Sexy UI possible, but platform specific

Hardware Very Limited

Offline Generally Possible

Bruno Fonzi

JavaScript or ActionScriptTechnology Hybrid Apps

Sencha

Bruno Fonzi

Adobe AirTechnology Hybrid Apps

Bruno Fonzi

“Flash is a cross platform development tool. It is not Adobe’s goal to help developers write the best iPhone, iPod and iPad apps. It is their goal to help developers write cross platform apps. “ – Steve Jobs !http://www.apple.com/hotnews/thoughts-on-flash/

Thoughts About Flash

Bruno Fonzi

Can sing!

“Powerflasher San Francisco Band”

Flash Developers

Bruno Fonzi

Hybrid Apps Phone Gap

Bruno Fonzi

JavaScript or ActionScript*Hybrid Apps

Development Easy

Effort Known technology

Monetization App Store

Experience Sexy UI possible, but platform specific

Hardware Partially accessible

Offline Possible

Bruno Fonzi

Interpreted AppsJavaScript

Apache 2 LicenseJS programmatically

native controlsiPhone, iPad, Android

BlackBerry (soon)

Bruno Fonzi

Interpreted AppsAppcelerator Titanium

Bruno Fonzi

Interpreted AppsLanica

Physics Multi Channel

Parallax Scrolling Random Terrain GPU Particles

Bruno Fonzi

Java & Action ScriptInterpreted Apps

Development API Learning curve Effort Up and coming Monetization App Store

Development API Learning curve required

Effort Up and coming

Monetization App Store & IAP

Experience Close to native

Hardware Partially accessible

Offline Yes

Bruno Fonzi

• Unity3D Mono C#, JS, Boo to Native • Apportable ObjectiveC to Native • Xamarin MonoTouch C# to Native • Google Web Toolkit (GWT) Java to JS • Corona SDK Lua to iOS, Android • Haxe from Haxe to Native • …

Generated Apps Cross-Compilers

Bruno Fonzi

Development Experienced Developer

Effort Easy for aimed cases, easy to extend

Monetization App Store & IAP

Experience Native

Hardware Native

Offline Yes

Generated Apps Cross-Compilers

Bruno Fonzi

Adobe Photoshop CompanionNative Examples

Bruno Fonzi

“You can write amazing web apps that look exactly and behave exactly like apps on the iPhone. “ – Steve Jobs at WWDC 2007

Thoughts AboutThoughts About HTML52007

Bruno Fonzi

• Apple (even Google) mix messages • W3 Standard Different Agendas? • Device Manufactures Pushing boundaries.

What Happened HTML5?2013

Bruno Fonzi

• Microsoft: Complaining about The limits of Google’s openness.

• JavaScript: Becoming the facto scripting language?

• Gaming: Is HTML5 the future of (mobile) gaming?

What Happened HTML5?Interesting trends

Bruno Fonzi

Cross PlatformUp for the challenge?

Bruno Fonzi

Bret Victor The Future of Programming

http://www.youtube.com/watch?v=8pTEmbeENF4

Extra Popcorn TimeRecommended presentations to watch!

top related