Mark Elendt

mark

About Me

Expertise
Developer
Location
Canada
Website

Connect

My Talks

obj-image SIGGRAPH ASIA
Houdini Rendering & De-noising

Recent Forum Posts

Karma mipmap textures memory usage optimisation Aug. 8, 2022, 7:59 a.m.

Having tiled mipmapped files means that the renderer only loads the portions of the texture that are required for rendering. So this saves on I/O.

Even if you have a 21K x 21K texture (https://visibleearth.nasa.gov/images/73909/december-blue-marble-next-generation-w-topography-and-bathymetry), if it's tiled and mip-mapped, the renderer will only load the portions of the image it needs to render. If you used the .png or .jpg as a texture, then the entire image would have to be read by the renderer.

Karma mipmap textures memory usage optimisation Aug. 5, 2022, 2:24 p.m.

Looking at render stats should help figure out where memory is being used up. With verbosity, the log should show how much memory was used by .rat files and by primvars (including displacement memory). Displacement memory should be better in H19.5.

- .rat files are always MIP Mapped. I don't think there are any tools to extract a specific MIP level.
- imaketxcan be used to make mipmapped .exr or .rat files (or even .tif files). The advantage of .exr is that there are a lot of other tools that can be used (for example houdini ships with hoiiotool- the OIIO Swiss-army knife utility). The disadvantage of mipmapped .exr files is that they are 16 bit float images, so you can't create an 8-bit texture for example.
- karma uses the screen space of the surface to determine the mip levels automatically. The shading quality can be adjusted using the shading quality multiplier in the render settings.
- For debugging mip maps, it's probably best to use .exr files since it's easy to create a map that has different diagnostics on each MIP level
- loading a .rat file in mplay will only display the largest MIP level.

Cryptomatte data from a 3rd party render delegate June 28, 2022, 9:21 a.m.

This is discussed a little bit in https://www.sidefx.com/docs/hdk/_h_d_k__u_s_d_hydra.html#HDK_USDHydraHusk [www.sidefx.com]
Hopefully that helps you get started.

The interface has changed for the next version of Houdini though so that there are no dependencies on the Houdini USD Bridge.