Milestone 4.0.9


  • Reduced texture I/O for glossy reflection: For rays of type AI_RAY_GLOSSY, the differentials used to calculate texture sampling footprints have been improved resulting in generally larger filter sizes while still matching the requested visible detail. Texture sampling will now choose less detailed MIP levels when possible and will generally load less data from disk and do less work. (#3034)
  • Faster missing textures: For handle-based texture access via AiTextureHandleAccess(), the texture subsystem will not be redundantly queried once we have determined that a handle corresponds to an unreadable file. This can improve performance in scenes with many missing textures, which surprisingly can happen in certain production pipelines. (#3040)

API additions

Incompatible changes

Bug fixes



#3032Statically link OIIO with jpeg/tiff/png/exr/boost in OSXoiioramonblocker4.02 weeks
#3037OIIO failed assertion with accumulated error messagesarnoldmikeblocker4.013 days
#3035fix "unspecified OIIO error" message for missing EXR texturesoiioramoncritical4.02 weeks
#3041Do not print empty OIIO error messagesarnoldramoncritical4.010 days
#2853Crash when a texture map has non-power of two tilesoiioramonmajor4.04 months
#2974remove annoying log messages about unresolved tagsarnoldangelmajor3.37 weeks
#3026cannot create packed arrays with more than about 1 billion elementsarnoldthiagomajor4.03 weeks
#3034Compute ray direction differentials for glossy reflectionarnoldmarcosmajor4.02 weeks
#3050memory leak in AI_RENDER_MODE_FREEarnoldthiagomajor4.07 days
#3036reporting wrong number of keys in bvh_motion buildarnoldthiagominor4.013 days




#3052Meshes with identical motion keys and unconnected vertices are corrupted4.0.9.1arnoldthiagocritical4.0.10
#3048Let volume shaders interact with skydome and distant lightsframestore,
#3049Warn when loading procedurals with empty "dso" parameter4.0.9.1arnoldoscartrivial4.0.10
  • No labels