Mobile 3D Graphics and Java Applications Development for Sony Ericsson Phones
The purpose of this article is to introduce the reader to Java-based mobile 3D technology as it appears Sony
Ericsson’s K500, K700, S700, and Z500 series, and the Vodaphone F500i and V800 mobile phones.
Java Mobile 3D Graphics (also known as JSR 184) is an API tailored for the generation and presentation of 3D
content on mobile platforms. This first article discusses an alternate 3D implementation, HI Corporation’s
Mascot Capsule Micro3D version 3 (also known as Micro3D). Sony Ericsson has chosen to implement both API
sets, allowing Mascot Capsule Micro3D serve as a migration path for 3D applications until Java Mobile 3D-enabled
devices become widely available. Here, we’ll also briefly try to address any possible point of confusion related to
the two implementations of 3D Java APIs in Sony Ericsson phones.
Mascot Capsule Micro3D as a Bridge
The JSR 184 specification’s final revisions were approved in November of 2003. There’s always an inevitable delay
as implementations of the specification are brought into alignment with the final release. For example, while the
Mobile Information Device Profile (MIDP) 2.0 specification was ratified in late 2002, MIDP 2.0-enabled phones are
just now starting to ship in volume eighteen months later. JSR 184 will be no exception in this area: many vendors
have spent most of this year putting the finishing touches on their JSR 184 implementations. Just now JSR 184-
enabled phones are starting to appear in quantity: Sony Ericsson expects to have millions of K500, K700, S700,
Z500, mobile phones on the market in 2005, and also that the Vodaphone-exclusive F500i and V800 phones will
sell well.
The dilemma a developer currently faces is how to write and deploy a 3D-capable Java application for product
visibility during this interval as such devices begin to appear in numbers. Aggravating the problem is a current lack
of 3D content in the JSR 184 file format. Sony Ericsson has teamed up with HI Corporation, a well-known maker of
3D rendering engines for embedded devices, to ease developers through this transition period. Therefore, the
K500, K700, S700, and Z500 series, as well as the F500i and V800 mobile phones come equipped with two 3D
APIs. These are: JSR 184 as implemented by HI Corporation, (through its Mascot Capsule Micro3D Engine version
4) for Sony Ericsson phones, as well as that company’s own embedded 3D implementation, known as Mascot
Capsule Micro3D Engine version 3. We’ll discuss the differences between these two versions in detail in the next
section.
Characteristics of Mascot Capsule Micro3D version 3
The Mascot Capsule Micro3D Engine version 3 implementation consists of a proprietary API and a rendering
engine. It has been widely adopted by a number of handset manufacturers, network operators, and embedded
vendors, making it something of a de facto standard, especially in high-tech consumer electronics countries like
Japan and Korea. Micro3D is designed to work on embedded devices and has a small resource footprint, requiring
only 100KB of RAM and about 250 KB of RAM.
Like Java Mobile 3D, Micro3D can import 3D geometry, appearance, and animation data from a file. HI
Corporation has written plug-ins that allow you to save 3D model and action information from high-end 3D
authoring programs such as Newtek’s Lightwave, Discreet’s Studio 3D Max, Avid System’s SoftImage, and Alias
System’s Maya and export it for use in a Micro3D Java application. Note that the data files exporting the 3D
information for import into the Micro3D environment are in a proprietary format.
Writing a Java MIDlet using the Mascot Capsule Micro3D Engine version 3 offers important benefits. First, you can
develop and deploy a 3D Java MIDlet immediately for product visibility. Second, given Micro3D’s reach in the
embedded market, it’s possible for you to migrate some unique 3D content and applications from other platforms to
3D-capable Sony Ericsson phones. Third, to migrate your application to JSR 184, you can leverage the expertise
gained during the development of the Micro3D application to expedite the process. Since both Mascot Capsule
Micro3D and JSR 184 use a similar a content import/export scheme, this reduces the amount of effort required to
migrate application code.
Overview of Mascot Capsule Micro3D version 3
HI Corporation’s Mascot Capsule Micro3D version 3 implementation consists of a 3D rendering engine and a Java
extension that exposes its proprietary API. To add 3D graphics to a J2ME application (termed a MIDlet), you simply
make calls to the Micro3D version 3 methods. No special linking or post processing is required when you build the
application’s JAR file.
The Micro3D version 3 engine implements all 3D operations with 32-bit integer arithmetic to achieve maximum
execution speed on processors that lack an FPU or graphics coprocessor. As a consequence, all coordinate
information and arguments that you pass to Micro3D version 3 methods use integer values. This can be slightly
jarring for experienced 3D programmers, since most 3D APIs typically deal with floating-point values.
read more about Mascot Capsule Micro3D version 3 API in next article



[...] Cell Phones Club The ultimate resource for handset developers Prev/Next Posts « Java Mobile 3D Graphics Development | Wednesday, January 25th, 2006 at 11:22 am [...]