Sonali Dutta

VSFX 319 Renderman Portfolio


I was inspired by Christmas and cats for my pop-up book. I wanted to use this project to tell a story about a kitty who -- as many cat owners may understand -- is plotting to take down the Christmas tree.


I drew inspiration from the Japanese art of origami to create the components of the book. I also researched the techniques used to create cut-paper artwork, like the image of a paper forest above. When backlit, those layers of paper create the illusion of atmospheric perspective and provide the work with a sense of depth -- I wanted to integrate that technique into my pop-up book.




My paper pop-up maquette gave me an idea of how to form the composition of my pop-up book and the position of each item on the page.


I am not a modeler by any means, so this was the most difficult part of the process for me.

The cat was, by far, the most difficult model to create because I only had one photo of this  design from one point of view (the one from my inspiration images above).



Luckily, I was able to use presence mapping with the PxrSurface shader to create the trees on the other side of the book, so I could focus more time into correcting the topology of my other models.

Shading and Texturing

I am fairly new to Renderman and have generally been more comfortable using Arnold. I was not familiar with Renderman's pattern nodes, specifically PxrTexture, and I had to do a fair amount of research to understand how to use the PxrManifold2D node and PxrBump as well.

While the diffuse component of PxrSurface is relatively similar to the base/diffuse attributes in aiStandardSurface, I had trouble understanding the specular components of the Renderman shader, the use of primary vs. rough specular, and how/when to adjust the fresnel exponent for different materials -- the Renderman documentation was marginally useful in helping me achieve the specular appearance I was looking for.


I lit my scene using an HDRI dome light as a fill light, a disk light pointed at the cat as a key, another disk light positioned behind the presence maps/trees for backlighting, and mesh lights for the stars on the tree. The snapshots above demonstrate different steps of the lighting process as I determined the appropriate color temperature and exposure of each light.

I originally wanted to utilize dramatic, high-contrast lighting with a high key-to-fill ratio; however, I also wanted to utilize the full dynamic range and create a balanced histogram. My final lighting is not as dynamic or interesting as I would've liked, but I am continuing to play with the lighting to achieve this.


I struggled trying to control the mesh lights and attain the results that I wanted. Unlike the disk lights, the mesh lights have no obvious way to control the falloff/dropoff of the light or focus more exposure closer the light and fade to darkness further away. While I could have used light-linking to fake the effect of more falloff, I was not happy with the physically-inaccurate results it provided.


Besides the aforementioned issues, I had trouble finding high-quality, high-resolution texture maps to use on my ground plane and walls -- making the texture smaller made the tiling more evident, but making the texture larger showed the maps' lack of resolution.

The PxrBump and PxrManifold2D nodes were unfamiliar to me, and according to the Renderman documentation, there is apparently no way to adjust the manifold of a PxrBump node at this time. I am not thrilled with either the wood or the wall textures in my final renders due to those two issues.



If I had more time with this project, I would try to make a couple of the following changes:



I learned a lot from this project, but I still feel like there are many changes to be made before I could consider it complete. However, I'm excited to continue working with Renderman and becoming more comfortable with it.