Krakatoa Features Overview¶
Rendering Methods¶
- KRAKATOA was initially designed to use point splatting as its primary rendering method. It is called “Particle” rendering mode.
- Voxel renderig was added as a secondary option for cases where the camera must fly through dense volumes like clouds.
Drawing Modes¶
- Volumetric rendering is based on particle Density, (Scatter) Color, and optional Emission and Absorption data which includes particles self-shadowing.
- Additive rendering can be forced on all particles in the scene.
- Mixing Volumetric and Additive rendering is also possible by setting the Color, Emission and Absorption per-particle data in specific ways - see the following Krakatoa MX topic, or the Krakatoa MY topic for details.
- Both modes are supported by the Particle and Voxel rendering methods.
Light Scattering Models¶
- When rendering volumetrically, the particles will attenuate and scatter light according to the specified scattering model (also known as Phase Function or Shader).
- The currently supported Phase Functions are Isotropic, Phong Surface, Schlick, Henyey-Greenstein, Kajiya-Kai Hair, and Marschner Hair.
- Some Phase Functions expose parameters that can be set globally, or per particle via particle data channels.
Particle Saving And Loading¶
- KRAKATOA can “render particle to disk” to cache particle animations and render later by reloading the cached data.
- The Thinkbox .PRT file format is the native storage format of KRAKATOA, with .CSV and NextLimit RealFlow Particle .BIN files as alternatives.
- The Krakatoa PRT Loader supports a much larger number of file formats in addition to the ones mentioned above, inclusing Thinkbox’ .SPRT, NextLimit’s .RPC, Leica’s .PTG, .PTS, .PTX, and LiDAR .LAS, .LAZ, and .E57 files.
- KRAKATOA offers tools to save multiple versions of the same particle simulation (called “Partitions”) using different random seeds to combine at render time as a single cloud with a higher particle count.
Procedural Particle Generators¶
- KRAKATOA offers several dedicated objects to generate point clouds for rendering.
- Some if them are available only in specific implementations of KRAKATOA - see the table below for details:
Object | 3ds Max | Maya | CINEMA 4D | Stand-alone | Description |
---|---|---|---|---|---|
PRT Loader | Yes | Yes | Yes | Yes | Loads particle file sequences from disk |
PRT Volume | Yes | Yes | Yes | Yes | Converts a mesh volume to a point cloud |
PRT Surface | Yes | Yes | Yes | Yes | Distributes random points on mesh surfaces |
PRT Fractal | No | Yes | Yes | Yes | Generates a 3D fractal point cloud |
PRT Maker | Yes | No | No | No | Generates N particles or a 3D fractal point cloud |
PRT FumeFX | Yes | No | No | No | Generates points in a FumeFX simulation grid |
PRT Source | Yes | No | No | No | Clones particles as a PRT stream |
PRT Hair | Yes | No | No | No | Generates points on hair strands or splines |
Light Sources¶
- The KRAKATOA renderer supports three types of light sources:
- Direct Light - parallel rays within a cylindrical volume, with explicit circular or rectangular source.
- Spot Light - rays in a rectangular or circular cone from an explicit point source.
- Point Light - calculated as six rectangular spot lights with 90 degrees field of view.
- The native light source objects of 3ds Max, Maya and CINEMA 4D are translated to one of the supported KRAKATOA light types.
- No dedicated light sources are currently implemented by any of the 3D application integration plug-ins.
Cameras¶
- The KRAKATOA renderer supports three types of camera projections:
- Perspective Projecton
- Ortho Projecton
- Spherical Projection
- The native camera objects of 3ds Max, Maya and CINEMA 4D are translated to one of the supported KRAKATOA camera projection types.
- Additional Krakatoa-specific 3ds Max modifiers and CINEMA 4D tags are implemented to provide camera property overrides.
Matte Objects¶
- The KRAKATOA renderer is a dedicated particle renderer and does not render geometry objects - the particle rendering needs to be integrated with a geometry rendering pass in a compositing application.
- The KRAKATOA renderer supports occlusion objects (Matte objects) to create “holdouts” where particles need to be rendered behind scene geometry.
- The Matte objects are rasterized into a Z-Depth buffer, and the particles’ distance to the camera is then compared to this buffer to determine whether the particle is in front or behind the object.
- The visible particles will be drawin into the RGBA output image, whule the occluded particles can be rendered into an Occluded Particles output image or EXR layer.
Channel Generation And Editing¶
- KRAKATOA C4D, KRAKATOA SR and KRAKATOA MY expose a basic set of channel operators for creating, copying and scaling particle data channels.
- KRAKATOA MX and KRAKATOA MY offer a sophisticated node-based toolset called “Magma” for manipulating particle data.