JOS JOS Compositor

3D

Gaussian splats and VDB volumes

JOS reads and renders both itself, with no extra software. Both are composited by depth with the Hydra render (in front of, among or behind the scene's surfaces) in RenderScene and in the 3D viewport.

ReadSplat and ReadVDB are objects like the others: plug them into a Scene, and place them with their own translate, rotate, scale and pivot (or by moving them in the 3D view).

Gaussian splats

ReadSplat reads:

Dropping one of these files on the graph makes a ReadSplat.

Settings: - colorspace: the splats' colour encoding. Empty means sRGB. - holdout: the splats hide what's behind them but add nothing.

How they render: - With Edit > Preferences > Performance > Process on the GPU with Vulkan on (the default), splats render on the GPU. A million splats take a few tens of milliseconds at HD. Otherwise they render on the CPU. - Where splats cover at least half a pixel, RenderScene's depth, position, normal and Cryptomatte passes are theirs. - Their colours are converted to your working space through OpenColorIO.

Tips: - To place splats, select them in the viewport and move them: the ReadSplat's transform settings follow. - Captures from COLMAP usually come in upside down: set the ReadSplat's rotate x to 180.

Not yet: SuperSplat's compressed .ply, animated splats in a USD stage, deep output.

VDB volumes

ReadVDB reads a .vdb file or a sequence (smoke.####.vdb). Dropping one on the graph makes a ReadVDB.

Knob Default What it does
frame offset 0 Shifts the sequence in time
density grid density The grid that holds the smoke
density_scale 1 Thicker or thinner smoke
color 0.8 grey Albedo of the smoke
anisotropy 0 Forward (+) or backward (−) scattering
shadows on Self-shadowing
emission auto The grid that glows: auto finds flames, fire, heat or temperature; or none
emission_intensity, emission_scale 1, 1 Brightness of the glow
ramp from / to (K) 1000 / 2500 Blackbody colour range for the emission
step 0.5 Ray-march step in voxels: smaller is finer and slower
holdout off The volume hides what's behind it but adds nothing

Lighting: - Volumes are lit by your Light3Ds and by the stage's own lights. With no light at all, a key light from above and behind the camera is used. - In RenderScene, volumes and surfaces cast shadows on each other, and volumes shadow each other.

Grids: float, double and half scalar grids, uncompressed, zip or Blosc. Volumes inside a USD stage render too. The emission colour is converted to your working space.

Not yet: vector grids, velocity motion blur, GPU rendering of volumes, volumes in Storm's own preview, deep output.