Abstract
Currently the two major obstacles for the limited growth of 3D application development to become a mainstream technology for everyday use are a) the computational and rendering requirements of 3D and b) the lack of a programming model that is appropriate for widespread use by developers who are not experts in the field of 3D graphics. But as the hardware gets faster, software will become the critical factor in the further growth of 3D application development. In this paper we present a software architecture for a 3D rendering package which can operate in one of two modes: it either ray-traces the scene, creating photorealistic images, or it transforms the scene into a set of graphics primitives typically supported by a standard graphics package. The renderer is object-based rather than drawing based and consists of an extensible set of objects that perform a variety of operations. The 3D objects as well as the imaging objects (like Image, Screen, Light) are the building blocks that lend themselves to programmer customization through techniques such as subclassing. State-of-the-art functionality and advanced algorithms can be incorporated into this renderer with a minimum amount of programming (i.e. Analysis/understanding of existing code and creation of new code).
A thorough test of this approach has been carried out by using the renderer as the platform for teaching and for lab assignments in several undergraduate and graduate courses at two different universities. Experiences with this (inhomogeneous) user population prove that the system meets its design goal of being highly customizable and extendable.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Margaret A. Ellis and Bjarne Stroustrup. The Annotated C++ Reference Manual Addison-Wesley, Reading, Mass., 1990.
Dieter W. Fellner. Computer Grafik, volume 58 of Computer Science Monograph. B.I. Wissenschaftsverlag, Mannheim, 1988.
Andrew S. Glassner, editor. An Introduction to Ray Tracing. Academic Press, London, 1989.
ISO. Information Processing Systems - Computer Graphics - Graphical Kernel System (GKS) - Functional Description, IS 7942, 1985.
ISO. Information Processing Systems - Computer Graphics - Programmer’s Hierarchical Interactive Graphics System (PHIGS), Amendment 1–3, IS 9592/Am. 1 – 3, February 1992.
Kubota Pacific Computer. Dorù Programmer’s Guide, 1991.
R. Kuchkuda. An Introduction to Ray Tracing. In R. A. Earnshaw, editor, Theoretical Foundations of Computer Graphics and CAD, volume 40 of NATO ASI Series F, pages 1039 – 1060. Springer, Berlin, 1988.
Lewis J. Pinson and Richard S. Wiener, editors. Applications of Object-Oriented Programming. Addison-Wesley, Reading, Mass., 1990.
Arnold Schönhage, Andreas Grotefeld, and Ekkehart Vetter. Fast Algorithms. B.I. Wissenschaftsverlag, Mannheil, 1994.
Silicon Graphics Inc. The OpenGL Reference Manual — The Official Reference Document for OpenGL. Addison-Wesley, Reading, Mass., 1st edition, 1993.
Paul S. Strauss and Rikk Carey. An Object-Oriented 3D Graphics Toolkit. Computer Graphics, 26 (2): 341 ’ 349, July 1992.
Turner Whitted. An Improved Illumination Model for Shaded Display. Communications of the ACM, 23 (6): 343 – 349, June 1980.
Garry Wiegand and Bob Covey. HOOPS Reference Manual. Ithaca Software, 1991.
Peter Wisskirchen. Object-Oriented Graphics: From GKS and PHIGS to Object-Oriented Systems. Springer, Berlin, 1990.
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 1996 EUROGRAPHICS The European Association for Computer Graphics
About this chapter
Cite this chapter
Fellner, D.W. (1996). Extensible Image Synthesis. In: Wisskirchen, P. (eds) Object-Oriented and Mixed Programming Paradigms. Focus on Computer Graphics. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-61062-2_2
Download citation
DOI: https://doi.org/10.1007/978-3-642-61062-2_2
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-64676-8
Online ISBN: 978-3-642-61062-2
eBook Packages: Springer Book Archive