Graphics Reference
In-Depth Information
program in assembly language, C, or a higher-level procedural, object-oriented,
or functional language. Developers of 3D graphics will have the choice of pro-
gramming at a “low” level by writing shader programs to take advantage of all
the latest algorithms and tricks of the rapidly developing art and science of ren-
dering (both photorealistic physics and cartoon physics), typically in OpenGL in
its various forms or in Microsoft's Direct3D. Alternatively, they can sacrifice that
kind of direct control of the GPU by programming at a higher level of abstrac-
tion, one that has a much less steep learning curve. At that higher level, they can
program in immediate mode and maintain their own data structures to drive the
GPU, or they can take advantage of retained mode, which offers convenient func-
tionality especially for displaying hierarchical models. The more the package aids
the developer, the greater the chance that some performance is sacrificed, just as
it is with the use of higher-level languages with many features. At the time of this
writing, shader programming clearly is the dominant programming model, but
this may well change. The one trend we can comfortably predict is that mobile
computing, taking advantage of both rapidly increasing device performance and
better cloud services, will make available on smartphones and tablets the amazing
real-time graphics provided today by high-end graphics cards.
 
Search WWH ::




Custom Search