Square Enix © Goodbye Kansas

Table of Contents

Overview


V-Ray for Maya supports the use of tiled OpenEXR (.exr) and TIFF (.tx, .tex) files with MIP maps. This allows V-Ray to load just parts of a given texture during rendering in order to save memory. When you are using tiled OpenEXR or TIFF files with mipmaps V-Ray automatically recognizes this and loads the appropriate tiles during rendering instead of just loading the whole texture. In order to convert many regular image file formats into tiled OpenEXR files you can use the img2tiledexr tool that comes with V-Ray. To convert to tiled TIFF files, the maketx tool from the OpenImageIO library can be used. Using tiled OpenEXR and TIFF files also allows V-Ray to dynamically unload some of the tiles when memory is needed for something else. The loading and unloading of the tiles works the same way as the loading and unloading of dynamic geometry and by default is stored in the same dynamic memory pool. You can set a dynamic memory limit in the System rollout of the Settings tab in the Render Settings dialog. You can also designate a separate cache for tiled textures by using the VRAY_TEXTURE_CACHE environment variable, and assign to it the desired maximum size of the cache in megabytes (see the section on Environment Variables as well as the Getting Started with Environment Variables page for more details).


Using Tiled OpenEXR and TIFF Files for Displacement


When using tiled OpenEXR/TIFF files for 3d displacement or subdivision displacement, some additional set up might be necessary. V-Ray needs to know the lowest and the biggest displacement values in order to perform the raytracing efficiently. For scanline-based OpenEXR/TIFF files, V-Ray can find the minimum and maximum values easily, since it loads the entire file into memory. However for tiled OpenEXR/TIFF files, this is not possible and you need to specify those values explicitly. This can be done in either of two ways: 


You can add attributes to a tiled OpenEXR file with information about the minimum and maximum value:
 

Attribute NameAttribute TypeDescription
minValuefloatThe lowest value in the texture
maxValuefloatThe biggest value in the texture
minValueVecV3fThe lowest value in the texture for each of the red, green and blue components respectively.
maxValueVecV3fThe biggest value in the texture for each of the red, green and blue components respectively.


You can specify the texture bounds explicitly in the Displacement control attributes group on a per-object basis.

Note that this is not required for the 2d displacement method - in that case, V-Ray presamples the displacement texture so it can find the correct minimum and maximum values automatically.