Manta

Manta was initially created at the Scientific Computing and Imaging (SCI) Institute at the University of Utah by Prof Steven G. Parker. Manta is a highly portable interactive ray tracing environment designed to be used on both workstations and super computers and is distributed under the MIT license.

 

Abstract of my work

I worked for the Manta project during summer 2007. My work was to add new textures and a material model to Manta.

Tools used

  • C++
  • Emacs

Implementation:

  1. Tile Texture                     
    I have added a texture class to draw tiles on the floor.  Tile texture class takes five arguments. First argument indicates the color of the tiles to be applied and second one indicates the color to be applied for the gaps between tiles. Third and four arguments indicate the direction vectors and fifth one indicate the width of the gap between tiles.

External Link: https://code.sci.utah.edu/svn/Manta/trunk/Model/Textures/TileTexture.h

Screen Shot:

2. Oren Nayar Material Model

                          I have added a new material model of reflectance to Manta know as ‘Oren Nayar Material Model’.  This material is designed for objects with rough surfaces.  This class takes two arguments. First one indicates the color that is to be applied on the surface of the object and the second one indicates surface roughness. This material model adds more of the diffuse color to the shading, which makes the surface to look rough.
In the screen shot below, there are two spheres one of which is applied Oren-Nayar material and the other is applied with Lambertian. Both of the spheres have been applied the same color but the one with Oren-Nayar material looks rough because of the addition of surface roughness component, which adds more of the diffuse color to the shading. Oren Nayar material is also applied for floor in the below image.

External Link: https://code.sci.utah.edu/svn/Manta/trunk/Model/Materials/OrenNayar.h

Screen Shot:

References:

3) Cloud Texture

                      I have added a texture class, which can create simple cloud texture on the object. This cloud Texture class takes three arguments. First argument indicates the sky color, which can be either blue or black. Second argument indicates the cloud coverage on the sky, which can be in the range 0 to 1. Third argument indicates the axis or the coordinate direction where the clouds have to occur.

External Link: https://code.sci.utah.edu/svn/Manta/trunk/Model/Textures/CloudTexture.h

Screen Shot: