Difference between revisions of "Glome"

From HaskellWiki
Jump to navigation Jump to search
Line 3: Line 3:
   
 
Glome renders into an OpenGL window, and thus requires HOpenGL, though the libraries GlomeVec and GlomeTrace do not.
 
Glome renders into an OpenGL window, and thus requires HOpenGL, though the libraries GlomeVec and GlomeTrace do not.
  +
  +
[[Image:Glome-testscene-small.png]]
   
 
===GlomeVec===
 
===GlomeVec===

Revision as of 02:37, 21 January 2010

About

Glome is a ray tracer written by Jim Snow. Originally it was written in Ocaml, but the more recent versions are written in Haskell.

Glome renders into an OpenGL window, and thus requires HOpenGL, though the libraries GlomeVec and GlomeTrace do not.

Glome-testscene-small.png

GlomeVec

GlomeVec is the vector library used by Glome. On Oct 25, 2009, it was released as a separate library.

GlomeVec is also used by a separate project, IcoGrid

GlomeTrace

GlomeTrace is a library that provides ray-tracing algorithms and a variety of geometry primitives. It was released as a separate library on Jan 20, 2010.

Supported base primitives include: sphere, triangle, cone, cylinder, disc, plane, and box.

Composite primitives (those which are containers for other primitives) include groups, csg differenc and intersection, transformed instances, textured objects, and bounding objects.

In addition, there is an implementation of the BIH acceleration structure, which automatically builds a bounding volume hierarchy around unsorted lists of primitives. This greatly improves the performance for large scenes.

GlomeTrace depends on GlomeVec, but it doesn't have any other unusual dependencies.

Documentation

Questions

Send any questions to the author: jsnow@cs.pdx.edu In particular, I'd like to know if the test image is failing to render on you platform, or if it is failing to build.

Links