Mobile Gaming: Corona SDK & Adobe AIR RIA Unleashed 2011

  • 2,123 views
Uploaded on

A mobile gaming workshop I gave up in Boston for RIA Unleashed 2011. 4 hours of fun. I showed Lua, Corona SDK, Adobe AIR, blitting, Box2D, physics, touch events, and some business aspects of gaming. …

A mobile gaming workshop I gave up in Boston for RIA Unleashed 2011. 4 hours of fun. I showed Lua, Corona SDK, Adobe AIR, blitting, Box2D, physics, touch events, and some business aspects of gaming. Really fun.

More in: Technology , Education
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
2,123
On Slideshare
0
From Embeds
0
Number of Embeds
1

Actions

Shares
Downloads
20
Comments
0
Likes
1

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n

Transcript

  • 1. MOBILE GAME: CORONA & ADOBE AIR Jesse Warden
  • 2. TOOLS YOU NEEDTextMatehttp://macromates.com/Coronahttps://developer.anscamobile.com/downloads/coronasdkTextMate Corona Bundlehttps://github.com/osadchuk/Corona-SDK.tmbundle/downloadsTextMate Corona Bundle Installation Instructionshttp://www.ludicroussoftware.com/corona-textmate-bundle/index.html
  • 3. TOOLS YOU NEEDFlash Builderhttps://www.adobe.com/cfusion/tdrc/index.cfm?product=flash_builder&promoid=FDUMDFireworkshttp://www.adobe.com/cfusion/tdrc/index.cfm?product=fireworks&promoid=DJDUQ
  • 4. WHO?• Jesse Warden• Web App Solution• Flex/Java/BlazeDS Consulting
  • 5. WHAT?• Mobile Gaming• Corona SDK by Ansca Mobile• Adobe AIR for Mobile
  • 6. WHAT YOU’LL LEARN• Lua
  • 7. WHAT YOU’LL LEARN• Corona • Physics & Collisions • SpriteSheets • Touch Events • Achievements & Scores via OpenFeint
  • 8. WHAT YOU’LL LEARN• Adobe AIR •3 ways to do blitting • Touch Events • DisplayObject nesting • Adobe Tooling
  • 9. CORONA SDK• Ansca Mobile• SDK for writing Android & iOS Games• http://anscamobile.com• http://developer.anscamobile.com/resources/apis
  • 10. CORONA• Simulator• Builds on the Server
  • 11. WHY CORONA?• Box2D is Native• 3rd Party API’s are easy• Game network partnerships
  • 12. INTEGRATIONS• Facebook• Google Maps• OpenFeint• PapayaMobile
  • 13. INTEGRATIONS• iOS Micro Payments (Android coming)• Virtual Currency via SuperRewards• InMobi• App Advertising
  • 14. FREEMIUM Micropayments
  • 15. FREEMIUM Micropayments
  • 16. INTEGRATIONS• Metrics
  • 17. CORONA LESSONS• Lesson 1: Tools • Lesson 7: OpenFeint• Lesson 2: Lua• Lesson 3: DisplayObjects• Lesson 4: Events & Timers• Lesson 5: Box2D• Lesson 6: SpriteSheets
  • 18. LESSON 1: TOOLS• Corona SDK• TextMate• IntelliJ• PC: LuaEdit
  • 19. LESSON 2: LUAa.print g.variantsb.-- and --[[ ]]-- h.types: string, number, function, table, boolean, nilc._G i. if then else elseifd.foo = “bar” j. concatenatione.nil k.tablesf. bar = nil
  • 20. LESSON 2: LUAl. < > <= >= == ~= q.while / pairs / ipairs, for start,end,optionalIncrmentm.and, or, not r. functionsn.type s. argo.multiple return types t. scopep.local vs. global
  • 21. LESSON 2: LUAu.static aa.unit testing: TestMOrev.selfw.classesx.packagesy.errors, pcall, assert, errorz.debug
  • 22. LESSON 3: DISPLAYOBJECTSa.Image: Planeb.Image: Bulletc.Image: Enemy
  • 23. LESSON 4: EVENTS & TIMERSa.Move Plane on Touchb.Create Enemies via Timerc.Move Enemies via enterFramed.Create Bullets and move via enterFrame
  • 24. LESSON 5: BOX2Da.Turn it on, set gravity to 0, add Planeb.add Enemyc.add Bulletd.collision eventse.Collision Filters chartf. kill t3h objects
  • 25. LESSON 6: SPRITESHEETSa.Flash Designb.Fireworks Designc.Player SpriteSheetd.Creation upon death
  • 26. LESSON 7: OPENFEINTa.website e.on 10 kills, unlock achievement a.Create Leaderboard f. make a menu b.Create Achievements g.button for seeing scoresb.require it h.button for seeingc.init it achievementsd.on kill, add points
  • 27. ADOBE AIR LESSONS• Lesson 1: Tools• Lesson 2: ActionScript• Lesson 3: Bitmaps• Lesson 4: Sprites
  • 28. LESSON 1: TOOLSa.Flash Builderb.IntelliJc.Android SDKd.iOS Stack
  • 29. LESSON 2: ACTIONSCRIPTa.trace f. Number, int, uint, String, Boolean, Array, Vector,b.// and /* */ Object, ByteArray, Dictionaryc.; optional, but everyone uses them g.if, else, else if, switchd.var foo = “bar”; h.concatenatione.null/undefined/NaN i. Object & * vs. Strict Types
  • 30. LESSON 2: ACTIONSCRIPTj. < > <= >= == != ! p.access: private, protected, publick.functions q.scope: local, member, anon/l. typeof closures, classesm.instanceof r. staticn.classes s. local variableso.packages
  • 31. LESSON 3: BITMAPSa.Bitmap & BitmapDatab.copyPixelsc.scrollRectd.scrollRect movee.copyPixels
  • 32. LESSON 4: SPRITESa.Character: Sprite / SpriteSheetb.Move Characterc.Animated SpriteSheet
  • 33. DESIGN• Photoshop• Fireworks• Flash
  • 34. SPRITES N’ ASSETS• [Photoshop: Freeman Script]• [Fireworks: My Script]• [Flash: Onion Skinning]
  • 35. ADOBE AIR• Tooling• Strongly Typed• Runtime Exceptions• Debugging
  • 36. ADOBE AIR• GUI Components• Flex• MinimalComps
  • 37. ADOBE AIR• Libraries• Low-Level Access• Blitting
  • 38. ADOBE AIR• [simple blitting]
  • 39. CORONA RESOURCES• http://developer.anscamobile.com/resources/apis• http://learningcorona.com/• http://www.lua.org/
  • 40. ADOBE AIR RESOURCES• http://help.adobe.com/en_US/FlashPlatform/reference/ actionscript/3/index.html• Twitter• G+• http://tech.groups.yahoo.com/group/flexcoders/
  • 41. INSPIRIATION• http://flashgameart.com/• http://www.deviantart.com/• http://www.newgrounds.com/• http://www.albinoblacksheep.com/
  • 42. GAME KNOWLEDGE• http://gamasutra.com/• http://kotaku.com/
  • 43. THANK YOU! QUESTIONS?• Jesse Warden• Email: jessew@webappsolution.com• Twitter: @jesterxl• Blog: jessewarden.com