Snarlygribbly opened this issue on Aug 23, 2012 ยท 195 posts
millighost posted Tue, 28 August 2012 at 10:05 AM
For Poser 8: Poser converts its textures to 16 bit exr while reading the textures. These contain samples with 16 bit floating point values, which in turn contain only 10 significant digits, this results in effectively only 10 significant bits of displacement (not even 16). The naming could more exact, though, because 16 bit floating point is not the same as 16 bit linear values.
For the image above, i created a texture containing a 100x100 perlin noise between 0 and 1, offset by a value of 1000, which is just at the limit of the representation of the 10 bits precision, and plugged it into the bump channel. The image on the left is rendered with blender (which supports 32 bit floating point textures), it looks like one would expect. The image on the right is from Poser 8, the texture is basically gone. You can recognize an overall noise added to the image, as well in the lower left an artifact, where the texture caching process probably switched from one value to the next.
This only applies to image textures, of course, in general Poser supports many more bits for displacement (when using procedural textures) i do not know how many. Also Poser 9 might do it differently.