[Haskell-cafe] announce: Glome.hs-0.3 (Haskell raytracer)
sebastian.sylvan at gmail.com
Fri Apr 18 15:13:01 EDT 2008
On Fri, Apr 18, 2008 at 7:43 PM, Don Stewart <dons at galois.com> wrote:
> > A new version of my raytracer is out. It now supports cones, cylinders,
> > disks, boxes, and planes as base primitives (previously it only
> > supported triangles and spheres), as well as transformations of
> > arbitrary objects (rotate, scale, translate) and the CSG operations
> > difference and intersection. Perlin noise and Blinn highlights have
> > been added, as well.
> > http://syn.cs.pdx.edu/~jsnow/glome/<http://syn.cs.pdx.edu/%7Ejsnow/glome/>
> > Glome can parse NFF-format scene files (see
> > http://tog.acm.org/resources/SPD/), but many features are only
> > accessible via raw Haskell, since NFF doesn't support very many kinds of
> > primitives. I included a TestScene.hs file that demonstrates how to
> > create a scene with various kinds of geometry (including a crude attempt
> > at a recursively-defined oak tree) in haskell. There isn't any
> > documentation yet, but many of the primitives have constructors that
> > resemble their equivalents in povray, so anyone familiar with povray's
> > syntax should be able to figure out what's going on.
> Very impressive. Did you consider cabalising the Haskell code, so it
> can be easily distributed from hackage.haskell.org?
> I note on the website you say:
> "no threading (shared-memory concurrency is not supported by ocaml,
> in haskell it's buggy)"
> Could you elaborate on this? Shared memory concurrency is a sweet spot
> in Haskell, and heavily utilised, so I think we'd all like to know more
Not sure what you need shared memory concurrency for in this case as it
seems to be a straightforward parallelism problem (i.e. the different
threads would be different pixels, there is no sharing needed).
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Haskell-Cafe