top of page

RIB Wrangling

                            ~Kettle Assignment~

For this project, I was given the task of creating an original teapot in Cutter.

 

As stated by Malcolm Kesson:

 

     "The purpose of this assignment is to provide a context in which you can learn the basics of Pixar's 3D scene description language - generally referred to as Rib (RenderMan Interface Bytestream). You are to model, shade and light an interesting 3D composition directly as a Rib file using a text editor. The use of interactive software such as Maya or Houdini is not permitted. The principle model in your scene will be be a kettle. "

 

 

Basically I had to model, texture and light a teapot using Cutter. The catch was that I had to use RIB Archvies, which I have never done before.

 

 

For more information about Cutter, visit http://fundza.com/index.html for more details.

 

 

Final Beauty Shots

My first final render has a projection of 30 and the second final render has a projection of 20. With each projection, I had to change the translate z.

Beauty Shot 1

Beauty Shot 1

This shot had a projection of 30.

Beauty Shot 2

Beauty Shot 2

This shot had a projection of 20.

Models & Inspirations

The picture, Teapot 01, was my main inspiration for this project. After learning how to use cutter and the limits of the geometry given, I just did my own thing and my final teapot came to be.

Model of Teapot

Model of Teapot

Here is the untextured final model of the teapot.

Model of Cup

Model of Cup

Here is the untextured model of the cup.

Teapot 1

Teapot 1

This was the main inspiration for my teapot.

Teapot 2

Teapot 2

Another teapot.

Teapot 3

Teapot 3

Another teapot.

Textures

For the brick wall, I used a displacement map of the same texture and a "float Km" of 0.04. I did not have to change any of the "st" for my texture maps. Although, in the beginning before I settled on these textures, I did test out other textures and played with the "st" coordinates.

Porcelain Texture

Porcelain Texture

This is the texture I used for the main body of my teapot and cups.

Teapot Rim and Handle Texture

Teapot Rim and Handle Texture

This is the texture I used for the top, bottom, and handle for my teapot and cups.

Brick Texture

Brick Texture

This is the texture I used for the walls.

Wood Texture

Wood Texture

This is the texture I used for the countertop.

RIB Snippets

 

 

 

Teapot Body:

 

     AttributeBegin

             ReadArchive "materials/shiny_pot.rib"

         TransformBegin
             Attribute "identifier" "name" ["Pot"]
             Color 1 1 1
             Translate 0 1 0
             Rotate 90 1 0 0
             Scale 1 1 1.5
             Sphere 1 -0.3 0.8 360
         TransformEnd

     AttributeEnd

 

 

Teapot Sprout:

 

     AttributeBegin

              ReadArchive "materials/shiny_pot.rib"

         TransformBegin
             Attribute "identifier" "name" ["Spout"]
             Color 1 1 1
             Translate 0.8 1.4 0
             Rotate 180 0 1 0
             Rotate 180 1 0 0
             Rotate 180 0 1 0
             Scale 1 1.5 1
             Torus 0.6 0.1 0 360 90
         TransformEnd

     AttributeEnd

Parts of my code:

Brick Wall:

 

     # txmake -mode periodic ../tiffs/brick_02.jpg ../textures/brick_02.tex

 

     "string displacementMap" ["brick_02.tex"]

     "float Km" 0.04

 

 

Wood Countertop:

 

     "string surfaceMap" ["wood_01.tex"]

 

     "float specularGain" 3.5

Bouce Light # 1

 

     TransformBegin #BounceLight
             Translate 8 -1 -7
             Rotate 90 0 1 0
             Rotate -90 1 0 0
             Rotate -15 0 1 0
                  ReadArchive "cutrAxes.rib"
             Scale 15 15 1    
       LightSource "ppAreaLight" "bouncelight" "float intensity" 0.8
        
    TransformEnd

Cup Body:

 

     AttributeBegin

             ReadArchive "materials/shiny_pot.rib"

         TransformBegin
             Attribute "identifier" "name" ["Pot"]
             Color 1 1 1
             Translate 2 .55 0
             Rotate 90 1 0 0
             Scale .5 .5 .75
             Sphere 1 -0.3 0.8 360
         TransformEnd

     AttributeEnd

 

 

Bottom of Cup:

 

     AttributeBegin

              ReadArchive "materials/shiny_pot_top.rib"

         TransformBegin
             Attribute "identifier" "name" ["Bottom_of_Cup"]
             Color 1 1 1
             Translate 2 0.501 0
             Rotate -90  1 0 0
             Rotate -180 0 1 0
             Scale 1 1 1
             Disk 0.5 0.35 360
         TransformEnd
    
AttributeEnd

Left Wall:    (*NOTE: The "int transmission" is 0 so the bouce light can go through it and hit the teapot and cups.)

 

     AttributeBegin #Left Wall
             ReadArchive "materials/shiny_wall.rib"
        

      Attribute "visibility" "int specular" [1] "int diffuse" [1] "int transmission" [0]  

      Attribute "trace" "int maxdiffusedepth" [1] "int maxspeculardepth" [2]

 

             Scale 10 10 1
             Translate 0 0 -4.5
             Rotate 90 1 0 0
             Polygon "P" [-0.5 0 -0.5  -0.5 0 0.5  0.5 0 0.5  0.5 0 -0.5]
                     "st" [0 0     0 1     1 1    1 0]

     AttributeEnd

Teapot Placement:

 

         AttributeBegin #Teapot
             Translate 2 -0.01 -1.7
             Rotate -55 0 1 0
             ReadArchive "TeaPot3.rib"
         AttributeEnd

 

Sideways Cup Placement:

 

     AttributeBegin #Side cup
             Translate -2 0.5 -0.5
             Rotate 90 1 0 0
             Rotate 45 0 0 1
             ReadArchive "cup_side.rib"
         AttributeEnd
   

Depth of Field

Using Depth of Field in Cutter was a lot easier than I thought it would be. With just a small command of DepthOfField and only three numbers made the usually hard to understand DOF really, really simple.

 

 

For my first shot, I focused on the teapot.

     The code: DepthOfField     2.7      1.8      2

 

For my second shot, I foucsed on the sideways cup.

    The code: DepthOfField     7.2        1        5

Depth of Field - Sideways Cup

Depth of Field - Sideways Cup

In this shot, the focus is on the sideways cup.

Depth of Field - Teapot

Depth of Field - Teapot

In this shot, the focus is on the teapot.

Animation

For the animation, I wanted to rotate the camera to get different angles of the teapot and cups. In order to save render time, I made the animation at 720 by 480.

Conclusion

     In the end, I really enjoyed using Cutter. I think of it as "easy" coding. Figuring out what geometry would work for my teapot was fun, and at first it was a lot of "hit or miss". Texturing was the funnest part of this project. I don't usually like to texture, but it was very simple in Cutter and I found that I liked finding different textures and seeing which ones would work the best. The least thing I enjoyed was lighting, because I do not like lighting at all. Nevertheless, I understand the importance of RIB Archives and now have the ability to use them whenever necessary.

  • Facebook Square
  • Pinterest Square

© 2015 by AMBER EVANS

 Proudly made by Wix.com

bottom of page