Messing with P5Sunflow

Cube Explosion

Ray tracing is the CG rendering technique used in Pixar movies and most other broadcast quality CG. Basically it bounces millions of virtual photons around the scene to simulate how objects reflect light and cast shadows on each other. This produces super realistic images at the cost of being very computationally expensive.

P5Sunflow is a Processing version of the SunFlow open source Java ray tracing implementation created by Mark Chadwick.

P5Sunflow produces images with creamy shadows and a solid sculptural feel that are quite different to anything you can achieve with most real-time 3D engines. Unfortunately rendering times are really slow. The videos below are overnight renders. I’d be interested to find out if there is some kind of ‘fake’ ray tracing that produces similar results quicker.

Click through to see the HD and downloadable QuickTime versions. These work well looped in QT.


Cube Wall from felixturner on Vimeo.


Sunflow Phase Towers from felixturner on Vimeo.

You can download the Processing sketch for the cube wall animation here. To use it you need to install the P5Sunflow library as described here. To run P5Sunflow you need to use the version of Processing that comes without Java, since it requires Java v1.5 and Processing comes with Java1.4.

6 Responses

  1. Jarnik says:

    When it comes to real-time alternative to raytracing, a technique called Ambient Occlusion ( http://en.wikipedia.org/wiki/Ambient_occlusion ) is usually used. It’s much quicker and results are sufficient for most scenes (although the method is just a fake, no physical basis).

  2. […] ??airtightinteractive p5sunflow????java????????sunflow?processing?????? ??????p5sunflow?????????????????????????????????????????????? p5sunflow????????????? […]

  3. rex says:

    hah i have repost ur post on my blog…
    here is the link
    http://www.lotloft.com/plasticthinking/?p=219

  4. Felix Turner says:

    @Jarnik – thanks for the info. It turns out the genius that is ‘ScreamyGuy’ has implemented a processing Ambient Occlusion renderer: http://screamyguy.net/ambientOcclusion/index.htm. It’s not real-time but it’s pretty fast. For some reason the generated image is very grainy. Probably a light blur would fix that.

  5. diego says:

    i’m sure you had a laugh when you saw the olympic games’ opening…

    d

Leave a Reply

Your email address will not be published. Required fields are marked *