Specifications

Developers guidelines | 3D graphics with Java ME
25 June 2010
Mobile 3D Graphics API
for the Java ME platform
(JSR 184)
This section describes in detail the Mobile 3D Graphics API for the Java ME platform
(called JSR-184). For more information about this standardised API, see
http://www.jcp.org/en/jsr/detail?id=184
.
Graphics commands
JSR-184 supports retained and immediate modes of scene rendering. The advantage
of JSR-184 retained mode is that it allows less 3D-savvy developers to readily build
complex 3D models. The retained mode simplifies the design of a 3D world by hiding
lots of low-level gritty details.
Unlike Micro3D Ver.3, JSR-184 does not implement graphics commands that can be
stored into lists and poured into the graphics pipeline.
Because the retained mode capabilities are built on top of the immediate mode
operations, the retained mode also benefits from hardware acceleration. This design
approach also allows the simultaneous use of both retained and immediate mode
operations with JSR-184. The ability to use both modes allows a programmer to put
the limited resources of the phone to their best possible use, rendering speed versus
resource consumption can be effectively balanced by using the appropriate mode for
different 3D graphics tasks.
Note that JSR-184 was designed so that it could be implemented on top of OpenGL
ES. The Sony Ericsson JSR-184 implementation does not support OpenGL ES
commands.
Object import
JSR-184 allows importing 3D content that contains geometric object data and
animation information. Object data can also carry attribute information, such as
material, fog, texture, compositing mode, and others. This 3D content can be
generated on PCs and workstations using 3D authoring programs and, using a plugin
translator, export the content into a .m3g file. The JSR-184 specification contains a
detailed description of this file format. The file can be stored as a JAR resource in the