Rendering Competition 2007/2008
Universität des Saarlandes
- Participants:
- Name: Bruno Ranieri
- Name of the animation:
- Dedication to
Populous
The animation.
List of all topics covered:
- Topic:
- Reflective and Refractive Transparency
- Effect shows:
- The water in the drinking trough
-

- Source code:
- RefractivShader.hxx
- Description:
- This shader simulates the refraction and reflection of a light
ray that occurs if this ray go from one transparent medium into
another. Here it is used to simulate the water in the drinking
trough.
From the hit-point two rays are emitted. The reflected
ray and the refractive ray. The resulting color of the hit-point is
a combination of these two and a surface base color.
- Topic:
- Procedural Shading
- Effect shows:
- The Table and the drinking trough
-

- Source code:
- ProceduralWoodShader.hxx
- Description:
- This shader computes a wood surface. It takes initially an axis
to determine the direction of the grown wood. The characteristic
annual rings of the wood are then computed w.r.t. this axis and the
hit-pint of the light ray with the surface.
- Topic:
- Fractal Geometry
- Effect shows:
- The fractal landscape on the Table
-

- Source code:
- FractalTool
- LandscapeShader.hxx
- Description:
- The Fractal Landscape is generated with a separated tool,
located in the folder FractalTool. To generate the landscape, compile
it with the make file and start it with these parameter:
./FractalTool FractalLandscape.obj small 40 0.9 1.1 8
1.0 .7
The Fractal Algorithm is taken form the Book
Texturing and Modeling by Ebert, David S.; Musgrave, F. Kenton;
Peachey, Darwyn.
The shader for the landscape uses the height of
the given point in the landscape to determine its color. Low areas
are blue like water, there is a small green belt at sea level and
steep mountains are grayish like rock and the heights are covert
with white snow.
- Topic:
- Bump Mapping
- Effect shows:
- The basement of the temple
- The ground
-

- Source code:
- Texture2D.hxx
- Shader.hxx
- PhongShader.hxx
- Description:
- With Bump Mapping one can simulate rough surface. According to a
bumpmap the height of the hit-point of the light ray and the surface
is modified. The normal vector of the surface at the hit-point is
tilted according to the derivation of the bumpmap. This is needed to
simulate a point on the surface going up or down a bump.
For the
implementation we extended the class Shader with support for
bumpmaps. Since a bumpmap is some sort of texture I used the class
for storing textures for this. The class Texture2D was extended with
a method to return the derivative of the texture or bump map at a
given point. Then some of the shaders were extended with support
for bump mapping. The PhongShader is given as one example.
- Topic:
- Multithreading
- Source code:
- render
- Description:
- The multithreading is implemented in a shell script that starts
two instances of MicroTrace at a time. On a processor like the Intel
Core 2 Duo the operating system will take care that every instances
will run on its own core. The drawback of wasting memory is
negligible, since a modern computer with such a processor is also
equipped with about 2 GB of RAM and one instance of MicroTrace takes
about 1% of this RAM.
Using this approach one gains a speedup of
approximately factor 2.
- References:
- The References to used books and Web pages are given in the
source code.