java me vs. flash lite: a comparison of mobile phone game development alex koller supervisors: greg...

16
Java ME vs. Flash Java ME vs. Flash Lite Lite : : A A comparison of mobile comparison of mobile phone game development phone game development Alex Koller Supervisors: Greg Foster, Madeleine Wright

Upload: donna-woods

Post on 16-Dec-2015

214 views

Category:

Documents


0 download

TRANSCRIPT

Java ME vs. Flash LiteJava ME vs. Flash Lite::AA comparison of mobile comparison of mobile phone game phone game developmentdevelopment

Alex Koller

Supervisors: Greg Foster, Madeleine Wright

Overview of Presentation

1. Project Synopsis

2. Research Findings

3. Demonstration

4. Results

5. Conclusions

6. Future of MobileGame Development

7. Questions?

Project Synopsis

Comparison of mobile game development between Java ME and Flash Lite 2.1

We investigated the available APIs Understanding capabilities of each platform Designed and developed a cross platform

game designed to test the capabilities of Java ME and Flash Lite

Project Synopsis Cont.

Developing a complete game allowed us to: Test all aspects of game development Test supporting functions, such as persistent data

storage, menu creation, etc. Assemble quantitative comparison results

Research Findings

Game types and genres 3D games becoming more viable – phones with

increased processing power and onboard GPU Simple and addictive game play over graphics Simple user controls Arcade-style games are well suited, and have

been successful on mobile phones

Research Findings Cont.

Important features of a successful arcade-style mobile game Decent speed/frames per second Minimal memory usage Quick return on investment – short development

time Small file size for transfer and storage Addictive, easy to play and fun!

Immerse the player in the game

Research Findings Cont.

Development Environments Java ME:

Many development environments to chose from Sun Wireless Toolkit excellent free choice Comes with many utilities for emulating, testing, method

profiling, memory monitoring, etc. Flash Lite:

Flash CS3 Professional is the only option Propriety software (US$600) Crashed multiple times while developing, emulator

occasionally refused to run

Research Findings Cont.

Development Environments Compared

** Average of five successive start-ups** Initial memory usage immediately after start-up

Development Time Roughly three weeks for each platform

Development Environment Start-Up Time (seconds) * Memory Usage (mb) **

Netbeans 25.6 121

Eclipse 13.2 67

IntelliJ IDEA 24.6 140

Java Wireless Toolkit 3.4 33

Flash CS3 Professional 20.4 89

Demonstration

Black Sky is a top-down perspective, arcade-style, tile-based game

Both implementations are almost identical

Black Sky(Java ME)

Black Sky(Flash Lite)

Results

Frames Per Second Average FPS over 30 second period:

Java ME: 22.91 Flash Lite: 19.75

Memory Usage Peak memory usage over one minute period:

Java ME: 516 kb Flash Lite: 1032 kb

Java ME peaks when initialising, while Flash Lite continues to rise, peaking at the end.

Results Cont.

Lines of Code Java ME more ‘complete’ than Flash Lite version

Java ME: 3000 lines Flash Lite: 1000 lines

Final file size: Most mobile phone games aim for ≤ 200kb

Java ME: 81.5 kb Flash Lite: 59.3 kb

Results Cont.

Problems Encountered: Java ME:

Creating GUIs required some trial and error – can only be created programmatically

Flash Lite: Flash CS3 does not natively support MIDI – requires a

laborious 10 step workaround Difficulty creating a tile-based game engine without

BitmapData object (introduced in Flash 8) Input validation (button presses) too slow for fast-paced

games – results in unresponsive controls

Conclusions

Both Java ME and Flash Lite are capable mobile game development platforms

Java ME is more mature than Flash Lite Java ME has been in use for many years Flash Lite is a relatively new platform

Java ME has more variety in development environments

Conclusions Cont.

The game we created allowed us to perform comprehensive testing on both platforms Memory usage and frames per second

Java ME outperformed Flash Lite in these two vital tests Number of lines of code and final file size

Flash Lite achieved better results

Java ME is better than Flash Lite For almost all aspects of mobile game

development, we found Java ME enabled us to achieve our goals more precisely and easily

Future of Mobile Game Dev. Java ME

Solid development being made on the Java ME framework, specifically the gaming APIs

Over 1 million developers currently using Java ME Flash Lite

Flash Lite 3.0 recently released Focus is on video/multimedia, not game development Based on Flash 8 (still no BitmapData object though)

At this stage, Java ME is staying ahead of Flash Lite in terms of mobile game development

Questions?