| What is Raytracing?
| Raytracing Algorithm
| Raytracing Reference
| How to write a Raytracer
| Technical Articles
| About Me
(This section is getting a little long in the tooth, and my definition of "complex" has certainly changed over the years. For now, assume this page is a historical artifact.)
Here are a few of the images that I've created so far with VRWorld4. Please note that many of these were produced to test the capabilities of the program, and are not in any way works of art. Also, I'm sorry there aren't any thumbnails, but I just haven't had the time to do it.
Murray: The elegantly shaped cranium of a PDF (Powerful Demonic Force), modelled with 2294 triangles. For all those who haven't played "Curse of Monkey Island" yet, I suggest you go do so now. (Model courtesy 3D Cafe)
5008 triangles + 6 spheres, that's a pretty complex object. Perhaps I shouldn't have kept the eyes so blue, but they provide nice contrast. And I freely admit I used a photo editor for slight adjustment of the right iris/pupil and softening of eyebrows, pupils etc. Note that in this picture as well as in the one above (skulls), the smoothed mesh normals were automatically generated from the raw triangle data. Octree BVH's speeded things up somewhat, but the renders were still pretty slow (and for the first time I had to wait a few seconds for the prerendering stuff to finish). (Model courtesy 3D Cafe)
Wood looks good. 967 triangles. (Model courtesy PlanIt 3D)
This image was made as a birthday card for a miniscule relative. The balloons are hollow, the egg-shaped object at the bottom has a reflective marble texture and there are two point light sources.
This is my only decent picture so far with CSG. A yellow lens created as the intersection of two transparent yellow spheres is used to magnify a red sphere (looks orange because the lens is slightly reflective). A mirror placed at an angle shows the actual size of the sphere.
3 textures (marble, wood and checker) blended across the surface of a triangle. This can be extended to any 3 shaders.
3D Perlin noise implemented directly as a texture. Incidentally this is one of my first images using the bug-fixed torus primitive.
A nice procedural solid wood texture created with Perlin noise
A pattern of alternating red and white cubes applied as a solid texture to a sphere, a cylinder and a plane. This is the first solid texture I created and used with my general shader class.
A Bezier patch approximated with a 16x12 step mesh.
Left: A Bezier patch mesh with flat shading. Right: The same mesh rendered with Phong shading. The smoothed vertex normals were generated automatically.
A transparent sphere in front of a green cylinder. The sphere has a refractive index of 1.2
Of the spheres, one has a translucent surface and the other has a translucent interior. There are subtle differences, but I've forgotten which is which! The index of refraction of the spheres is 1.2
A torus (doughnut) created using the general polynomial shapetype. This can handle polynomial equations of arbitrary degree, though I've restricted it to 7th degree so far. This particular shape is a quartic (degree 4). The surface is highly reflective: the brighter regions reflect the floor.
Reflection of a sphere in a mirror like block
A scene containing two reflective spheres (grey and red) and a transparent sphere (greenish-yellow)