Arnold Shader C/C++ API:

For this project, I decided to make a flame using the same technique that Professor Kesson walked us through.

Final Render

The C/C++ Code and the MTD File

Shader Code

MTD File



Hypershade - Render 1 (Blue Background)

I followed the same technique that Professor Kesson demonstrated in class to achieve the flame.

Hypershade - Render 2 (Yellow Background)

To accomplish the texture on the background, I added a noise [Texture] and attatched the Out Color to the opacity on the AiStandardSurface that was applied to the background. In adding the noise, it created a subtle illusion of rain. I found it interesting that the colors selected in the Color Balance section of the Property Editior had to be the opposite color on the color wheel (or inverted) to achieve the color I wanted.

Technical Issues

A goal of mine for this project was to simulate rain. I was successsful in simulating the rain however unsuccessful when it came to rendering it. In the first image below, you can see the rain falling. I do not have very much experience when it comes to Arnold or rendering with motion blur. I believe with more time and research I will be able to successfully accomplish the composition that I had originally intended.

Final Thoughts

In the end, I enjoyed learning about how to create a cloud/ flame from a cube. I never fully understood what went behind the construction but it's very neat. I look forward to experimenting more and using these versatile techniques in future projects.


The container model was downloaded from cgtrader.

Plastic/Glass Container