SlideShare ist ein Scribd-Unternehmen logo
1 von 22
Downloaden Sie, um offline zu lesen
Series 40 Developer Training
Getting Started with 2D Game
Development on Nokia Series 40 Asha
Phones


Michael Samarin, Ph.D
Director,
Developer Training and Evangelism
Futurice Oy

+358 40 518 18 09
michael.samarin@futurice.com

                                      @MichaelSamarin
Today’s Topics
» Understanding Gaming Market for Series 40
» Where to get more information
» 2D Game APIs in Mobile Java
» Demo of 2D Game Building Concepts
» NetBeans 7.1 and Game Builder Plugin
» Walking Through Game Builder Sample
» Series 40 Devices and 2D Games Performance
Series 40
» 675 Million Devices
» 3.9 Million Daily Downloads
» Price range 35 – 140 Euro


» Gaming Studios to compete with: EA,
  Gameloft, Rovio, India Games
Nokia Developer Guides and Docs
» http://www.developer.nokia.com/Resources/Library/Java/#!dev
  elopers-guides/ui-and-graphics/game-api.html




6/4/201
                                                            4
2
Nokia Developer Guides and Docs
» http://www.developer.nokia.com/Resources/Library/Java/#!dev
  elopers-guides/ui-and-graphics/game-api.html


 Oracle (Sun) Guides and Docs
» http://developers.sun.com/mobility/midp/articles/gameapi/
» http://developers.sun.com/mobility/midp/articles/game/
› Game API Package (MIDP)
› javax.microedition.lcdui.game
  › GameCanvas
  › Layer
  › LayerManager
  › Sprite
  › TiledLayer
› GameCanvas
  › Double buffered
  › Convenient for minimizing code
    of game loop
  › Methods for querying status of
    keys
› GameCanvas
   public class MyCanvas extends GameCanvas implements Runnable {
       public void run() {
           Graphics g = getGraphics();
           while(true) {
               // update the game state
                 int k = getKeyStates();
               // respond to key events
               flushGraphics();
           }
       }
   }
›
         ›
         ›
         ›

  Live   ›

Demos:   ›
         ›
         ›
         ›
› Graphical Assets
› Graphical Assets – Sprite Star
› Graphical Assets – Sprite Lightning
› Layer
  › Abstract class, any visual game
    element
› LayerManager
  › Combines layers together,
    provides viewport
› Sprite
  › Animated game object
› TiledLayer
  › Game areas, backgrounds
› Sprite
  › Animated element of the game
    (character)
  › Define Sequence, Delay
  › Flip, Rotate
  › Define Reference Point
  › Detect Collisions
› TIledLayer
  › Defines game backgrounds
  › Can be animated
  › Doesn’t have Sprite methods
›
         ›
         ›
         ›

  Live   ›

Demos:   ›
         ›
         ›
         ›
› NetBeans Game Builder Plug-In
›
         ›
         ›
         ›

  Live   ›

Demos:   ›
         ›
         ›
         ›
Asha 303   Nokia 111
› Java Heap size (1 – 4 MB)
           › JAR file size ( 1 – 2 MB)
           › CPU speed
           › Screen Size 240x 320, 320x240,
Consider     128x160
           › Input Type: T9, Qwerty, Touch-And-
             Type
           › Use Nokia Device Matrix
           › Remote Device Access
Thank you!




@MichaelSamarin

Weitere ähnliche Inhalte

Ähnlich wie Introduction to 2D Game Development on Nokia Series 40 Asha Phones

Game development with Cocos2d-x Engine
Game development with Cocos2d-x EngineGame development with Cocos2d-x Engine
Game development with Cocos2d-x Engine
Duy Tan Geek
 

Ähnlich wie Introduction to 2D Game Development on Nokia Series 40 Asha Phones (20)

[KGC 2010] 게임과 보안, 암호 알고리즘과 프로토콜
[KGC 2010] 게임과 보안, 암호 알고리즘과 프로토콜[KGC 2010] 게임과 보안, 암호 알고리즘과 프로토콜
[KGC 2010] 게임과 보안, 암호 알고리즘과 프로토콜
 
GDC 2015 でのハイエンドグラフィックス
GDC 2015 でのハイエンドグラフィックスGDC 2015 でのハイエンドグラフィックス
GDC 2015 でのハイエンドグラフィックス
 
Presentation 1 22nd August 2008
Presentation 1   22nd August 2008Presentation 1   22nd August 2008
Presentation 1 22nd August 2008
 
UGC In Game : A Brief History and How We Bring It To Mobile | Zhuo Yue
UGC In Game : A Brief History and How We Bring It To Mobile | Zhuo YueUGC In Game : A Brief History and How We Bring It To Mobile | Zhuo Yue
UGC In Game : A Brief History and How We Bring It To Mobile | Zhuo Yue
 
Cocos2d game programming 2
Cocos2d game programming 2Cocos2d game programming 2
Cocos2d game programming 2
 
Design your 3d game engine
Design your 3d game engineDesign your 3d game engine
Design your 3d game engine
 
Applying AI in Games (GDC2019)
Applying AI in Games (GDC2019)Applying AI in Games (GDC2019)
Applying AI in Games (GDC2019)
 
Game development with Cocos2d-x Engine
Game development with Cocos2d-x EngineGame development with Cocos2d-x Engine
Game development with Cocos2d-x Engine
 
game development
game  developmentgame  development
game development
 
The next generation of GPU APIs for Game Engines
The next generation of GPU APIs for Game EnginesThe next generation of GPU APIs for Game Engines
The next generation of GPU APIs for Game Engines
 
Albion Online - A Cross-Platform MMO (Unite Europe 2016, Amsterdam)
Albion Online - A Cross-Platform MMO (Unite Europe 2016, Amsterdam)Albion Online - A Cross-Platform MMO (Unite Europe 2016, Amsterdam)
Albion Online - A Cross-Platform MMO (Unite Europe 2016, Amsterdam)
 
Developing games for Series 40 full-touch UI
Developing games for Series 40 full-touch UIDeveloping games for Series 40 full-touch UI
Developing games for Series 40 full-touch UI
 
De Re PlayStation Vita
De Re PlayStation VitaDe Re PlayStation Vita
De Re PlayStation Vita
 
Developing Next-Generation Games with Stage3D (Molehill)
Developing Next-Generation Games with Stage3D (Molehill) Developing Next-Generation Games with Stage3D (Molehill)
Developing Next-Generation Games with Stage3D (Molehill)
 
Low Level Graphics & OpenGL
Low Level Graphics & OpenGLLow Level Graphics & OpenGL
Low Level Graphics & OpenGL
 
Writing Games in .NET with XNA Game Studio
Writing Games in .NET with XNA Game StudioWriting Games in .NET with XNA Game Studio
Writing Games in .NET with XNA Game Studio
 
XNAPresentation
XNAPresentationXNAPresentation
XNAPresentation
 
Knock Knock on GameDev Gate
Knock Knock on GameDev GateKnock Knock on GameDev Gate
Knock Knock on GameDev Gate
 
Cocos2d programming
Cocos2d programmingCocos2d programming
Cocos2d programming
 
Knock knock on GameDev gateway! - Introduction to Game development
Knock knock on GameDev gateway! - Introduction to Game developmentKnock knock on GameDev gateway! - Introduction to Game development
Knock knock on GameDev gateway! - Introduction to Game development
 

Mehr von Microsoft Mobile Developer

Nokia Asha webinar: Developing health-care applications for Nokia Asha phones
Nokia Asha webinar: Developing health-care applications for Nokia Asha phonesNokia Asha webinar: Developing health-care applications for Nokia Asha phones
Nokia Asha webinar: Developing health-care applications for Nokia Asha phones
Microsoft Mobile Developer
 

Mehr von Microsoft Mobile Developer (20)

Healthcare apps for Nokia X and Nokia Asha
Healthcare apps for Nokia X and Nokia AshaHealthcare apps for Nokia X and Nokia Asha
Healthcare apps for Nokia X and Nokia Asha
 
Push notifications on Nokia X
Push notifications on Nokia XPush notifications on Nokia X
Push notifications on Nokia X
 
DIY Nokia Asha app usability studies
DIY Nokia Asha app usability studiesDIY Nokia Asha app usability studies
DIY Nokia Asha app usability studies
 
Lessons learned from Nokia X UI reviews
Lessons learned from Nokia X UI reviewsLessons learned from Nokia X UI reviews
Lessons learned from Nokia X UI reviews
 
Location based services for Nokia X and Nokia Asha using Geo2tag
Location based services for Nokia X and Nokia Asha using Geo2tagLocation based services for Nokia X and Nokia Asha using Geo2tag
Location based services for Nokia X and Nokia Asha using Geo2tag
 
HERE Maps for the Nokia X platform
HERE Maps for the Nokia X platformHERE Maps for the Nokia X platform
HERE Maps for the Nokia X platform
 
Nokia In-App Payment - UX considerations
Nokia In-App Payment - UX considerationsNokia In-App Payment - UX considerations
Nokia In-App Payment - UX considerations
 
Introduction to Nokia Asha SDK 1.2 (beta)
Introduction to Nokia Asha SDK 1.2 (beta)Introduction to Nokia Asha SDK 1.2 (beta)
Introduction to Nokia Asha SDK 1.2 (beta)
 
UX considerations when porting to Nokia X
UX considerations when porting to Nokia XUX considerations when porting to Nokia X
UX considerations when porting to Nokia X
 
Kids' games and educational app design
Kids' games and educational app designKids' games and educational app design
Kids' games and educational app design
 
Nokia X: opportunities for developers
Nokia X: opportunities for developersNokia X: opportunities for developers
Nokia X: opportunities for developers
 
Lumia App Labs: Nokia Imaging SDK 1.1
Lumia App Labs: Nokia Imaging SDK 1.1Lumia App Labs: Nokia Imaging SDK 1.1
Lumia App Labs: Nokia Imaging SDK 1.1
 
Intro to Nokia X software platform and tools
Intro to Nokia X software platform and toolsIntro to Nokia X software platform and tools
Intro to Nokia X software platform and tools
 
Lumia App Labs: Lessons learned from 50 windows phone 8 design consultations
Lumia App Labs: Lessons learned from 50 windows phone 8 design consultationsLumia App Labs: Lessons learned from 50 windows phone 8 design consultations
Lumia App Labs: Lessons learned from 50 windows phone 8 design consultations
 
Windows Phone 8 speech: parliamo con la nostra app
Windows Phone 8 speech: parliamo con la nostra appWindows Phone 8 speech: parliamo con la nostra app
Windows Phone 8 speech: parliamo con la nostra app
 
La pubblicazione di un'applicazione sullo store
La pubblicazione di un'applicazione sullo storeLa pubblicazione di un'applicazione sullo store
La pubblicazione di un'applicazione sullo store
 
Il pattern mvvm come strutturare al meglio il vostro progetto
Il pattern mvvm come strutturare al meglio il vostro progettoIl pattern mvvm come strutturare al meglio il vostro progetto
Il pattern mvvm come strutturare al meglio il vostro progetto
 
Lens app trasformare il telefono in una fotocamera
Lens app trasformare il telefono in una fotocameraLens app trasformare il telefono in una fotocamera
Lens app trasformare il telefono in una fotocamera
 
NFC, Bluetooth e comunicazione tra app
NFC, Bluetooth e comunicazione tra appNFC, Bluetooth e comunicazione tra app
NFC, Bluetooth e comunicazione tra app
 
Nokia Asha webinar: Developing health-care applications for Nokia Asha phones
Nokia Asha webinar: Developing health-care applications for Nokia Asha phonesNokia Asha webinar: Developing health-care applications for Nokia Asha phones
Nokia Asha webinar: Developing health-care applications for Nokia Asha phones
 

Kürzlich hochgeladen

Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 

Kürzlich hochgeladen (20)

GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 

Introduction to 2D Game Development on Nokia Series 40 Asha Phones

  • 1. Series 40 Developer Training Getting Started with 2D Game Development on Nokia Series 40 Asha Phones Michael Samarin, Ph.D Director, Developer Training and Evangelism Futurice Oy +358 40 518 18 09 michael.samarin@futurice.com @MichaelSamarin
  • 2. Today’s Topics » Understanding Gaming Market for Series 40 » Where to get more information » 2D Game APIs in Mobile Java » Demo of 2D Game Building Concepts » NetBeans 7.1 and Game Builder Plugin » Walking Through Game Builder Sample » Series 40 Devices and 2D Games Performance
  • 3. Series 40 » 675 Million Devices » 3.9 Million Daily Downloads » Price range 35 – 140 Euro » Gaming Studios to compete with: EA, Gameloft, Rovio, India Games
  • 4. Nokia Developer Guides and Docs » http://www.developer.nokia.com/Resources/Library/Java/#!dev elopers-guides/ui-and-graphics/game-api.html 6/4/201 4 2
  • 5. Nokia Developer Guides and Docs » http://www.developer.nokia.com/Resources/Library/Java/#!dev elopers-guides/ui-and-graphics/game-api.html Oracle (Sun) Guides and Docs » http://developers.sun.com/mobility/midp/articles/gameapi/ » http://developers.sun.com/mobility/midp/articles/game/
  • 6. › Game API Package (MIDP) › javax.microedition.lcdui.game › GameCanvas › Layer › LayerManager › Sprite › TiledLayer
  • 7. › GameCanvas › Double buffered › Convenient for minimizing code of game loop › Methods for querying status of keys
  • 8. › GameCanvas public class MyCanvas extends GameCanvas implements Runnable { public void run() { Graphics g = getGraphics(); while(true) { // update the game state int k = getKeyStates(); // respond to key events flushGraphics(); } } }
  • 9. › › › Live › Demos: › › › ›
  • 11. › Graphical Assets – Sprite Star
  • 12. › Graphical Assets – Sprite Lightning
  • 13. › Layer › Abstract class, any visual game element › LayerManager › Combines layers together, provides viewport
  • 14. › Sprite › Animated game object › TiledLayer › Game areas, backgrounds
  • 15. › Sprite › Animated element of the game (character) › Define Sequence, Delay › Flip, Rotate › Define Reference Point › Detect Collisions
  • 16. › TIledLayer › Defines game backgrounds › Can be animated › Doesn’t have Sprite methods
  • 17. › › › Live › Demos: › › › ›
  • 18. › NetBeans Game Builder Plug-In
  • 19. › › › Live › Demos: › › › ›
  • 20. Asha 303 Nokia 111
  • 21. › Java Heap size (1 – 4 MB) › JAR file size ( 1 – 2 MB) › CPU speed › Screen Size 240x 320, 320x240, Consider 128x160 › Input Type: T9, Qwerty, Touch-And- Type › Use Nokia Device Matrix › Remote Device Access