VDB_RENDER(1)
π vdb_render(1) β like, the user-commands era π
okay bestie, welcome to vdb_render(1), the manual page that ray-traces OpenVDB volumes and honestly? she eats. let's get into it π¦
π NAME π
vdb_render β ray-traces OpenVDB volumes β¨
π SYNOPSIS π
vdb_render in.vdb out.{ppm,exr,png} [options]
π DESCRIPTION π
Which: ray-traces OpenVDB volumes. Options: yes, she has options, and we are going through every single one of them, no skips, no skimming, because that's the vibe π«Ά
-apertureF β perspective camera aperture in mm (default:41.2)-cameraS β camera type; either"persp[ective]"or"ortho[graphic]"(default:perspective)-compressionS β EXR compression scheme; either"none"(uncompressed),"rle"or"zip"(default:zip)-cpusN β number of rendering threads, or1to disable threading, or0to use all available CPUs (default:0)-farF β camera far plane depth (default:3.4e+38)-focalF β perspective camera focal length in mm (default:50)-fovF β perspective camera field of view in degrees (default:44.8)-frameF β ortho camera frame width in world units (default:1)-lookatX,Y,Z β rotate the camera to point to (X, Y, Z)-nameS β name of the volume to be rendered (default: render the first floating-point volume found inin.vdb)-nearF β camera near plane depth (default:0.001)-resWxH β image dimensions in pixels (default:1920x1080)-rX,Y,Z-rotateX,Y,Z β camera rotation in degrees (default: look at the center of the volume)-tX,Y,Z-translateX,Y,Z β camera translation-upX,Y,Z β vector that should point up after rotation with-lookat(default:[0, 1, 0])-vβ verbose (print timing and diagnostics)-versionβ print version information and exit-h,-helpβ print this usage message and exit
π§ Level set options π§
-colorS β name of avec3svolume to be used to set material colors-isovalueF β isovalue in world units for level set ray intersection (default:0)-samplesN β number of samples (rays) per pixel (default:1)-shaderS β shader name; either"diffuse","matte","normal"or"position"(default:diffuse)
βοΈ Dense volume options βοΈ
-absorbR,G,B β absorption coefficients (default:[0.1, 0.1, 0.1])-cutoffF β density and transmittance cutoff value (default:0.005)-gainF β amount of scatter along the shadow ray (default:0.2)-lightX,Y,Z[,R,G,B] β light source direction and optional color (default:[0.3, 0.3, 0, 0.7, 0.7, 0.7])-scatterR,G,B β scattering coefficients (default:[1.5, 1.5, 1.5])-shadowstepF β step size in voxels for integration along the shadow ray (default:3)-stepF β step size in voxels for integration along the primary ray (default:1)
πΈ EXAMPLES πΈ
look at her go, two whole examples, iconic behavior honestly:
vdb_render crawler.vdb crawler.{ppm,exr,png} -shader diffuse -res 1920x1080 \
-focal 35 -samples 4 -translate 0,210.5,400 -compression rle -v
vdb_render bunny_cloud.vdb bunny_cloud.{ppm,exr,png} -res 1920x1080 \
-translate 0,0,110 -absorb 0.4,0.2,0.1 -gain 0.2 -v
β οΈ Warning β οΈ
This is not (and is not intended to be) a production-quality renderer. Use it for fast previewing or simply as a reference implementation for integration into existing ray tracers.
like bestie, read that again. she's a preview girlie, a reference implementation queen. do NOT put her in prod, that's not her moment π she's here for fast previewing and for being the blueprint you drop into your existing ray tracers. periodt.
π AUTHOR π
This manual page was written by Mathieu Malaterre <malat@debian.org> for the Debian GNU/Linux system (but may be used by others). we stan a documented manpage, fr fr π«Ά
and that's the whole thing, bestie β this page is vdb_render 10.0.1, dated August 2026, part of the VDB_RENDER(1) set. slay, go trace some volumes πβ¨π
π¦ where this page comes from
- ubuntu stonking: libopenvdb-tools 10.0.1-4 Β· MPL-2.0
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms