Personal tools

Glome

From HaskellWiki

Revision as of 02:37, 21 January 2010 by Jsnow (Talk | contribs)

Jump to: navigation, search

Contents

1 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

1.1 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

2 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.

3 Documentation

4 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.

5 Links