Do you guys know what image format to use in order for blender to internally load a 32-bit single-channel Non-color image for displacement?
So far I’ve been able to produce:
png in Non-Color mode loads as RGBA8 or R8 if single-channel, if the source is 8-bit.
png in Non-Color mode loads as RGBA16F or R16F if single-channel, if the source is 16-bit. (can toggle to internally RGBA32F or R32F with the Half-Float Precision option but it’s pointless with a png)
png in sRGB mode loads internally as SRGB8_A8 or R8 if single-channel, if the source is 8-bit.
png in sRGB mode loads internally as RGBA16F or R16F if single-channel, if the source is 16-bit (can toggle to internally RGBA32F or R32F with the Half-Float Precision option but it’s pointless with a png)
(I know png is max 16-bit integer but I mention them as a reference)
32-bit exr behaves a little better, whether sRGB or Non-color blender internally always loads them as RGBA16F or RGBA32F, depending on whether the user selects Half Float precision.
However I haven’t found a way to load an image internally as R32F or R16F, when the source image is a single-channel 32-bit image. (exr or tif)
Since they’re displacement they’re incredibly high resolution (multiple 16k), so the extra three channels (GBA) really waste memory considering all other textures are lower resolution rgba8-bit.
Or if there is a way to utilize the different channels in different UDIM tiles, to reduce the memory footprint?
Thanks!





















