if use Arnold operators you can change shading and geometry without any delay in IPR rendering. Operators together which Houdini node graph and you have a simpler version of Solaris, Katana or Gaffer. the Arnold operators are around for years when even Katana and Gaffer were quite new and long before the idea of Solaris.
Operators allow advanced users to override any part of an Arnold scene and modify the Arnold universe at render time. Probably one of the most common use cases is to override parameters (e.g. shaders) inside a procedural (USD, ASS, or Alembic). Here is quite a test with 600GB caches file during Arnold GPU interactive rendering.
as you can see it’s quite fast to update the interactive rendering. you can the Kick command which is used to query possible target node parameter names of a set_parameter node. For example kick -info or kick -info polymesh. a more detailed tutorial I will do in future posts.
I’ve used a set parameter to change the radius of the foam particles. radius *= 1.3 or change the particle to ‘disc’, ‘sphere’ or ‘quad’, o change the shader like shader == ‘purple_shader’ .
here more detailed talk about usage of arnold operators from Autodesk and The Mill.
Here are some USD Assets and Scenes for free to use for any purpose. Its setup with lights and shaders for Arnold renderer in GafferHQ. I will update the dropbox folder in the future with other render engine setups like CyclesX, Karma, Omniverse or Unreal5.
Here are free scene files with 3 frames of USD caches for a water simulation for free to use for any purpose. Its setup with lights and shaders for Arnold renderer in GafferHQ. I will update the dropbox folder in future with other render engines setups like CyclesX , Karma, Omniverse or Unreal5.
I am using selfmade velocity blur node inside gaffer to get motionblur on changing point count
recently I did some water rendering in Arnold renderer, which you can see here. the shading worked quite well on the water and whitewater.
after this started to sim a wave Tunnel in Houdini Flips. a huge wave where you actually could surf. But I run into some trouble with water shading and whitewater look, I needed some reference.
I went to the beach and took my trusty NikonV1 camera with me to shoot some reference photos. These are tiny Waves (50cm in height), but easy to take some pictures of and good enough as shading reference.
the nice shot of miniature breaking wave
here we can see more Droplets / Whitewater with sun in out back. a good example for anisotropy effect on shading.
There are multiple ways to render realistic Water. The old-school way is to render a polygon water surface and volume underneath to simulate the light scattering. we did similar things back in 2008 on the Avatar Movie with custom-written shaders for Renderman. Sidefx added presets for Houdini for its Ocean setups. The render time of this method is modest but the shading can be quite difficult depending on the camera angle and light situation.
these days in the age of Path tracers, there 2 ways, to render it with Sub-Surface Scattering (SSS) or Transmission Depth.
Sub-Surface Scattering simulates the effect of light entering an object and scattering beneath its surface. Not all light reflects from a surface. Some of it will penetrate below the surface of an illuminated object. There it will be absorbed by the material and scattered internally. Some of this scattered light will make its way back out of the surface and become visible to the camera. This is known as ‘sub-surface scattering’ or ‘SSS’. SSS is necessary for the realistic rendering of materials such as marble, skin, leaves, wax, and milk. The SSS component in this shader is calculated using a brute-force raytracing method.
While the Transmission Depth attribute controls volumetric light absorption within the object (fog), the Scatter attribute controls what percentage of the light will be scattered instead of absorbed, effectively creating the murky effect of semi-transparent materials.
Depth Controls the depth into the volume at which the transmission color is realized. Increasing this value makes the volume thinner, which means less absorption and scattering. It is a scale factor so that you can set a transmission_color and then tweak the depth to be appropriate for the size of your object.
Scattering is very important if wanna shader deep Materials like Ocean water. For the scattering effect to work Scatter must have a dominant percentage value, and the Depth attribute must generally be much lower. also, the Opaque attribute must be unchecked in the Arnold attributes of the object’s shape node for the light to be able to pass into the mesh and illuminate the volume.
Rendering with refraction Depth is a more “physically correct” way, but it does account for tiny organisms (light blockers) in this case you add textures to simulate plankton in the water.
I choose to go with SSS route. The typical Surface Scattering shading model has a similar volume light scatter to look. the look can be limited but it works in case deep Ocean water. the advantage: it has full support for the current Arnold GPU renderer (Depth transmission is not supported yet) and the SSS shading model is also faster to render. In addition, I’ve added an extra underwater bubble simulation with particles to increase the realism.
I am starting to look into water effects shading, this 1st simulation with Houdini solvers. the foam is a little over-the-top. but I think the shading itself starts to come together. with the new Arnold GPU updates it’s getting really fast., specifically when I am using Arnold Operators.
I’ve created underwater bubbles in extra simulation to make the side view nicer.
all this above was done in Houdini and regular Anrold htoA plug in.