Marble Mouse

Color = *M + *M*( L*N ) + *M*( R*V )  
Material = , colors from [, , ] to [, , ] in [0, 255]
View Point = [, , ]
Light Direction = [, , ]
Reflection = 2*V*( V*L ) - L

With its default settings, Marble Mouse shows the Happiest Company On Earth's trademark logo, rendered with a sort of marble-like pattern and color scheme, along with a nice specular reflection effect.

Under the hood, the applet uses raytracing to compute the position of the rendered points. To render the marble pattern, we use something relativly close to sin(x + sum(|noise|)), where noise is the Improved Perlin Noise implementation from SIGGRAPH2002 (adapted from Ken Perlin's webpage).

We also compute the full Phong shading model for ambient, diffuse, and specular light, using the texture as the material property, and assuming a shiny surface and a white light. This gives a nice spotlight effect, and underscores the point that this is supposed to be marble.

Most of the lighting and texturing settings can be changed by entering values in the dialog boxes (press the reset button to change back to the default values). The first term of the color expression is ambient light, then diffuse, then specular light. The texturing noise can be changed from a set of pre-configured defaults. The output of the noise function is used to interpolate between the two provided color values.

Note that there may be some problems where only a part of the image is updated. If this happens, please hit the update button again. Also please note that the image may take several seconds to render. Thank youfor your patience.

The source for Transform3D is in the files:

Copyright © 2005 Christopher DeCoro