jReality: 3D Visualization Library with OpenGL and GLSL Support


jReality is a real time 3D visualization focused on mathematical and scientific content. It is written in Java and maintained by a team mainly from the Technical University of Berlin and distributed open source under a BSD licence. jReality offers several uncommon features for a 3D SDK such as:

  • support of OpenGL including GLSL shaders through JOGL
  • geometry readers for readers for OBJ, STL and 3DS of course, but also for U3D, Mathematica Graphics 3D, JVX
  • export in RenderMan® for high-quality stills and movies; and PostScript, PDF and SVG for publications.
  • spatialized audio. The audio can then be rendered on a wide range of speaker setups including stereo, 5.1 surround, and arbitrary Ambisonics rigs. The audio rendering pipeline of jReality includes a physically accurate simulation of sound propagation that implicitly creates Doppler effects, as well as support for effects such as reverberation and distance cues.
  • An abstract layer for input devices with drivers are for keyboard, mouse, joystick and Trackd® – supporting all popular motion tracking and immersive input devices such as Ascension MotionStar® or A.R.T. DTrack systems.
  • Support not only for the traditional “XYZ” euclidean geometry but also for hyperbolic and elliptic/spherical geometry.

These capabilities make jReality a great and easy-to-use platform for 3D content creation and interaction. Typical applications are:

  • mathematical / physical real-time interactive experiments
  • animations
  • interactive art and installation
  • computer games

Look at this small programming tutorial, it seems so simple …


  • Well,

    really interesting piece of software. Thank you for posting. I found something similar for Windows platform only, Zuma Pro. You can create Maya/StudioMax scenes and import them to Zuma for 3D live performance, it has powerful and easy to learn scene editor integrated. The bad thing is that the development has been stopped…So I am looking for something similar. Hope this is it :-)

    Thank you again.


  • Artur Biesiadowski

    Best part of jReality for me was not that it supports opengl, but that it can run perfectly well WITHOUT any 3d acceleration. It allowed it to be used in corporate environment, with various strange graphic cards, with just plain java installation.

    Obviously, you cannot go too triangle/shading crazy with non-accelerated version, but it is perfectly enough to show some 3d graphs which can be manipulated in real time – with very good performance.