Milestone 4.1.3
Enhancements
- Faster AiPerlin4: The 4-dimensional Perlin noise function AiPerlin4() is now about 1.5x faster. (#3777)
- Faster bump3d: The bump3d shader now makes 25% fewer shader evaluations, which can reduce render times specially when using expensive procedural maps. (#3804)
- Faster lights: Non-motion blurred lights are now a few percent faster to render, specially in scenes with many lights. (#3791, #3792)
- Reduced per-object memory overhead: Ray accel structs now consume a few hundred KBs less memory, which can add up to hundreds of MBs saved in scenes with thousands of objects. We also lowered peak memory used in certain situations. (#3772, #3778, #3783)
- overlay_mode in utility shader: We have added a new overlay_mode parameter to the utility shader which allows you do overlay wireframe on top of the regular color and shading modes. This can be set in the kick command-line with the -om command. (#3800)
Incompatible changes
- Behavior of standard.specular_rotation changed: The specular_rotation parameter in the standard shader will now continuously rotate in the same direction when provided values outside of the [0,1] range instead of switching direction. (#3786)
- objwire utility mode removed: With the new overlay_mode, the objwire color mode in the utility shader is now redundant. The same result can be achieved with -cm obj -om polywire. (#3800)
- Hardcoded name of options node: The name attribute of the options node is now hardcoded to the string "options" and cannot be redefined. Calls toAiNodeSetStr(AiUniverseGetOptions(),"name","foo") will not have any effect. (#3817)
- Removed shader_timing_stats: The global option shader_timing_stats which was used to report fine-grained timings of certain shading operations has been removed. The accompanying diagnostics AOV "texturetime" has also been removed. This both removes a bit of overhead and simplifies the internal logic. (#3818)
Bug fixes
Ticket | Summary | Component | Owner | Priority | Version | Created |
---|---|---|---|---|---|---|
#3781 | peak memory not properly captured | arnold | thiago | major | 4.1 | 3 weeks |
#3782 | corrupted render region output in the X11 kick driver | kick | ramon | major | 4.1 | 3 weeks |
#3784 | AiShaderGlobalsGetTriangle crashes with displacement in free mode | arnold | ramon | major | 4.1 | 3 weeks |
#3785 | AiRadiance texture coordinates | arnold | ramon | major | 4.1 | 3 weeks |
#3786 | specular_rotation parameter in standard shader misbehaving outside of [0,1] range | arnold | alan | major | 4.1 | 3 weeks |
#3788 | NaNs with light_blocker | arnold | ramon | major | 4.1 | 3 weeks |
#3789 | crash in bump3d used in object space | arnold | ramon | major | 4.1 | 3 weeks |
#3798 | static non-invertible matrix transform crashes | arnold | thiago | major | 4.1 | 13 days |
#3803 | curved motion blur not numerically precise | arnold | thiago | major | 4.1 | 11 days |
#3806 | fast_exp symbol is stripped from os x opt build | arnold | thiago | major | 4.1 | 9 days |
#3809 | matrix-transformed cylinder and disk lights broken with 1 motion key | arnold | alan | major | 4.1 | 7 days |
#3810 | Memory leak in AiNodeEntryInstall | arnold | angel | major | 4.1 | 6 days |
#3811 | AiNoise reports warning when using distortion | arnold | thiago | major | 4.1 | 6 days |
#3812 | Don't compute importance tables for disabled lights | arnold | mike | major | 4.1 | 5 days |
#3816 | Crash when interrupting render during BVH build with more than 2 motion keys | arnold | mike | major | 4.1 | 3 days |
#3817 | hardcode options node's name to "options" | arnold | marcos | major | 4.1 | 40 hours |
#3799 | Memory leak on NURBS node | arnold | angel | minor | 4.1 | 12 days |