18. September 2023

A simple Deformer/Modifier

Node setups that change existing geometry data are called modifiers. They can work on splines and polygon objects and need to be placed as children of the to be modified object in the object manager.

A modifier can do more than just change the shape of existing object like most deformers do, it can can also change the topology of the object by applying modeling operations.

This example file uses noise to determine if a polygon should be extruded or not, for this the noise will be sampled at the center of the polygon. If the noise value is above 0.5 (50%) the polygons index will be added to the list of to be extruded polygons.

The setup contains comments on the nodes to explain their function.

Simple Noise based Modifier

The node Polygons Info is used to retrieve a list (array) of all polygon centers, which is then iterated over using the Iterate Collection node. Iterate Collection is a universal node to iterate over all kinds of data, an array is the most straight forward kind of data you can use this for since it is only an indexed list of elements that all have the same datatype, in this specific case Vector since it specifies a position in space.

Sample Noise is then used retrieve a noise value for this specific position. This is one of the well known Cinema 4D 3D noises and by providing an additional scale parameter we can adjust the size of the noise. Since most noises deliver good looking results on a small scale, we increase the scale to create a nice noise that works for the size of the object.

Next in line is a Compare node that determines if the noise value is above 0.5 or 50%. If yes the Append Element node is used to add the current polygon index to the list of to be extruded polygons. Append Element offers and input that determines how often an element should be added to the end of a list, by switching this value between 0 and 1 (equivalent to false and true) we can easily only activate it if the condition is fulfilled. For the Xpresso users this might look familiar, it is very much the same technique as using an On input of a node to enable the execution of it.

Last not least the main operation of the setup is applied, the Extrude node will extrude all polygons that are included in the array.