- Acquire data from 3ds Max particle systems like Particle Flow, Thinking Particles and the legacy particle objects.
- Convert FumeFX voxels to particles for direct rendering of fluid simulations.
- Use geometry vertices as particles.
- Load particle files in Krakatoa´s PRT format, CSV files or RealFlow BIN files.
- Render particles as points or as voxels.
- Render particles using volumetric or additive shading models, or a blend thereof. The volumetric model simulates light attenuation due to the density of particles that the light passes through.
- Select from a range of shading models including Isotropic, Phong Surface, Henyey-Greenstein and Schlick to determine the way light is scattered while passing through the volume.
- Control particle Color, Density, Emission and Absorption with 3ds Max Standard Material's Color, Opacity, Self-illumination and Filter channels, supply a custom color, override the particle color globally, or design your own shading data sources using the node-based MagmaFlow Editor.
- Use the 3ds Max´s built-in DOF or Motion Blur multi-pass effects for compatibility, or employ the native Krakatoa Motion Blur and Depth of Field effects which can be applied at the same time.
- Apply Ambient Participating Medium Extinction to particles to simulate light behavior in air or under water.
- Cache particles in RAM before or after the lighting phase to adjust lighting parameters or camera placement and re-render in a fraction of the time.
Saving and Partitioning
- Save any supported particle type to disk for direct access to every frame without preroll.
- Specify the exact channels layout to be saved, or create new channels to save custom data from 3rd party systems or channels created by Krakatoa Channel Modifiers.
- Use the Advanced Partitioning capabilities of Krakatoa to render more particles than 3ds Max could normally process by itself. When running Max in conjunction with Deadline®, distribute large particle simulation jobs over multiple machines, or even over multiple cores of the same machine.
- Recombine partitioned files and render them as a single particle cloud - ultimately, the only limitation on particle counts is your available RAM.
Interaction With Other Renderers
- Load specified scene geometry to act as matte objects to obscure particles from the camera and cast shadows onto particle systems.
- Use the Krakatoa Shadows Generator to generate Deep Opacity Map shadow maps in Krakatoa and to apply these shadows in other renderers like Default Scanline and V-Ray.
- Use the Krakatoa Shadows Explorer and Matte Objects Explorer utilities to mass-assign, manage and inspect the shadow and matte object settings of the scene.
- Use the PRT Loader object to preview input particle files in the 3ds Max viewport – and specify how they will load and render in Krakatoa™.
- Convert any more or less closed geometry surface to a particle cloud by filling its volume with particles using the PRT Volume object.
- Convert the voxels of a FumeFX simulation to a particle cloud using the PRT FumeFX object.
- Convert 3rd party particle sources exposing the Krakatoa particle data streams into Krakatoa-compliant particles using the PRT Source object.
- Apply 3ds Max object space and world space modifiers to PRT Objects just like with any other geometry object to bend, twist, path-deform, free-form-deform, displace etc. your particles.
- Use custom geometry as culling volumes to selectively delete particles while being loaded by the PRT Loader.
- Use the 3ds Max Vol.Select modifier to provide Selection or Soft Selection and pass it up the stack to affect deformation modifiers, to use as control channel in MagmaFlows or to delete particles selectively using the dedicated Krakatoa Delete modifier.
- Offset or tweak the timing of a PRT Loader using a custom curve to speed up, slow down, or create playback effects like reverse, repeat, ping-pong etc. while adjusting correctly position interpolation and velocity data.
Particle Data Editing
- Use the powerful node-based MagmaFlow editor to read, modify and write back particle channel data.
- Perform per-particle mathematical operations , transform particle data between coordinate systems, convert values between data formats and so on.
- Test particles against arbitrary geometry surfaces using raytracing or nearest point lookup operators to acquire information like position, normal, mapping, face index, barycentric coordinates and more.
- Construct custom shaders by using particle data like Position and Normal as well as scene objects like Light Sources and Camera position and orientation to calculate the color, emission, absorptions, density etc. as needed.
- Input Color, Mono and Normal Perturbation data from 3ds Max Texture Maps.
- Access arbitrary scene data using MAXScript and the Script Input node.
- Use the Global Channel Override option to apply MagmaFlows to all scene particles at render time.
- Debug the values at each step of the flow or generate graphical representation of the final output.
- Save groups of operators as compound operators (BlackOps), save flows to reuse and share or save Macros from the editor's Undo buffer to demostrate the dynamic building of the flow with custom timing and comments.
- Use the Particle Data Viewer utility to browse the content of PRT Loaders, PRT Volumes and PRT FumeFX objects.
- Use the PRT Scanner utility to collect and output information about the particle count in PRT Loaders or about missing frames in the file sequences.
- Use the Krakatoa Schematic Flow to analyze the state of the various components of the renderer and resolve problems like missing objects, modifiers etc.
- Use the Krakatoa Explorers utility to mass-modify relevant properties of particle source objects in the scene.
- Use the Krakatoa Log Window to gain insight into the various operations performed by the Krakatoa renderer and its components, browse performance statistics and get informed about error conditions.
- Develop your own scripted tools to read and write particle files in the Krakatoa PRT format.
- Access all relevant properties of the Krakatoa renderer and most of its tools via MAXScript.
- Learn from the Krakatoa User Interface and Utilities script source code provided in unprotected form.
- Tweak and extend the scripted components of Krakatoa to better fit your pipeline.
Particle Flow Interoperability
- Take advantage of the dedicated Krakatoa PRT Birth, Krakatoa PRT Update and Krakatoa ID Test operators to load particles from particle file sequence back into Particle Flow for reprocessing, or use the same approach as a form of customizable disk caching or as a particle deformation pipeline.
- Use the high-performance bonus operators Krakatoa Geometry Test, Krakatoa Geometry Lookup and Krakatoa Collision to test particles against closed geometry volumes, acquire data from geometry surfaces or collide millions of particles with high-resolution meshes at unprecedented speeds.
Performace and Scalability
- Most Krakatoa operations scale in linear fashion, e.g. rendering twice as many particles takes twice as long.
- Krakatoa is largely multi-threaded and will take advantage of multi-core systems to accelerate operations like particle sorting, lighting and drawing.
- Material evaluation and particle culling as well as the processing of Krakatoa Channels Modifiers containing custom MagmaFlows are also fully multi-threaded.
- Krakatoa will not only take advantage of the larger memory address space of 64 bit systems, but performs up to twice as fast as in 32 bit due to the lower memory management overhead.