Developing Games for J2ME Technology- Enabled Mobile Devices

Similar documents
Java 2 Platform, Micro Edition

JSR 248: Taking Java Platform, Micro Edition (Java ME) to the Next Level

DAY 3 J2ME Aalborg University, Mobile Device Group. Mobile. Mobile Phone Programming

Who am I? Wireless Online Game Development for Mobile Device. What games can you make after this course? Are you take the right course?

Software Development & Education Center. Java Platform, Micro Edition. (Mobile Java)

Minne menet, Mobiili-Java?

MMAPI (Mobile Media API) Multimedia Framework for Mobile Devices

Mobile Application Development. Introduction. Dr. Christelle Scharff Pace University, USA

Mobile Game Programming. Just that facts.

All about the new SCMAD Certification Exam

Java Technology-Based VAS in China Mobile: Today and Tomorrow

Mobile Game Programming

LAB-6340: Advanced Java ME Programming - Streaming Video From Server to Your Device

Petr Suchomel Architect, NetBeans Mobility

Building a Java ME Test Suite in 15 Minutes

Standards,Tools, & Best Practices Editor: Sumi Helal University of Florida

Mobile Station Execution Environment (MExE( MExE) Developing web applications for PDAs and Cellphones. WAP (Wireless Application Protocol)

Distributed Gaming using J2ME. By Rekha Vaddepalli

مريم سعد جعفر رانيا عبد السجاد علي سامي سمادير عبد العباس ياسمين عبد االمير

Hardware Accelerated Graphics for High Performance JavaFX Mobile Applications

Developing Mobile Applications

DAY 3 J2ME March 2007 Aalborg University, Mobile Device Group Mobile Phone Programming

phoneme: High-performance, product-quality GPLv2 CDC + CLDC stacks Terrence Barr

GPS AND MOBILE HANDSETS

INTERNATIONAL JOURNAL OF PURE AND APPLIED RESEARCH IN ENGINEERING AND TECHNOLOGY

IJRDTM Kailash ISBN No Vol.17 Issue

Mobile Java: A New Opportunity for Data Services (Executive Summary) Executive Summary

SMARTPHONE OPERATING SYSTEMS

Digital Convergence Vision and Architecture. Timo Poikolainen Vice President, Marketing Technology Platforms Nokia

Mobile Information Device Profile (MIDP) Alessandro Cogliati. Helsinki University of Technology Telecommunications Software and Multimedia Laboratory

SDR Forum Meeting Report

Improved Mechanism for Efficient object Pooling in J2ME Based Mobile Phone

Agenda MULTIMEDIA MESSAGING MESSAGING EVOLUTION. Beatriz Ballesteros. Who is Telefónica Móviles. Evolution of Messaging Applications

Using Aspect-Oriented Programming to Streamline Mobile Application Development

Java Community Process Program: State of the Community State of the Community December 2003

Project Overview. Readings and References. Initial project motivation. Opportunity. References. CSE 403, Winter 2003 Software Engineering

Project Overview. CSE 403, Spring 2003 Software Engineering.

Project Overview. Readings and References. Opportunity. Initial project motivation. References. CSE 403, Spring 2003 Software Engineering

Bringing J2ME Industry Practices into the Undergraduate Classroom (Auburn OK Program)

Whiz-Bang Graphics and Media Performance for Java Platform, Micro Edition (JavaME)

Wireless Internet Platform for Interoperability (WIPI(

Lecture 12. Motivation. Designing for Low Power: Approaches. Architectures for Low Power: Transmeta s Crusoe Processor

Overview of Java 2 Platform, Micro Edition (J2ME )

Developing corporate mobile applications. An alternative approach to native development

JXTA for J2ME Extending the Reach of Wireless With JXTA Technology

What's New In Mobile & Embedded Java? A Technology Update

CM0256 Pervasive Computing

BREW. Romeu Vanuci Regional Manager. QUALCOMM Proprietary

PennBench: A Benchmark Suite for Embedded Java

Mobile Phone Programming Life Long Learning

Reach the Next Billion with Engaging Apps: Full Developers

Great difference of Network Competition between the U.S.A. and Japan

SMARTPHONE MARKETS AND TECHNOLOGIES

THE SHORT MESSAGE MANAGEMENT SYSTEM BASED ON J2ME

Vipera OTA Provisioning Server

Introduction to Mobile Application and Development

Opera - Simply The Best Internet Experience. 3Q04 Results. November 12, 2004

Efficiency of Java Code for Mobile Application Development

INSTITUTE OF AERONAUTICAL ENGINEERING (Autonomous) Dundigal, Hyderabad

Examine these great deals.

ST.MARTIN'S ENGINEERING COLLEGE Dhulapally,Secunderabad-014

Series 40 6th Edition SDK, Feature Pack 1 Installation Guide

Activation of Home Automation System via Mobile Technology

Acknowledgments Introduction p. 1 The Wireless Internet Revolution p. 1 Why Java Technology for Wireless Devices? p. 2 A Bit of History p.

Diploma in Web & Multimedia Development LC201

Building Mobile Applications. F. Ricci 2010/2011

File Annotation and Sharing on Low end Devices in PAN

Advanced Data Organization for Java-Powered Mobile Devices

Wireless service developing for ubiquitous computing environments using J2ME technologies

Cisco Wireless Video Surveillance: Improving Operations and Security

Web Conferencing Service Reduces Company Travel Costs, Enhances Collaboration

eswt Requirements and High-Level Architecture Abstract Document Information Change History

THE JAVA ECOSYSTEM Platform for Web & Mobile Games

In order to support developers, there needs to be a number of tools available which may be involved in the ultimate solution.

J2ME OGC WMS Client user manual

Oracle FLEXCUBE Direct Banking

Requirements and Issues of V**s for Mobile Terminals

RFMA 2017 March 5 7, 2017

Developing mobile UI

Copyright

Technical Manual. Motorola C381p Handset J2ME Developer Guide. Version 01.00

Wireless Java-enabled MIDP devices as peers in Grid infrastructure

Barclay s 2009 Worldwide Wireless and Wireline Conference

COPYRIGHTED MATERIAL. Index

ProvideX On Handhelds

CDMA2000: Insight into the Future of 3G Devices and Applications. Live Webcast February 28, 2007

GrinderBench for the Java Platform Micro Edition Java ME

Bluetooth Scatternet Application. Sun Code for Freedom

Corporate Presentation. September 2004

How to Build, Run, and Develop Code With the phoneme Open Source Project Stuart Marks Hinkmond Wong Sun Microsystems, Inc.

In this third unit about jobs in the Information Technology field we will speak about software development

How ercp stacks up against Android and other Mobile Rich Client Platforms. Ken Walker, J9 Java Class Libraries David Girle, Client Solutions WPLC

DVB-HTML MIDP 2.0 Graphics Architectures for Non-Desktop Devices

RF and Microwave Test and Design Roadshow. 5 Locations across Australia and New Zealand. National Instruments. ni.com

CHAPTER -VI PROBLEMS AND PROSPECTS OF CELL PHONE SERVICES

Hands-On Workshop: 3D Automotive Graphics on Connected Radios Using Rayleigh and OpenGL ES 2.0

Cisco Tetration Analytics

DIGITAL MUSIC AND MOBILE HANDSETS

Developer Case Study. BlackBerry Streamlines IT Change Request Approval Process. Industry Healthcare

Opera - Simply The Best Internet Experience. 4Q05 Results. February 20, 2006

Transcription:

Developing Games for J2ME Technology- Enabled Mobile Devices Nicolas Lorain Sr. Product Manager Wireless Java Technologies Sun Microsystems, Inc.

Session Speakers Nicolas Lorain Sr. Product Manager, Wireless Java Technologies, Sun Microsystems Dave Lloyd Chief Technical Officer, ngame Thomas Landspurg Chief Technical Officer, In-Fusio Ariel Levin Staff Engineer, Sun Microsystems 2

The J2ME Platform and Game Development Explore technical issues related to the development of game applications for mobile devices, and how to address them with Java 2 Platform, Micro Edition (J2ME ) technology 3

Objectives Identify key issues related to game development on mobile devices Learn how the J2ME platform can be used to address these issues Review recommended development practices Analyze sample MIDP-based applications 4

About Nicolas Lorain Senior Product Manager at Sun Microsystems, in charge of CLDC, MIDP, and the J2ME Wireless Toolkit Moderates Sun Microsystem s KVM-INTEREST mailing list Speaks frequently on wireless and J2ME technologies at a number of industry events (e.g., 3GSM World Congress, PalmSource) 5

A Few Facts There will be 100 million mobile game players by 2006. Strategy Analytics, May 2001 J2ME VM sales will reach over 680 million units in 2004. ARC group, July 2001 There are now over 50 J2ME platform-enabled handset models available from 15 manufacturers: Casio, Fujitsu, Hitachi, LG, Mitsubishi, Motorola, NEC, Panasonic, RIM, Samsung, Sharp, Siemens, Sony and Toshiba 6

Agenda ngame Ltd, In-Fusio and Sun Microsystems will address the following items: Platform Differences Portability Business Model Future Directions 7

Dave Lloyd Chief Technical Officer ngame

About David Lloyd Managing Director and founder of Oxford and Cambridge Compilers Ltd where he designed and built compilers for scientific and engineering applications ngame Chief Technical Officer and co-founder Two years experience building the architecture for ngame s innovative Content Server and Game Scripting Language 9

Challenge 1: Limited Memory 10 Practical limit of JAR-file about 100kb Typical memory limit about 200kb Code and data trade off in memory usage Possible tactics: Avoid many classes as class overhead is several kb Use the default package Obfuscate the code to reduce length of identifiers Work with a server to fetch assets on the fly

Challenge 2: Screen Estate Many different screen sizes ranging from 90x90 to 300x300 Monochrome, greyscale or colour? Which colours? No AWT or similar in MIDP Possible Tactics: Images should be available in variety of resolutions and colour formats Target a small number of typical layouts and allow stretch Implement simple AWT clone with layout manager Use Forms wherever possible 11

Challenge 3: User Input Keypad is common but not guaranteed Keypad layout and usability is very variable important for playability Touch screens on higher end devices Possible Tactics: Separate Keypad and Touch Screen UI designs Include a button area on Touch Screen layouts Test on many devices! 12

Challenge 4: Sound No support for Sound in MIDP 1.0 must use Vendor APIs Handset capabilities vary from single tone, to simple polyphonic tone generator, General MIDI and MP3 or other wave format Possible tactics: Provide sound assets in many forms Use a portability layer to access Vendor APIs 13

Challenge 5: Portability at Deployment Fully portable games will be too large! Need a range of builds to cover available handsets Each must be tested on each handset Possible tactics: Build time configurability ngame Wireless Toolkit to assist in portability 14

Challenge 6: Commercial Return No copy protection with the J2ME platform No license management on handset Additional support needed for revenuegenerating mechanisms e.g., posting of high-scores, downloading of the next level 15

Thomas Landspurg Chief Technical Officer In-Fusio

About In-Fusio Provide Game Services for operators Wap, SMS, J2ME platformbased and ExEn games Deployed with 14 operators in Europe and Asia Active member of the JSR-118 (MIDP 2.0) expert group Contact: thomas.landspurg@in-fusio.com 17

Wireless Game Challenges 18 Platform differences: Screen size/colors CPU Memory Implementation differences As game requirement are extremely high, some small differences in VM or API implementations can generate a big difference in resulting game Business models differences Same game may use different BM depending of the operator

Testing!!! Huge issue: How can you ensure that a Game run with the same quality on all devices? Assuming hundreds of Java technologybased devices, can you physically test the game on all those devices (and in all the languages) Use risk management instead of full testing Use common building blocks, and test these blocks on all target devices 19

Some Solutions Take in account multiple size/platform issues from the beginning (Game Design phase) Create some building block library, tested on a lot of platform J2ME platform improvement (JSR-118 and others) provide some solutions for games Use server to solve some of these issues Dynamic jar file creation on server side 20

J2ME Platform, Game API: Provide Some Solutions Speed! High level functions for games Behavior of such API will be tested with TCK -> increased game interoperability Reduction of development time and game quality increase Reduce downloaded code size 21

Server Make the difference between a Wireless game and an embedded game (or GameBoy game) With an end-to-end, Java technology-based solution, it s easiest to do: Server side dynamic creation of downloaded content Multiplayer games (same libraries or convention can be used on both sides) Extensions: server-side game logic 22

Future Directions Networking Provide game-oriented multiplayer facilities, independent of the underlying protocol Lobby Presence Game-oriented graphic features More 3D Vector animation Real-time graphic transformations 23

Ariel Levin Staff Engineer Sun Microsystems, Inc.

New J2ME Wireless Toolkit Features Network monitor Memory monitor Method call profiler Performance simulation MIDlet suite size reduction (through obfuscation) 25

Network Monitor 26

Memory Monitor 27

Memory Monitor (Cont.) 28

Method Call Profiler 29

Summary Choose a design strategy to address large variety of devices Test on physical devices as well as emulators Keep in mind your target business model when developing a game application MIDP 2.0 (JSR-118) will provide an improved gaming environment 31

If You Only Remember One Thing The Java 2 Platform, Micro Edition (J2ME ) is a viable platform to develop and deploy wireless games. Developing games with J2ME technology requires a good design methodology, focus, and creativity. 32