Click Here to view all the amazing entries to Rookie Awards 2024
Procedural Industrial machinist's lamp
Share  

Procedural Industrial machinist's lamp

by kapitanova on 27 May 2024 for Rookie Awards 2024

Foundation project at Think Tank Training Centre made in Houdini.

3 81 0
Round of applause for our sponsors

Industrial machinist's lamp

I made a model of an industrial lamp by British company MEK-ELEK during my Foundation Term at Think Tank Training Centre. I noticed that it had a variety of details and numerous parts which could change its configuration and shape. 

As a result, I decided to experiment with Houdini proceduralism and VEX to build a procedural model which could be controlled by a user. Also, several layers of paint and remarkable patterns of the texture created an interesting  challenge for me to achieve photorealism.

I started by analyzing all the elements of the lamp and what could be done using VEX.

A simple mathematics on even and uneven numbers was a foundation of the gears of the lamp.

                                               i@group_evenNumbers = @ptnum%2;

https://github.com/kapitanovafx/vfx/blob/main/evenNumbers

While I was experimenting with shapes of a lampshade and a plug, I created controls for a user to choose between different shapes and also to control the position of the 'joints'.

The wires were also based on a bit of VEX which was helpful in creating a possibility to draw a curve of the wires already with the specific 'helix pattern'.

Final Houdini node graph in /obj space:

I used mainly Adobe Substance Painter for the texturing with a bit of color correction in Houdini.

I painted all the layers of the lamp using my own masks. They were made in Adobe Photoshop from the pictures of the bike path in the park near the place where I live. 

I exported the textures in Houdini, assigned materials and created a scene in Solaris:

I used Arnold as a render and the main problem that I faced was the noise in all my renders. 

I used AOVs of the renders, analyzed the source of the noise in Nuke and improved the quality of them using sampling in Arnold render settings.

I would like to show an example of this process.

These are RGBA, diffuse_indirect and specular_indirect of models 1, 2, 3 and 4 with different render Settings.

4: Camera AA 1

3: Camera AA 6

2: Camera AA 6, Diffuse 10, Specular 2

1: Camera AA 6, Diffuse 10, Specular 2, Indirect specular blur 4

RGBA AOV:

diffuse_indirect AOV:

specular_indirect AOV:

By increasing only diffuse or only specular AA it's possible to improve the quality of one channel, if the other one is clean.

We can see that we could still increase AA even for the final render. The main idea is to combine render quality and render time. 

Hope my experiments were useful and interesting to follow while reading this article.


Comments (0)

This project doesn't have any comments yet.