Post on 06-May-2015
description
Spieleentwicklung mit demAdobe AIR SDK
Indie Outpost Sondertreffen17.04.2013
Michel Wacker@starnut
michel@indieoutpost.org
Nov 2011:Adobe sägt
Flash mobilePlugin ab
http://nyulocal.com/wp-content/uploads/2013/02/R.I.P..jpg
http://www.adobe.com/
Whot?• Cross-Compilation
• Hardware Beschleunigung (Stage3D)
Flash Plugin
http://www.adobe.com/
Flash IDE CS6
Adobe Integrated Runtime (AIR)
Flash Ökosystem
AIR SDK (3.7)
http://www.adobe.com/
Flex SDK (4.6)
Adobe Gaming SDK
Flash Ökosystem
AIR SDK
• Kosten: Gratis Download
• ActionScript Compiler 2.0 (mxmlc Ersatz)
• Cmd-line Debug Launcher (ADL)
• Cmd-line Developer Tool (ADT)
AIR Developer Tool
• AIR apps als native Installer packen
• z.B. exe, ipa (iOS), apk (Android)
• AIR Native Extensions (ANE) packen
• Device Erkennung
• Remote (Un-)Install
Zielplattformen
• Browser .swf
• Mac OSX .app
• Windows 8 .exe (x86 Computer)
• Linux (unsauber)
Zielplattformen
• iOS .ipa
• Android .apk
• Blackberry
• Kindle Fire
• NOOK
Kein Support
• Laut Flash Runtimes Roadmap:
• Windows Modern UI Apps
• Windows Phone
Gaming SDK
• AIR SDK
• iOS ANEs: Game Center, IAP, iAd, TestFlight
• Adobe Texture Format (ATF) Tools
• Doku, Beispiele etc.
• Creative Cloud Anmeldung nötig (gratis)
Gaming SDK
• Starling: OS 2D Framework (Stage3D)
• Feathers: OS UI Framework für Starling
• Away3D: OS 3D Framework (Stage3D)
Starling
• 2D Layer über Stage3D API
• Einfacher Zugang zu GPU Funktionen
• Greift Flash Konzepte auf (DisplayList)
• Unterstützt TexturePacker Exports
• Gute Tutorials, Performance-Tipps
• Box2D, Partikeleffekte etc.
Mankos
• Junges Framework
• Verstreutes Wissen
• Try & Error
• Unvollständige Funktionalität(z.B. Maskierung)
Work!ow
• Animationen in Flash CS6
• Export als PNG Sequenz
• Import in TexturePacker
• Laden des TextureAtlas zur Runtime (!)
• Starling MovieClip instanzieren
ActionScript 3.0
• Seit 2006 mit Flash Player 9
• Klassenbasierte Objektorientierung
• Mischung aus JavaScript und Java
• Strong typed, statisch
• Assets über Wrapperklassen instantierbar
• Sprache wird nicht weiter entwickelt
ActionScript 3.0package com.starnut{ import flash.display.MovieClip; import flash.display.Sprite; import flash.events.MouvseEvent; public class MyClass extends Sprite { public function MyClass(myAnimation:MovieClip) { myAnimation.addEventListener(MouseEvent.CLICK, onAnimationClick);
addChild(myAnimation); // add to DisplayList } private function onAnimationClick(event:MouseEvent):void { trace("myAnimation has been clicked"); // console output } }}
Etablierte IDEs
• Adobe Flash CS6: sh*tty Code Support
• Adobe Flash Builder: Eclipse, 30 Tage Trial
• FDT: Eclipse, Free/Premium ❤
• Flash Develop: Free (Win only)
• IntelliJ IDEA: Individual/Commercial Liz
• Textmate / Sublime2 Plugins
Adobe Scout
• Mächtiger (mobile) Pro"ler
• Funktioniert ohne explizite Anbindung
• Aktivierung über separate mobile App
• Zusätzliches Output über Compiler Flag
• Kosten: (noch) gratis über Creative Cloud
Interestingness
• Citrus Engine: Starling, Away3D + physics
• C/C++ to Flash Compiler
• Unity to Flash Compiler
• Kinect, Arduino, Mobile Fernsteuerung ...
Stärken
• Browser Plugin stark verbreitet
• Guter iOS und Android Support
• Hardware Beschleunigung
• One Source for all möglich
• Etablierte Community und Tools
Schwächen
• Abhängigkeit von Adobe
• Roadmap zeigt drastische Kürzungen
• u.a. Kein Win Modern UI / Phone Support
• Lange Packzeiten für mobile
• Cross Compiler: Black Box
• Starling noch nicht ausgereift
Fazit
• Gute Einstiegstechnologie
• Starke Tools
• Hohe Zugänglichkeit
• Große Reichweite: Browser, iOS & Android
• Kostengünstige Entwicklung
• Unsicherheitsfaktor Adobe
• Flex SDK: http://www.adobe.com/devnet/#ex/#ex-sdk-download.html
• AIR SDK: http://www.adobe.com/devnet/air/air-sdk-download.html
• Gaming SDK: http://gaming.adobe.com/technologies/gamingsdk/
• Flash Runtimes Roadmap: http://www.adobe.com/devnet/#ashplatform/whitepapers/roadmap.html
• Starling Framework: http://gamua.com/starling/
• Feathers UI: http://feathersui.com/
• Away3D: http://away3d.com/
• TexturePacker: http://www.codeandweb.com/texturepacker
• Flash Builder: http://www.adobe.com/de/products/#ash-builder.html
• FDT: http://fdt.power#asher.com/
• FlashDevelop: http://www.#ashdevelop.org/
• IntelliJ IDEA: http://www.jetbrains.com/idea/
• Scout: http://gaming.adobe.com/technologies/scout/index.html
• Creating iOS apps using Adobe Flash Professional CS6: http://www.adobe.com/inspire/2012/12/ios-apps-#ash-cs6.html
• Citrus Enginge: http://citrusengine.com/
• Loom Engine: http://theengine.co/
Links