MDL SDK 2020.1.2 (334300.5582): 12 Nov 2020
ABI compatible with the MDL SDK 2020.1.2 (334300.5582) binary release
(see https://developer.nvidia.com/mdl-sdk)
Added and Changed Features
-
MDL Compiler and Backends
- A new HLSL backend option
use_renderer_adapt_microfacet_roughness
has been added, which
allows a renderer to adapt the roughness values provided to microfacet BSDFs right before
using them. The prototype of the function the renderer has to provide isfloat2 mdl_adapt_microfacet_roughness(Shading_state_material state, float2 roughness_uv)
. - A new execution context option
ignore_noinline
has been added, which allows to ignore
anno::noinline()
annotations, enabling inlining when creating a compiled material.
Previously this happened later when generating code for distribution functions. But
optimizing at this time could lead to a changed DAG which may not contain the nodes requested
by the user anymore.
- A new HLSL backend option
Fixed Bugs
-
General
- Fixed a crash in the
i18n
tool when accessing module annotations.
- Fixed a crash in the
-
MDL Compiler and Backends
- Fixed wrong optimization for ternary operators selecting different vector elements in HLSL
always returning the true expression. - Fixed wrong PTX version used for sm_86.
- In single-init mode, don't let a requested
geometry.normal
expression calculate the normal
again. - Fixed analysis of derivative variants of functions not being recognized as depending on
state::normal()
. - Reduced number of texture result slots used in generated init functions.
- Do not generate HLSL code containing
min16int
to ensure compatibility to Slang. - Fixed translation of conversion of an 8-bit to a 32-bit integer for HLSL.
- Fixed wrong optimization for ternary operators selecting different vector elements in HLSL