|On this page|
Properties are rendering parameters you can add at various levels (renderer, camera, object, primitive) that are inherited by lower levels.
Applying a material with a Properties shader essentially copies any properties on the shader to the target object. However, properties on each object override properties on the object’s shader.
Applying properties through a shader, rather than adding them directly to objects, is useful in a few circumstances:
In the Noise Displacement material, a Properties shader adds a Displacement Bounds property to the target object, and automatically sets it equal to the maximum amount of displacement set on its sibling displacement shader.
If you had a material assigned to objects inside other objects, for example eyeballs inside a character, you could use a Properties shader in the material to give the target objects a custom light mask.
The Instance object lets you choose a Properties shader that will override any properties on the instanced geometry.
When created, a Properties shader has no parameters. You add properties to the shader node and those properties are then applied to any objects or primitives that use the shader.
The following examples include this node.
Extracts the velocity field from a smoke simulation to use as a wind force on a POP simulation.
This example demonstrates the use of the Flip Solver and the Fluid Force DOP. The Fluid Force DOP is used to apply a drag force on a wire object according to the motions of a flip fluid. The drag force is only applied at locations where fluid exists in the fluid object.
Fills an RBD container with fluid that enters the simulation by being sourced from another RBD object.
This example creates a torus of paint which is dropped on the Grog character. The Grog character is then colored according to the paint that hits him. This also shows how to have additional color information tied to a fluid simulation.
This example creates a teapot shaped blob of liquid. It then uses surface tension forces to smooth the blob into a sphere.
This example demonstrates how to couple the Particle Fluid with an RBD object so they both affect each other. The result is a buoyant sphere.
This is a simple example demonstrating pressure-driven flow with no viscosity. This example also demonstrates the use of a constantly emitting source of particle fluid as well as how to surface the fluid using the Particle Fluid Surface SOP.
This example demonstrates highly viscous fluid flow using particle-based fluids. Fluids of this form could be used to simulate slowly-flowing fluids such as lava or mud.
A ghostly tetrahedron bounces around a box, its presense shown by its continuous emission of smoke.
In this file we create a downhill lava flow with crust gathering and hardening at the base of the slope. All of the animation is achieved through the shader itself, and all of the geometry is completely static.
Most of the parameters for the lava material are overridden by point attributes created in the surface nodes.
No geometry is animated in this file. All animation is achieved by animating the textures
Flames are grids so that UV textures can easily be applied, they are then warped around a metaball using a magnet SOP. The flames are then assigned to either a yellow or blue Flames texture. The Flames' opacity mask wrap is set to Decal to prevent the texture from repeating and showing a single pixel ring at the top of the flame geometry. I'm also using a mask file named
flameOpacMap.jpg to enhance the flames' shape at the top. The noise offset has been animated over
$T with an greater emphasis on the Y axis so that the flames look like they are rising. This is the same reason the Noise jitter is larger for the Y axis as well.
The coals are spheres that have been copy stamped onto a deformed grid. Using Attribute Create surface nodes I am able to override and copy stamp the lava texture’s parameters at the SOP level so that local variables, such as
$BBY, can be used to animate the texture. This way the texture’s crust and its crust values can be used only to form the tops of the coals. This reserves the lava aspect of the texture to be used on the bottoms of the coals. The lava intensity (
Kd attribute) is then stamped and animated to create the look of embers on the bottom of coals glowing.
This example shows how to render an isosurface defined by a cvex shader using mantra’s volume rendering capabilities. A noise field is generated by a cvex shader, which is attached to the VEX Volume Procedural. The volume is shaded by finding the surface where the density crosses 0, and then shading using a simple surface shader that shows the normals.