mylaboratory
Title image
 
Home
 
Software
 
Raytracer
 
Recipes
 
Photos
 
Mashup
 

PhotonLab Screenshots (Versions 0.26 to current)

Changelog

0.29.3    2007/10/07   Median highlight suppressing method.
0.29.2    2007/10/07   Fixes to text statistics display.
0.29.1    2007/08/09   Removed original highlight suppressing hack.
0.29      2007/08/07   Improved statistics output and interactivity.

0.28      2007/07/15   Specular highlight fixing pass.

0.27.4    2007/07/12   Adjustment to material interpretation in OBJ files.
0.27.3    2007/07/10   Default value for IoR in OBJ models.
0.27.2    2007/05/20   Added bugfix to other instance types and tidied up script handling.
0.27.1    2007/05/19   Fixed bug in multiple instances.
0.27      2007/05/18   Script processing of input files.

0.26.1    2007/05/08   Fixes for 64bit gcc 4+.
0.26      2007/03/04   Implicit surface rendering.

Screenshots v0.28

Jaguar XJ220

Jaguar XJ220

Date: 2007/07/15
Resolution: 1600 x 800
Scene: Jaguar XJ220 OBJ model.
Details: OBJ model using the MTL file to generate the materials. I've had some trouble with high-brightness low-probability events (specular reflections of the lightsource) messing up the image so I added a pass to detect and correct these.

Screenshots v0.27.2

Sphere flake

Sphere Flake

Date: 2007/05/24
Resolution: 3000 x 3000
Spheres: 9331
Scene: 6 level sphere flake.
Details: A script-generated sphere flake 6 levels deep, giving 9331 spheres, each 1/2.2 the size of the previous level.
Blocks

Random Blocks

Date: 2007/05/22
Resolution: 1800 x 1200
Scene: Programmatically positioned blocks (using scripting code within the scene file).
Details:

Added Lua scripting to my raytracer the other day so I can do things like this. The script uses the PHP/(X)HTML concept to embed script into the XML file. Anything between a <& &> pair is treated as script and executed and everything else is just copied to the output.

In this scene a regular array of 25 by 26 blocks are positioned with random vertical heights with the central one coloured.

The code looks something like this:

<&
  for i = 0, 24, 1 do
    for j = 0, 25, 1 do
&>
      <instance>
        <general id="<& print(1+i*16+j) &>" name="water" material="1" gencaustics="0"/&qt;
        <location position="<& print(10.5*6-10.5*i) &> <& if ((i == 6) and (j == 8)) then print(-45) else print(math.random()*40-105) end &> <& print(10.5*8-10.5*j) &>" rotation="0 0 0"/>
        <maps nummaps="0"/&qt;
        <emission colour="0 0 1" strength="0"/>
        <extended modelid="<& if ((i == 6) and (j == 8)) then print(1) else print(0) end &>" scaling="1"/>
      </instance>
<&
    end
  end
&>

Screenshots v0.26.1

Wada basin

Wada Basin

Date: 2007/03/18
Resolution: 4000 x 4000
Scene: Wada basin fractal.
Details: Three highly reflective spheres placed above a fourth in an inverted triangular pyramid. The camera looks down the gap in the middle at the top and light sources (one red, one green and one blue) fill the lower holes.

Screenshots v0.26

Orthocircles

Implicit Orthocircles

Date: 2007/03/11
Resolution: 1000 x 1000
Scene: Three orthogonal circles with coloured lights.
Details: Implicit surface given by ((x² + y² – 1)² + z²) * ((y² + z² – 1)² + x²) * ((z² + x² – 1)² + y²) – 0.0375² * (1 + 3 * (x² + y² + z²)) = 0 and converted to triangles using the marching tetrahedrons algorithm.
Bottom image