Graphics Reference
In-Depth Information
hardware capacity and software development is poised to increase the viability
and use of “embedded” 3D.
16.5.1 3D on Mobile Devices
The typical high-end smartphone or tablet includes a hardware-accelerated, pro-
grammable pipeline that includes vertex and pixel shaders. To provide a consistent
hardware-independent API for these devices, a lightweight version of the OpenGL
API has been developed, named OpenGL ES (Embedded Systems). This API is
currently pervasive in the mobile space, with the notable exception of Windows-
based phones and tablets driven via DirectX 9 APIs.
The design of the ES variant primarily involved adjusting to the limitations of
mobile devices with regard to processing capability, memory availability, mem-
ory bandwidth, battery life, etc. For example, precision qualifiers were added to
the shading language to allow applications to choose lower numeric precision to
reduce use of the processor. Some features that place a large burden on the proces-
sor, such as pseudorandom noise computation, were eliminated. Additionally, the
ES variant promotes the strategy of downloading precompiled (binary) shaders,
since compilation of shader code is computationally expensive.
16.5.2 3D in Browsers
Efforts to define a text-file format for 3D scene specification, suitable for Internet
delivery of 3D content to web browsers (as well as for cross-application transfer
of scene/model specifications), date back to 1994's first version of VRML (Vir-
tual Reality Modeling Language). Now extensively evolved and renamed X3D,
this ISO standard maintained by the Web3D Consortium provides XML declara-
tive specification of 3D scene graphs, supporting the fixed-function pipeline and
shader extensions. Special scripting and interaction/animation nodes provide some
dynamics, and navigation nodes provide for setting up walkthrough/flythrough
navigation, making it more than just a generator of static images. However, the
lack of native support for X3D in popular web browsers has slowed adoption, and
the format has not gained traction with website authors outside of academia.
The potential for widespread use of 3D content on websites is far higher with
WebGL, a JavaScript API native to most prominent browser brands, supporting
immediate-mode 3D rendering into the HTML5 canvas. Based on OpenGL ES, it
has no fixed-function pipeline and requires the use of shaders for all appearance
control. Thus, programmers wanting a fixed-function model and/or a retained-
mode scene graph will rely on middleware platforms, of which several are cur-
rently in development.
For information on this rapidly evolving topic, access the online materials for
this chapter.
16.6 Discussion
This chapter has provided a brief introduction to graphics platforms with differ-
ing design goals and levels of abstraction. No one model has been or is likely to
become dominant any more than one programming model or language has become
dominant. Developers will be able to choose how much control they want to have
over the underlying GPU hardware, much as they have the choice of whether to
 
 
 
 
Search WWH ::




Custom Search