VDB_LOD(1)

πŸ’– VDB_LOD ✨

okay bestie, welcome to the VDB_LOD(1) page β€” this is the one that goes in the User Commands section of the manual, and it's about generating a volume mipmap from an OpenVDB grid. yes, mipmap. like textures but for volumes. we love a level-of-detail moment. let's get into it 🫢


🌸 NAME 🌸

vdb_lod β€” generates a volume mipmap from an OpenVDB grid.

that's it. that's the whole job. it takes a grid and makes it smol (or not smol) on a whole ladder of resolutions. iconic.


⭐ SYNOPSIS ⭐

vdb_lod in.vdb out.vdb -range FROM[-TO[:STEP]] [options]

so basically: give it an in.vdb, tell it where to write out.vdb, say what range of levels you want, and then sprinkle on options like they're glitter. ✨


πŸ¦‹ DESCRIPTION πŸ¦‹

Which: generates a volume mipmap from an OpenVDB grid. Where: right here, bestie πŸ’…

  • FROM β€” the highest-resolution mip level to be generated.
  • TO β€” the lowest-resolution mip level to be generated. defaults to FROM, so if you don't say anything, you just get the one level. lowkey minimalist of you.
  • STEP β€” the mip level step size. defaults to 1.

πŸ‘‘ OPTIONS πŸ‘‘

  • -name S[,S,S,...] β€” the name(s) of the grid(s) you want processed. default behaviour is to process all grids of supported types, so if you're a control freak, this flag is for you.
  • -keep β€” pass through the grids that weren't processed. the default is to discard grids that weren't processed, so this is the "no babe, keep everything" flag 🌈
  • -nokeep β€” cancels an earlier -keep option. it's giving "undo my last text".
  • -p, -preserve β€” if only one mip level is generated, give it the same name as the original grid. the default is to name each level "NAME_level_N", where NAME is the original grid name and N is the level number β€” e.g., "density_level_0". so -p is for when you want your grid to keep its government name πŸ’…
  • -nopreserve β€” cancels an earlier -p or -preserve option. the ultimate "nvm".
  • -version β€” print version information. that's it, that's the whole flag πŸŽ€
heads up bestie: mip level 0 is the input grid. each successive integer level is half the resolution of the previous level. and yes, fractional levels are supported β€” the math girlies ate with that one. πŸ”₯

πŸ“ EXAMPLES πŸ“

generate levels 0, 1, and 2 β€” that's full resolution, half resolution, and quarter resolution respectively β€” for all grids of supported types, and ignore all other grids:

vdb_lod in.vdb out.vdb -range 0-2

generate levels 0, 0.5, and 1 for all grids of supported types and pass through all other grids:

vdb_lod in.vdb out.vdb -range 0-1:0.5 -keep

generate level 3 for the first of multiple grids named "density":

vdb_lod in.vdb out.vdb -range 3 -name 'density[0]'

generate level 1.5 for the second of multiple unnamed grids and for the grid named "velocity", and give the resulting grids the same names as the original grids:

vdb_lod in.vdb out.vdb -range 1.5 -name '[1],velocity' -p

like?? the indexing?? the specificity?? we love a tool that knows what it wants πŸ˜­πŸ’–


πŸŽ€ AUTHOR πŸŽ€

this manual page was written by Mathieu Malaterre <malat@debian.org> for the Debian GNU/Linux system β€” but bestie, it may be used by others too. sharing is caring. 🫢


and that's the whole page, no cap. this was vdb_lod version 10.0.1, dated August 2026. go make some mipmaps, main character. πŸ’œβœ¨

πŸ“¦ where this page comes from