Resources

j3d.org

Java 3D Book Index

This section contains references to books on 3D graphics with Java and other books that may be useful when learning about 3D graphics programming in general. Links to Amazon so we can earn a little spare cash to help pay for the site maintenance.

OpenGL

  • OpenGL(R) Programming Guide: The Official Guide to Learning OpenGL, Version 1.4 By Woo et al (Published by Addison-Wesley, 2003, ISBN 0321173481). Otherwise known as The Red Book. If you want to understand a lot of the theory as well as some of the more esoteric parts of Java3D, this book will help you out. It is a tutorial to OpenGL and covers almost all aspects of the API in detail, with lots of examples. Make sure you purchase the 4th edition, which is the updates for OpenGL 1.4.
  • OpenGL(R) 1.4 Reference Manual, 4th Edition By Dave Shreiner (Published by Addison-Wesley, 2004, ISBN 032117383X). Compendium to the Red Book, this is known as the Blue Book (for obvious reasons). Basic dead-tree version of the OpenGL specification - every single function call and data type. Very handy for when you get beyond learning and needing to just write the code.
  • OpenGL Shading Language By Randi J Rost (Published by Addison-Wesley, 2004, ISBN 0321173481). Sibling book to the Red Book, this covers all you need to know about the GL Shading Language. From simple shaders to a complete specification of all the APIs available.
  • Java 3D

    Reviews

    English

    Chinese

    • Java 3D Interactive 3D Programming (Chinese), Jie Zhang, International Publishing Incoming and Exporting Company, ISBN 7115082316

    Japanese

    • The Java 3D API Specification is available from the publisher ASCII Corportation. The prices is 6400 Yen.

    General 3D Graphics

    • Real-Time Rendering (2nd Ed)
    • by Tomas Moller and Eric Haines (published by A K Peters July 2002, ISBN 1568811829) - this book is an excellent source for information on 3D Graphics. This book would be excellent for those working directly with OpenGL or designing an API like Java 3D. There are chapters on: The Graphics Rendering Pipeline; Transforms (tons of Matrix stuff); Visual Appearance (materials, lighting, transparency, fog, etc); Texturing; Special Effects (motion blur, reflections, shadows, etc); Speed-Up Techniques (culling, LOD, triangle strips, etc); Pipeline Optimization; Polygonal Techniques; Intersection Test methods; Collision Detection; Graphics Hardware; and appendices with useful Algebra and Trigonometry. (mini review by John Wright, Starfire Research)

    • Computer Graphics: Principles and Practice in C (2nd Ed) by Foley, van Dam et al (published by Addison-Wesley, 1995, ISBN 0201848406). The quintessential graphics programming bible. This is the book that has been used as the basis of almost every beginner computer graphics programming course. Last updated in 1995, so it is missing some of the later techniques, but they're more advanced than what this book covers anyway - which is the introductory material to 3D graphics techniques.
    • The NURBS Book by Piegl and Tiller. (published by Springer-Verlag 1997, ISBN 3540615458). Complete coverage of spline based surfaces. Covers mainly the mathematical end but plenty of hints and tips for creating real running code. Referenced as the source for formulas and detailed information in many international standards that include NURBS descriptions.
    • 3D Computer Graphics
    • by Alan Watt (published by Addison-Wesley Third Edition 2000, ISBN 0201398559) - much like "Real-Time Rendering". Chapters: Fundamental Math; Representation and Modelling of 3D Objects (including Bezier curves, b-spline, etc); Representation and Rendering; Graphics Pipeline; Light; Mapping Techniques; Shadows; Global Illumination; Radiosity; Ray Tracing; Volume Rendering; Anti-Aliasing; Colour; Image-based rendering and photo-modeling; Animation. (mini review by John Wright, Starfire Research)

    • 3D Graphics File Formats by Keith Rule (published by Addison Wesley 1996, ISBN 0201488353) - this book gives some documentation of the common 3D formats (VRML, RAW, OBJ, TrueSpace, DXF, 3DS, WTK-NFF, POVRay 2.2). This is useful information if you are making your own loader. (mini review by John Wright, Starfire Research)