So You Want To Develop Games For Mobile Devices - PowerPoint PPT Presentation

1 / 53
About This Presentation
Title:

So You Want To Develop Games For Mobile Devices

Description:

Mobile Devices Tap Wave ZODIAC. Palm Powered PDA. 3.8inch screen. 65K Colours ... SetColorKey(0) set black as transparent color. Tools 4 GAPI (Game API) ... – PowerPoint PPT presentation

Number of Views:112
Avg rating:3.0/5.0
Slides: 54
Provided by: stuart98
Category:

less

Transcript and Presenter's Notes

Title: So You Want To Develop Games For Mobile Devices


1
So You Want To Develop Games For Mobile Devices?
  • Stuart Slater
  • s.i.slater_at_wlv.ac.uk

SLIDE 5 Microsoft Reading July 2005
2
Overview
Project Management
Technical Skills
  • Project Planning
  • Mobile Devices
  • Software Platforms
  • HCI

You Must Consider
  • Emulators
  • Commercial Aspects
  • Graphics
  • Useful Web Addresses
  • Realistic Goals

3
Mobile DevicesOverview
4
JAVA Powered Phones
5
Mobile Phones - Java Powered
  • Mainly SYMBIAN OS
  • Most Popular Nokia Series 60
  • Screen up to 176 220 pixels

Elder Scrolls Travels - ShadowKey (N-Gage,
Bethesda 2004 ) http//www.elderscrolls.com/home/h
ome.htm
6
Common Java Devices
BT-Bluetooth M1 MIDP 1.0 3D
Java 3D API(JSR184) M2 MIDP 2.0

7
MIDP in short
  • MIDP Mobile Information Device profile part of
    the software engine of the phone.
  • MIDP 2.0 replaces MIDP 1.0 and is backwardly
    compatible, adds features such as
  • Improved Sound Support i.e. WAV
  • Includes Game API
  • Improved security and communication such as HTTPS
    and Push architectures.
  • Support for new user interface options.
  • More on MIDP - Java.sun.com/products/midp/index.js
    p

8
JAD AND JAR
  • JAD is a description of the game i.e. Path
  • JAR is the actual game files (archived).
  • When majority of games are written a JAD and JAR
    file are created that are then both needed by the
    Target Device.

9
3D APIs
  • Open GL ES
  • Free to use and download
  • Lighting,ViewPorts, Multitextures,Fog,Blending,
    traingles etc.
  • Libraries etc need to be available on the phone
    and this can have significant memory/cost
    implications.
  • Tend to be part of a dedicated game engine
  • J2ME 3d (JSR184)
  • Will be native in newer phones and so games
    require a much smaller download/memory demand.
  • 19 Handsets Currently Support JSR184.

Source March Feature DEVELOP MAGAZINE 2004.
Doug Goodwin.
10
Developing For Nokia
  • i.e. N-Gage, Nokia 6600,6680,N91
  • www.forum.nokia.com
  • Check your device and download the correct SDK.
  • Requires an IDE such as Code warrior (available
    from address above) or Eclipse (www.eclipse.org)
  • Can be programmed with java or Now C for
    Symbian OS.

11
Java Devices Continued
  • Content Delivery
  • FTP download, MMC (N-gage), Bluetooth, USB cable.
  • Commercially
  • Delivery method is a pay and download through a
    provider such as Vodafone Live.
  • Quality Control document needed from provider
    such as Babel Media.
  • Costs typically 5 per game, exception is MMC
    based N-gage around 30.

12
Microsoft Powered Phones PDAs
13
Mobile Phones - Microsoft Powered
  • Microsoft Smart Phone Devices-
  • Smart Phone 2002, 2003, 2003 2nd Edition.
  • 65k TFT display
  • (176x220 pixels)
  • SPV 500

14
Mobile Devices Microsoft Powered PDAs
  • Microsoft Pocket PC Devices-
  • Pocket PC 2002, 2003, 2003 2nd Edition.
  • Up to 640480 Screen (IPAQ 4700)

Ultima Underworld 1.0 by ZIO Interactive, Inc,
http//www.pocketgear.com/software_detail.asp?id4
042associateid8
15
Pocket PC Devices
  • Easily programmed with SDKs such as POCKET
    PC2003 using C or embedded C.
  • Uses Visual Studio 2003/2005 development
    environment.
  • Emulators included, plus ability to send directly
    to target device.

16
Palm OS Powered PDAs
17
Mobile Devices Palm Powered
  • Palm Operating System.
  • Up to 64K Colours.
  • Low Cost.

Dragons Bane, http//www.palmcreations.com/
18
Mobile Devices Tap Wave ZODIAC
Palm Powered PDA 3.8inch screen 65K
Colours Bluetooth Downloadable games or SD Card
Format, 6 Hours Battery life.
www.tapwave.com
Source, www.t3.co.uk, December 2004.
19
Mobile DevicesDedicated Games Hardware
20
Mobile Devices - Nintendo DS
Nintendo DS (Dual Screen) Game boy advance sales
511 Million units. Dev Kits require licencing,
closest possible is to buy a GAMEBOY Colour SDK
and hardware interface for around 140. Emulators
available.
21
Mobile Devices Sony PSP
1.8Gb DVD 480 x 272 screen 7.1 Audio
22
Mobile Devices Sony PSP
  • Key Tools
  • Code Warrior IDE
  • C/C Assembly
  • Users must be
  • licenced developers
  • with Sony Computer
  • Entertainment.
  • www.metrowerks.com

23
Miscellanous
  • Gizmondo
  • Game Park GP32.
  • www.gamepark.com

24
Mobile Device Software Development
25
Tools 1 C
  • Advantages
  • Fast robust development language
  • Easier migration for C, Visual Basic and Java
    Programmers.
  • Very Reliable Emulators.
  • Disadvantages
  • Only Suitable for Microsoft powered devices.
  • Limitations with 3D Games due to lack of support
    for mobile graphics APIs such as DirectX.

26
Tools 2 Java/J2ME
  • Advantages
  • Its JAVA so code reuse can be very high.
  • Industry Standard for Mobile Phones so large
    marketplace.
  • Proven track record with mobile phone gaming.
  • Disadvantages
  • Code needs compiling and testing on each target
    Device.
  • Emulators can be very FLAKY.

27
Tools 3 Diesel/C
  • Advantages
  • Cross platform Symbian, Microsoft Pocket PC and
    Microsoft DirectX PC development of games.
  • Common use of C so easy migration in mainstream
    industry.
  • Very Powerful for 3D Gaming.
  • Disadvantages
  • Expensive costs to licence typically 10K euros.
  • Only covers Nokia series 60 devices such as
    N-Gage.

http//www.3darts.fi/mobile/
28
Tools 3 Diesel/C
The rendering pipeline of DieselEngine SDK is
capableof handling more than 100 000 polygons
per second in real-time on Nokia Series 60
devices.1
Easy Integration of 3D Models using supplied
exporters.
1http//www.3darts.fi/mobile/de.htm
29
Diesel 3D Models
  • Created in 3DStudio Max or MAYA, exporter plug in
    comes with the Diesel SDK and allows the user to
    export .dsc files

30
Diesel
  • Doesnt support Png uses color keying
  • Use .SetAutoColorKey (sets transparent color
    based on an images (0,0) coordinate.
  • SetColorKey(0) set black as transparent color

31
Tools 4 GAPI (Game API)
  • Very powerful API but requires an extremely high
    level of programming knowledge, a major draw back
    is its similarity to DirectDraw so 3D almost
    impossible without additional libraries.
  • Needs user to really download other libraries to
    get any real use from it.

32
This is a Mobile Device Not a PC
33
  • Mobile devices struggle with
  • Lack and speed of memory
  • Processors that have clock speeds, that are not
    comparable to similar PC processors.
  • Cant do floating point and struggle with
    division.
  • Have phone based interrupts like sounds etc that
    need careful management to get the best from a
    game, i.e. when pressing buttons clicks can be
    heard slows down your game.

SO PLAN AND THINK CAREFULLY OF WHAT IT IS YOU ARE
TRYING TO ACHIEVE.
34
  • But dont forget areas such as HCI else you will
    end up with a PC application on a phone.
  • Plus if you develop and an application that
    crashes the game or phone then you could easily
    upset your customer.

35
Graphics and All That
36
Beginner C
  • Use Picture Box
  • Build Action- (Content) (A very VB 6.0 approach)
  • More advanced Users should use Images as Embedded
    resources, then use the doPaint method to
    display image (A very Java Approach)

37
  • PNGs approx 4K per image, typically 8
    directions, 4 animations per direction 128K
  • BMP 12k per image.
  • JPG is 2K per image.
  • GIF IS 1k Per Image, limited in colours.
  • The 3D Model is approx 31k FOR .x FILE 65kb FOR
    TEXTURE.

38
Formats
  • JPEG Can take to to decompress
  • BMP Memory Hungry
  • PNG - Very popular in Java Phone Dev due to
    balance between memory and speed of display.
  • GIF

39
Smoke Mirrors
  • Computer Games are about Smoke and Mirrors i.e.
  • Layered textures,
  • Billboarding
  • Same level different graphics.
  • AI that isnt really intelligent.
  • Only drawing what the user can see.
  • Games written primarily in 3D packages.

40
Final Words
  • It is much easier to get a game up and running
    using a Microsoft Smart Phone or PDA using C.
  • Java is an option for specific devices but some
    emulators are a little flaky.
  • Plan the project well before touching the
    keyboard.
  • Choose a project that you can complete on time.

41
Projects
  • Academic Aims
  • Critical evaluation is more about being critical
    about what you have achieved against your aims
    than how you enjoyed doing it.
  • Research isnt always internet sites but peer
    reviewed material such as
  • Books, and not always how to books.
  • Research papers, www.gdconf.com

42
Useful Links
43
Game Engines
  • Free Download
  • HIs MASCOT CAPSULE www.hicorp.co.jp
  • (Symbian , PALM OS, SmartPhone)
  • Superscape Swerve www.superscape.com
  • (Symbian , PocketPC)
  • Synergenix Morphun
  • www.mophun.com
  • (N-gage,Gizmondo,Symbian)
  • In-Fusio Exen
  • www.in-fusio.com)
  • Symbian only

44
Symbian Development
  • www.flipcode.com/articles/article_mobilegfx01-pf.s
    html
  • Article on developing a game engine from a real
    developer including source code.

45
HCI related for Microsoft Powered Devices
  • http//msdn.microsoft.com/library/default.asp?url
    /library/en-us/dnnetcomp/html/grfCraftingSmartphon
    eUserInterfacesUsingNETCompactFramework.asp
  • Discusses the controls for the Pocket PC
    including dynamic loading.

46
Pocket PC Games Development
  • www.pocketpcdn.com/sections/gapi.html
  • An excellent source of tutorials on all aspects
    of PocketPC games developments, libraries,
    tutorials etc.

47
Pocket PC Intermediate optimisation
  • Developing Smartphone Games by Andy Sjostrom
    MSDN
  • Offers an insight into optimsing games,
    limitations of some devices, memory management.

48
Programming With Cheese
  • www.dcs.hull.ac.uk/admissions/resources/Smartphone
    /index.html
  • An excellent introduction to aspects of game
    development on smartphones uses a very much Java
    approach and provides a very short learning curve
    for JAVA developers.

49
Open GL ES
  • www.khronos.org

50
Diesel Development
  • www.3darts.fi/mobile/dieselengine.htm - Diesel
    engine home page.
  • www.pocketpcdn.com/articles/print_dieselengine1.ht
    ml - Getting started with Diesel

51
Books
  • HARBOUR,J.S. (2001) Pocket PC Game Programming
    Using the Windows CE Game API. USA Prima Tech.
    ISBN 0761530576
  • KEOGH,J.(2003) J2ME The complete reference. USA
    McGrawHill/Osbourne. ISBN 0-07-222710-9
  • Petchel, T. (2001) Java 2 Game Programming. USA
    Premier Press. ISBN 1-931841-07-1

52
Mobile Games Companies
  • www.dittostudios.com
  • www.coyotedev.com
  • www.iomo.co.uk
  • www.ifone.com
  • www.codemonkeys.com
  • Ww.kujo.com

53
Thank You for Listening
Write a Comment
User Comments (0)
About PowerShow.com