PyroCluster
PyroCluster Programming Team Christian Losch, Philip Losch, Richard Kurz, Tilo Kühn, Thomas Kunert, David O’Reilly, Cathleen Poppe. Plugin Programming Sven Behne, Wilfried Behne, Michael Breitzke, Kiril Dinev, Per-Anders Edwards, David Farmer, Jamie Halmick, Richard Hintzenstern, Jan Eric Hoffmann, Eduardo Olivares, Nina Ivanova, Markus Jakubietz, Eric Sommerlade, Hendrik Steffen, Jens Uhlig, Michael Welter, Thomas Zeier. Product Manager Marco Tillmann. QA Manager Björn Marl.
MAXON Computer End User License Agreement NOTICE TO USER WITH THE INSTALLATION OF PYROCLUSTER (THE “SOFTWARE”) A CONTRACT IS CONCLUDED BETWEEN YOU (“YOU” OR THE “USER”) AND MAXON COMPUTER GMBH ( THE “LICENSOR”), A COMPANY UNDER GERMAN LAW WITH RESIDENCE IN FRIEDRICHSDORF, GERMANY. WHEREAS BY USING AND/OR INSTALLING THE SOFTWARE YOU ACCEPT ALL THE TERMS AND CONDITIONS OF THIS AGREEMENT. IN THE CASE OF NON-ACCEPTANCE OF THIS LICENSE YOU ARE NOT PERMITTED TO INSTALL THE SOFTWARE.
. Transfer (1) You may not rent, lease, sublicense or lend the Software or documentation.
which the date of the purchase according to the invoice is decisive). The Licensor is free to cure the defects by free repair or provision of a faultless update. (2) The Licensor and its suppliers do not and cannot warrant the performance and the results you may obtain by using the Software or documentation. The foregoing states the sole and exclusive remedies for the Licensor’s or its suppliers’ breach of warranty, except for the foregoing limited warranty.
12. Other (1) This contract includes all rights and obligations of the parties. There are no other agreements. Any changes or alterations of this agreement have to be performed in writing with reference to this agreement and have to be signed by both contracting parties. This also applies to the agreement on abolition of the written form. (2) This agreement is governed by German law. Place of jurisdiction is the competent court in Frankfurt am Main.
Contents Introduction........................................................................................................................................... 1 Reference ..............................................................................................................5 Overview................................................................................................................................................ 5 Creating a PyroCluster Effect .........................................
INTRODUCTION 1 PYROCLUSTER Introduction From fire to water, from hot rocks to cool mists, PyroCluster puts you in control of countless volume effects that will add realism to your stills and your animations. PyroCluster is a module for CINEMA 4D that provides a powerful toolset for creating such effects as realistic clouds, haze, fire and smoke. With PyroCluster, in a single module you have literally an unlimited number of volume effects.
2 INTRODUCTION PYROCLUSTER Installation To install PyroCluster, run the installation program and follow the on-screen instructions. The installation program will create a PyroCluster folder in your CINEMA 4D Modules folder. The installation program will place all the CINEMA 4D PyroCluster files into this PyroCluster folder. Training Training is available for PyroCluster and other MAXON products. For details, please contact MAXON or your local MAXON distributor.
1 Reference
PYROCLUSTER REFERENCE 5 Overview Driven by a high quality, volumetric render engine, PyroCluster enables you to produce truly spectacular realistic effects. Volumetric effects are among the most spectacular of all 3D effects, especially when animated. PyroCluster can not only be used to create regular volumetric effects such as smoke and haze, but it is also perfect for fiery or solid liquid effects. The name ‘PyroCluster’ is borrowed from a natural phenomenon called a pyroclastic cloud.
6 REFERENCE PYROCLUSTER PyroCluster employs a unique interface that utilizes gradients to control the effect. Gradients control the color, age, scale animation and variation of each PyroCluster volume. By simply sliding or editing color boxes you can change the PyroCluster effect dramatically. Presets for fire, smoke, clouds, steam and volcanic ash can be used as is, or edited further to achieve the look you desire. Many kinds of gaseous cloud effects are possible.
REFERENCE 7 PYROCLUSTER Advanced optimization features in the PyroCluster Volume Tracer (the bit that actually does the rendering) offer many ways to improve render speed and quality. For example, PyroCluster provides two ways to create shadow maps for a single light source. One light can affect self shadows in the volume differently from the shadow that is thrown onto other objects by the cloud or volume effect. Imagine how much render time you can save by using just a single light in a scene.
8 REFERENCE PYROCLUSTER Creating a PyroCluster Effect To get you started as quickly as possible, here are the essential steps to produce a PyroCluster effect. Setting up a PyroCluster effect is a simple process of making two special new materials in the Material manager and then assigning those materials to the appropriate objects in the Object manager. - Choose Objects > Scene > Environment to create an Environment object.
REFERENCE 9 PYROCLUSTER We have included many sample files and animations, and these can be found in the Features/PyroCluster folder within the CINEMA 4D folder. You might like to merge these into your own scenes and modify them to your needs. By experimenting with these sample effects you can begin to understand how to build your own effects from scratch.
10 REFERENCE PYROCLUSTER To find the optimum value for World Step Size we suggest using a manual subdivision technique. Start with a number as high as you think is reasonable, let’s say 10. Perhaps the image looks terrible, with no detail at all. So cut the value in half and, if the image is still unacceptable, halve it again.
REFERENCE 11 PYROCLUSTER Settings for the Volume Tracer Material The PyroCluster Volume Tracer is required for rendering the PyroCluster effects. Assign it to the object within which you want to use PyroCluster. The Volume Tracer is the part of PyroCluster that controls how the effect will be rendered and where it will be rendered. The settings you make for the Volume Tracer will greatly affect the render quality and render speed for the effect.
12 REFERENCE PYROCLUSTER Render Mode Here you can choose from various preset render modes. The main differences between these modes are their render quality and how long they take to render. In order of best render quality (and longest render time) first, these are: • Crispy • Crispy-Gas • Hazy The following mode: • User allows you to set your own render mode using various parameters that will no longer be ghosted including World Step Size and Ray Trans Limit.
REFERENCE 13 PYROCLUSTER Trans. Limit settings The Trans. Limit settings are available only when Render Mode is set to User. See also ‘How are PyroCluster effects created?’ earlier in this chapter. These parameters offer another way to speed up render times. They determine the cut-off value for the Volume Tracer engine. Usually the volume is traced deeply until the transparency of a point is 0, i.e. it is 100% opaque.
14 REFERENCE PYROCLUSTER Volume Light Volume light with Shadow Color Filter turned on (left) and with an inverted light effect (right). By default, PyroCluster supports volume light effects. You may use any CINEMA 4D light and effect to illuminate PyroCluster atmospherics, including Inverse Volumetric lights. To obtain colored volume light shadows, enable the Shadow Color Filter option on the Shadow page for PyroCluster.
REFERENCE 15 PYROCLUSTER Gradients Understanding how the gradients work is key to getting the most out of PyroCluster. Certain parts of PyroCluster, such as age and distance effects, can be controlled via gradients; an example of a gradient can be seen to the right of Color, above. Gradients work the same way in all parts of PyroCluster. Using gradients The small pointed squares underneath the gradient are called ‘knots’. Each knot ties a color to the gradient at that position.
16 REFERENCE PYROCLUSTER The gradient and its options To open and close the gradient options, click the small triangle that is on the left of the gradient. Interpolation Cubic Knots Interpolates between the knots and bias handles using CatmullRom interpolation. This method is ideal when using a large number of knots. Drag a bias handle left or right to adjust the bias of the interpolation. Cubic Bias Uses a Bézier interpolation algorithm to interpolate between the knots and bias handles.
REFERENCE 17 PYROCLUSTER Intensity The measurement of intensity for the selected color knot. Edit Alpha, Display Result The Edit Alpha and Display Result options change the gradient display accordingly. A few effects can have transparency added via an alpha channel gradient. To edit the alpha channel gradient, enable the Edit Alpha option; a grayscale gradient will replace the current gradient.
18 REFERENCE PYROCLUSTER Each flamethrower particle flying away from the emitter (i.e. the nozzle), has an age — it was born at some time, it will die at some time. So we’ll use the Age page to define the colors of the flame over time. Setting colors Figure 1 (left): Setting the color of the flamethrower. Figure 2 (right): Setting the transparency of the flame. Time is indicated in the gradient as particle birth on the left and particle death on the right.
REFERENCE 19 PYROCLUSTER Animating colors To control the particle radius by age (so that older particles grow larger, say) is a straightforward concept, but what about changing the color of each particle over time? At first glance, the color gradients in PyroCluster can be a little daunting, so we’ll give an overview here. See the relevant descriptions of the various options for more detail.
20 REFERENCE PYROCLUSTER Here is an example of using the color mix feature. First, let’s assume that you have defined a gradient for Color on the Globals page, as shown below. So each puff consists of a yellow core, turning through red to blue at its edge. The gradient controls the base color of the particle cloud. You’ve then created a gradient for Color on the Age page that looks like the gradient in the second picture below: red at the particle’s birth, turning green as the particle dies.
PYROCLUSTER Mix in some red, turning to green over time, with mixing mainly happening towards the end of the particle’s life. The Age page’s Color gradient has two knots (red at the left, green at the right) and the Color Mix gradient goes from white to black. Finally, add some transparency as the particle dies by defining, on the Age page, an alpha gradient for the Color that goes from white to black. Enable Edit Alpha to edit the alpha gradient.
22 REFERENCE PYROCLUSTER Settings for the PyroCluster Shader You create a PyroCluster shader in the Material manager. You can edit the shaders settings in the Attribute manager or in the Material Editor. You can use all of PyroCluster’s effects together. However the result may not always be what you would expect. Depending on the settings, for example, the Distance effects may carry more weight than the Age effects.
REFERENCE 23 PYROCLUSTER Render Mode By using PyroCluster as a post effect (VideoPost) you can often cut render times dramatically. When VideoPost is selected, a simplified rendering process is used, which among other things handles fractals differently. This means that you will get a different result when using VideoPost than you would with Atmospheric mode. For better and faster results with VideoPost, turn off particle shadows using the relevant options on the Shadow page.
24 REFERENCE PYROCLUSTER Volume When using high World Step Size values, keep Volume at its default value of 100% The Volume value controls how accurately a ray is sub-sampled within the PyroCluster volume. Volume controls how accurately a ray is sub-sampled in the PyroCluster volume; it determines how far a ray penetrates into the volume and thus how many points are sampled. A Volume of 50% would consider only half of the points in a volume when creating the fractal noise.
REFERENCE 25 PYROCLUSTER Density To obtain dark smoke effects, increase this value. This value controls the overall transparency of the atmospheric effect. A value of 0 means that every single puff will be 100% transparent. Higher values will make the volumetric effect more dense. Keep in mind that low density values may have a huge impact on render time. The puff’s density is calculated according to several aspects of the effect.
26 REFERENCE PYROCLUSTER Gradient Mode PyroCluster generally renders puffs based on the values in a color gradient. The color to the left of the gradient is used in the center of the puff while the color to the right is used at the outer edges. Flat Radius Particles tend to look flat in Flat Radius mode, but they are fast to render. Flat Radius mode uses a trick to render the color gradient into the volume effect.
REFERENCE 27 PYROCLUSTER It makes no difference how large the puff grows, since the gradient is always adjusted to fit, a process known as ‘normalization’. You can change the normalization of the gradient using the Min and Max values. Min represents the center area (0 is the actual center) and Max represents the outer edge of the puff (100% is equivalent to the radius of the puff).
28 REFERENCE PYROCLUSTER Use Intersection, Ray Bias A wooden box filled with smoke, with Use Intersection disabled (left) and enabled (right). The enabled option keeps the smoke in the box. Intersection tests are normally used to detect collisions in dynamic simulations. However, intersection testing also helps to constrain gas or smoke, so enable this option if you want to, for example, send a gas stream through a pipe.
REFERENCE 29 PYROCLUSTER Age page For details on using gradients, look up ‘Using gradients’ in the index. On this page you can enable and disable age effects and adjust the animation properties of various attributes. With these settings, you can have puffs change their color, radius and luminosity depending on how far away they are from the emitter. This is useful for effects where the color, shape and luminosity changes over distance, such as the flames of rocket boosters, for example.
30 REFERENCE PYROCLUSTER A white color on the gradient means the puffs will stay the same size or luminosity. A black color means zero radius or no luminosity, while gray values are intermediate values. High variation in the gradient will create random volume sizes. Luminosity For details on using gradients, look up ‘Using gradients’ in the index. You can easily adjust the luminosity of the particles over their lifetime.
REFERENCE 31 PYROCLUSTER Distance page To preview the puffs, on the Shape page enable the Preview option. With these settings, you can have puffs change their color, radius and luminosity according to how far away they are from the emitter. Here you can change the color, radius and luminosity of puffs depending on how far away they are from the emitter. This is useful for effects where the color, shape and luminosity changes over distance such as seen in the flames of rocket boosters.
32 REFERENCE PYROCLUSTER Radius, Luminosity For details on using gradients, look up ‘Using gradients’ in the index. The Luminosity gradient controls the luminosity of puffs within the cavity. These gradients control the radius and luminosity of puffs depending on their distance from the cavity’s inner wall (see ‘Near Range, Far Range’ above). The left edge of the gradient represents the Near Range value, the right the Far Range value.
REFERENCE 33 PYROCLUSTER Cylindrical Distance page If you want to preview puffs while making changes to parameters, enable the Preview option on the Shape page. These settings are almost identical to those on the Distance page. To switch on the cylindrical effect, enable the Use Cyl.Distance Effects option. With these settings, two invisible concentric cylinders are notionally positioned on top of the emitter, facing in the direction that particles are being emitted.
34 REFERENCE PYROCLUSTER Radius, Luminosity For details on using gradients, look up ‘Using gradients’ in the index. These gradients control the radius and luminosity of puffs depending on their distance from the inner cylinder wall. The left edge of the gradient represents the Near Range value, the right edge represents the Far Range value. A white color on the gradient means the puffs will stay the same size or luminosity.
REFERENCE 35 PYROCLUSTER Shape page If you want to preview puffs while making changes to parameters, enable the Preview option on the Shape page. PyroCluster puffs don’t have to be spherical. They can also be cylindrical, cuboid or shaped like donuts. Type Puffs may have one of four shapes: Sphere, Cylinder, Box or Torus The shape you choose will have a significant effect on the rendered result, as demonstrated here. Spherical volume in viewport and rendered.
36 REFERENCE PYROCLUSTER Radius, Radius 2 The Radius 2 parameter is only available when Type is set to Torus. Radius Radius and Radius 2 define the size of the puffs. Their exact meaning depends on the shape of the puffs. Radius Radius Radius Sphere Radius 2 Radius Cylinder Radius Box Radius Torus These parameters set the maximum size of the puffs. The meaning of the values depends on the shape chosen using the Type drop-down list.
REFERENCE 37 PYROCLUSTER Rotation You can rotate puffs about any axis. Rotate X = -90. Rotate Y = 90. Rotate Z = 90. These input boxes enable you to rotate puffs about any axis. If you are using spherical shapes for puffs, rotation will make no difference to them. Scale Animate each of the scale values to create dramatic moving clouds. Puffs can be scaled along any axis. Scaling along the X-axis. Scaling along the Y-axis. Scaling along the Z-axis.
38 REFERENCE PYROCLUSTER Illumination page PyroCluster effects can be lit in several ways using the options on this page. The illumination of atmospheric effects is one of the keys to successful and believable animation. Without light, there’s nothing to see. The type of illumination used can dramatically change the look of a PyroCluster effect. Use Illumination off. Diffuse lighting. Ray Angle lighting. Use Illumination Enable the Use Illumination option to activate Illumination effects.
REFERENCE 39 PYROCLUSTER Bump Choose Bump to set the Volume Tracer engine into a special volumetric bump shading mode (also known as voxel rendering). This method uses true phong shading algorithms (adopted for volume tracing) to render the 3D volume. To create a specular highlight only (without any bump structure), set the Bump value at the bottom of the page to 0% or use Ray Angle only. See also ‘Bump’ below. Self Illum. Self Illum. set to 0% (left), 10% (center) and 100% (right).
40 REFERENCE PYROCLUSTER In the examples above, a smoke cloud is rendered on a grey background; there is one spotlight that illuminates the smoke. As you can see in the left-hand image, the edges of the cloud are, by default, pure black. Trans. Illum. helps you to soften areas in the volume that do not receive light, such as these edges. A value of 0 will render all areas, regardless of their illumination level. Set Trans. Illum.
REFERENCE 41 PYROCLUSTER Soften This effect will be visible only when using more than one light. Soften set to 0% (left), 50% (center) and 100% (right). When Strength is high and Shininess is low you might see harsh backlight effects. Increasing the Soften value will smooth out the regions affected. Bump Bump set to 0% (left), 33% (center) and 100% (right). The Bump value has the most impact on the overall look of the final effect. Higher values will result in more surface deformation.
42 REFERENCE PYROCLUSTER Shadow page PyroCluster effects have a unique range of options to provide control over shadows. PyroCluster creates 3D volumetric effects using both shadow casting and transparency information. PyroCluster effects can receive shadows, can cast shadows of any color, can have self shadows and shadows that have their own ambience. PyroCluster puffs can not only receive and cast shadows, but they can also have self shadows of any color and transparency, and even cast colored shadows.
REFERENCE 43 PYROCLUSTER Receive Shadows Enable this option if you want other objects in the scene to be able to cast shadows onto PyroCluster puffs. Cast Shadows Enable this option if you want puffs to cast shadows onto other objects. Self Shadows Enable this option if you want the PyroCluster effect to cast shadows onto itself. Raytraced Samples (see below) create the most realistic effects, but keep in mind that they also take the longest time to render.
44 REFERENCE PYROCLUSTER Shadow Color Filter Enable this option if you want to use colored shadows. The color of the shadow is taken from the color and intensity of the volume effect of the puff — for example, a green puff will cast a green shadow. Use ShadowMaps Samples, Volume Volume set to 0.8 (left) and 1 (right). Enable the Use ShadowMaps Samples option if you want to limit the amount of volume sub-sampling for shadow maps in order to speed up rendering.
REFERENCE 45 PYROCLUSTER Dark Factor This value controls the amount of light that is added or subtracted based on the transparency of different areas of the puffs. Higher, positive values will darken areas of low transparency; negative values will brighten areas of low transparency. Brightness This value controls how dark the areas should become when you use a Dark Factor.
46 REFERENCE PYROCLUSTER Noise page On this page you can create true volumetric noise effects — effects that will change as a camera moves through a volume. Here you can create real 3D volumetric noise effects where the effect will change as you move into the volume. Use Noise This switches the noise engine on and off. Noise Type Eight noise effects provide plenty of versatility. Gaseous. Fire. Electric. Regular. Fractal. Turbulence. fBm Fractal. fBm Turbulence.
REFERENCE 47 PYROCLUSTER Regularity Regularity set to 0% (left), 50% (center) and 100% (right). Regularity controls the feathering of the rendered puffs. By default PyroCluster uses primitive volumes to render the smoke or cloud effect. To remove visible edges, use the Regularity value. A value of 100% will create sharp volume edges while a value of 0% will create feathered volumes. Grow Radius Grow Radius set to 0% (left) and 100% (right).
48 REFERENCE PYROCLUSTER Peak Blend From left to right: Peak Blend set to -60%, 0%, 200% and 1000%. The Peak Blend value controls the size of the hot spots in the effect. Increasing values will shrink the effect and produce denser hot spots. Negative values will widen the effect, creating an inverted effect where the hot core grows to the outside. With fBm Fractal noise, Peak Blend controls the smoothness of the fractal noise edges.
REFERENCE 49 PYROCLUSTER Gain Gain set to 0% (left), 50% (center) and 100% (right). Gain controls the noise intensity on the inside of the effect. A setting of 50% is used as the center of intensity (the same number of bright and dark pixels). Bias Bias set to 10% (left), 50% (center) and 100% (right). Bias controls the noise intensity on the outside of the effect. A setting of 50% is used as the center of intensity (the same number of bright and dark pixels). Low Thres., High Thres.
50 REFERENCE PYROCLUSTER Use Color With Use Color enabled, the colors used in the fractal effects can be controlled directly from the Noise page, overriding the same settings on the Globals page. If you enable this option the color for the effect is taken from the gradient here on the Noise page rather than from the one on the Globals page. This gradient controls the coloring of the puff based on the result of the noise render engine, enabling you to make effects based on the noise itself.
REFERENCE 51 PYROCLUSTER No Scale No Scale disabled (left) and enabled (right). When you scale a puff (using ‘Scale’ on the Shape page) you may want to leave the scale of the noise function itself unchanged. By default, when scaling a puff, PyroCluster also stretches the noise volume function according to the Scale values set on the Shape page. Enable No Scale here to leave the scale of the noise function unchanged. Invert Noise Normal noise (left) and inverted noise (right).
52 REFERENCE PYROCLUSTER Animating PyroCluster parameters You can animate any PyroCluster parameter that has a circle next to its name in the Attribute manager or Material Editor. To animate a parameter: - In the Attribute manager or Material Editor, Ctrl-click on the parameter’s circle. - Repeat the above at a different point in time, using another value, and the parameter is animated.
REFERENCE 53 PYROCLUSTER Choosing Light Sources For even greater control over both render times and the appearance of effects, each light source in your scene can be configured to either influence or ignore PyroCluster puffs. PyroCluster is a real volume tracer that uses advanced volume calculations. Unfortunately, atmospheric effects usually take a while to render. You must take care when using several light sources in a PyroCluster scene.
2 Tutorials
TUTORIALS 57 PYROCLUSTER Gradient Animation In this tutorial we’ll learn how to use PyroCluster’s gradient sliders to change the color of puffs depending on their distance from the emitter. PyroCluster features a unique and intuitive way to animate puffs; by ‘puffs’ we mean particles that have had a PyroCluster material applied to them. While puffs and their parameters can be animated in the regular way using keyframes, PyroCluster also enables you to animate them using special gradients.
58 TUTORIALS PYROCLUSTER Drag the VolumeTracer material from the Material manager and drop it onto the Environment object in the Object manager. As an Environment object encompasses the entire scene, applying a VolumeTracer to it means that all PyroCluster effects in the scene are controlled by this VolumeTracer. We have now completed the basic, minimum set-up for a PyroCluster effect. In the Material manager, select the PyroCluster material by clicking on it once.
TUTORIALS 59 PYROCLUSTER The settings on the Distance page enable us to change the appearance of puffs depending on how far away they are from the emitter. Here we are saying that we want our puffs to begin changing 100 units from the Emitter and that they should be completely changed when they reach 500 units. Still on the Distance page, click the small triangle to the left of the Color gradient to open the Color gradient options.
60 TUTORIALS PYROCLUSTER Summary There are many, many parameters of a PyroCluster material that can be animated using gradient sliders on the various parameter pages in the Attribute manager or Material Editor. Although most of them do very specific and different things, all of them use gradients to animate changes over time in a similar way to the technique described here.
TUTORIALS 61 PYROCLUSTER Keyframe Animation The vast majority of a PyroCluster material’s parameters can be animated using keyframes in exactly the same way as regular CINEMA 4D objects and materials. Keyframe animation is the cornerstone of animation in CINEMA 4D. Just like any normal CINEMA 4D object or material, we can animate PyroCluster puffs and their parameters quickly and easily by recording keyframes. Here we will learn how to animate a single parameter (Radius) using keyframes.
62 TUTORIALS PYROCLUSTER Drag the VolumeTracer material from the Material manager and drop it onto the Environment object in the Object manager. As an Environment object encompasses the entire scene, applying a VolumeTracer to it means that all PyroCluster effects in the scene are controlled by this VolumeTracer. We have now completed the basic, minimum set-up for a PyroCluster effect. In the Material manager, select the PyroCluster material by clicking on it once.
TUTORIALS 63 PYROCLUSTER Still on the Shapes page, enable the Preview option. To make puffs visible in the viewport, enable the Preview option. This enables us to preview the animation of PyroCluster puffs in the viewport. In the animation toolbar, press Play. We can see that the particles start off small and become larger over time. Summary The vast majority of parameters for a PyroCluster material can be animated in this way.
Index
INDEX 67 PYROCLUSTER A G P Animating parameters 52 Attribute manager Age page 29 Cylindrical Distance page 33 Distance page 31 Globals page 22 Illumination page 38 Noise page 46 Shadow page 42 Shape page 35 Auto rotation 36 Gain 49 Gradients alpha channel 17 animating colors 19 birth and death of particles 18 context menu 17 interpolation 16 setting colors 18 using gradients 15 working with gradients 17 Gradient Mode 23, 26, 50 Grow Radius 47 Parameters.
68 INDEX PYROCLUSTER V VideoPost 23 Visible light.