Daz Studio Pro 4.12 - NVIDIA Iray

rbtwhizrbtwhiz Posts: 2,171
edited October 2020 in Daz Studio Discussion

When a new build of Daz Studio includes a new version of the NVIDIA Iray renderer, the new build of the renderer comes with its own set of bug fixes, new features, adjustments to existing features, etc. Since the release of Daz Studio that followed the initial introduced NVIDIA Iray in Daz Studio (4.8 - initial introduction, 4.9 - following release), a list of its changes have typically been made available in the posts that immediately follow the announcement. In many cases, while the information contained within the posts was/is useful to those that want/need it, it seemed to go unread by many. This same information would also then be reposted when a Public Build was eventually promoted to General Release.

To address some of these issues and bring more visibility to the changes for those who want/need it, we now split these posts off into their own thread. A separate discussion thread will remain available (linked below), but the thread itself will be closed for comment so as to avoid the information being buried by the discussion and to provide notification through regular features of the forum software.


*Note: The entries below come directly from the NVIDIA Iray release notes. Some entries, such as the mention of Iray Realtime, Linux, etc, currently have no bearing on Daz Studio itself but are included for completeness.

 

 



General Release Threads:

 

 

Public Build (Beta) Threads:

 

  • 4.12.2.60 (October 23, 2020)
    • 4.12.2.54 (October 16, 2020)
    • 4.12.2.51 (October 13, 2020)
    • 4.12.2.6 (May 12, 2020)
    • 4.12.1.117 (April 28, 2020)
    • 4.12.1.115 (April 24, 2020)
    • 4.12.1.109 (April 17, 2020)
    • 4.12.1.76 (February 18, 2020)
    • 4.12.1.55 (January 20, 2020)
    • 4.12.1.40 (November 25, 2019)
    • 4.12.1.16 (October 15, 2019)
    • 4.12.0.85 (September 24, 2019)
    • 4.12.0.83 (September 20, 2019)
    • 4.12.0.73 (September 11, 2019)
    • 4.12.0.67 (August 30, 2019)
    • 4.12.0.60 (August 23, 2019)
    • 4.12.0.47 (August 5, 2019)
    • 4.12.0.42 (July 30, 2019)
    • 4.12.0.33 (July 22, 2019)
Post edited by rbtwhiz on

Comments

  • rbtwhizrbtwhiz Posts: 2,171

    Iray 2018.1.4, build 312200.4685

    Fixed Bugs

    • Material Definition Language (MDL)
      • The handling of conversion operators and constructors when creating MDL AST expressions has been fixed.
      • The conversion of array constructors to MDL AST expressions has been fixed.
      • The use of implicit conversion functions inside enable-if expressions is no longer forbidden.
  • rbtwhizrbtwhiz Posts: 2,171
    edited June 2019

    Iray RTX 2019.1 Beta, build 317500.683

    Added and Changed Features

    • General
      • Support for Turing GPUs with (TU10x chips) and without (TU11x chips)RTXhardware acceleration for Iray Photoreal and Iray Interactive. The implementation for Turing GPUs is based on OptiX and thus a major architectural change.
      • New render canvases that support outputting motion vectors in world space and camera space. See Programmers Manual section 18.2.
      • Added a Deep Learning based postprocessing method to determine the quality of a partially converged image. See Programmers Manual section 3.11. It optionally outputs a heatmap visualizing convergence in the rendered image.
      • The new MDL 1.5 distribution function modifier df::measured factor is now supported in Iray Photoreal and Iray Interactive.
    • Iray Photoreal
      • CPU rendering now employs the Embree library for ray tracing. Thus CPU rendering can be 2x faster than before and startup time for CPU only rendering is dramatically reduced.
    • AxF importer
      • The implementation has been upgraded to AxF 1.6. This adds support for the new "volumetric" material class.
    • Material Definition Language (MDL)
      • A new distilling target transmissive_pbr has been added.
      • MDL 1.5 support has been added:
        • A new cast operator has been added to support assignments between structurally equivalent user defined structure types and value equivalent enumeration types to support workflows with the new MDLE format. Beginning with MDL 1.5, cast is a reserved word.
        • A new field named hair of type hair_bsdf has been added to the material type, which represents the shading model applicable for hair primitives. Beginning with MDL 1.5, hair_bsdf is a reserved word.
        • A new elemental distribution function df::chiang_hair_bsdf has been added as a hair shading model.
        • A new distribution function modifier df::measured_factor has been added to support microfacet coloring based on the angle between the half-vector and the shading normal in addition to the angle between the half-vector and the incoming ray direction.
        • The new Appendix D – MDLE File Format defines a new container format for a self contained MDL material or function including all of its dependencies and resources.
        • The new Appendix E – Internationalization defines the use of XLIFF files for the localization of MDL string annotations.
    • Known Issues and Restrictions
      • This beta release only works with driver version R430 GA1.
      • Multi-GPU support for multiple Turing GPUs is partially broken: Iray Photoreal and Iray Interactive may trigger the fallback to CPU rendering if multiple Turing GPUs are present in a system. It is recommended for the beta to enable only one Turing board.
      • Performance on Turing boards is not yet fully optimized (e.g.,compilation overhead on each startup and some scenechanges in Iray Photoreal and geometry overhead and rendering slowdowns in some scenes for Iray Interactive). Performance on non-Turing boards should not be affected.
      • In Iray Interactive, invisible geometry through cutouts remains visible.
      • Support for SM 3.X/Kepler generation GPUs is marked as deprecated, and it will most likely be removed with the next major release.
      • The Deep Learning based postprocessing convergence estimate only works if the Deep Learning based denoiser is disabled.
      • The Deep Learning based postprocessing to predict when a rendering has reached a desired quality is not yet implemented.
      • MacosX is not supported.
      • The new hair field in the material structure and the new hair_bsdf type from the MDL 1.5 Speci?cation are not yet supported by the MDL compiler.
      • The new MDL 1.5 distribution function modifierer df::measured_factor only supports one dimension of the texture in Iray Interactive.

    Fixed Bugs

    • Deep Learning based Denoiser
      • The default for Alpha denoising if "off" now.
    Post edited by rbtwhiz on
  • rbtwhizrbtwhiz Posts: 2,171
    edited June 2019

    Iray RTX 2019.1, build 317500.1752

    Added and Changed Features

    • Iray Photoreal
      • Reduce startup time (and in general improve geometry update performance) when using a flattened scene (i.e., instancing off or set to auto).
    • ​Iray Interactive
      • Performance increase on all GPU generations, especially for interactive use cases (average 2x speedup).
    • Material Definition Language (MDL)
      • MDL 1.5 Language Specification
        • The draft status of the document has been removed.
        • Annotations have been added to annotation declarations.
        • A new standard annotation origin() has been added, which is used in the MDLE file format to reference the original declarations of refactored elements.
      • The following MDL 1.5 features are now supported by the MDL compiler:
        • hair bsdf() type
        • df::chiang_hair_bsdf()
        • anno::origin annotation
        • support for annotations on annotation declarations
      • The MDLE file format version has been bumped to 1.0.
      • MDLE files now use the new anno::origin annotation rather than a custom one.

    Fixed Bugs

    • Iray Photoreal & Iray Interactive
      • Linux version on RTX boards failed in initialization phase for Beta 1, fixed.
      • Using spectral volume coefficients caused incorrect results if spectral rendering was disabled on Windows, this has been fixed.
    • Iray Photoreal
      • Crash in Light Tracer from Beta 1 fixed, for example rounded corners and caustics were causing crashes before in RTX mode.
      • Fixed broken IOR stack from Beta 1.
      • Fixed crashes when computing irradiance probes and when switching from interactive to batch scheduler mode.
    • Material Definition Language (MDL)
      • Failing MDLE creation when an argument of the MDLE prototype is connected to a function which returns a user-defined type has been fixed.
      • A bug leading to different output (and therefore different hashes) when exporting the same MDLE more than once has been fixed.
      • A failure (error code -8) when creating presets from functions with user-defined return types has been fixed.
      • A failure (error code -8) when creating function presets from MDL modules with versions < 1.3 has been fixed.
      • When exporting presets from MDLE definitions or MDL definitions containing calls to MDLE definitions in their arguments, the MDLE code is now inlined into the new module, rather than resulting in invalid MDL.
      • The missing origin annotation on the main definition of an MDLE file has been added.
      • JIT compilation of cast operators has been fixed.
      • Native code execution on Mac has been fixed.
      • Struct member access for MDLE types containing a dot in their file path has been fixed.
      • The conversion of the new cast operator to the DAG representation of the MDL compiler has been fixed.
      • The broken import of MDLE files on Linux has been fixed.
    • AxF importer
      • A crash when using the importer with an incompatible axf_importer.mdl has been fixed.
    Post edited by rbtwhiz on
  • rbtwhizrbtwhiz Posts: 2,171
    edited October 2019

    Daz Studio 4.12.0.33:

     

    Iray RTX 2019.1.1, build 317500.2554

    Added and Changed Features

    • General
      • Minimum driver requirement is 430.26 on Linux and 430.86 on Windows.
    • Iray Photoreal
      • Improve precision for instanced intersection computations, e.g. fixing most self-intersection issues on instanced geometry: In order to reduce such artifacts, a mechanism has been introduced that is active in all instancing modes (on, auto, user), shifting the scene in space. This mechanism is on by default and can be disabled by setting the "instancing_shift_camera" boolean flag to false.
      • Improve rendering performance, especially for some turntable-like scenes.
      • Improve rendering performance of MDLE files by eliminating unnecessary JIT compilation of MDL functions from the ::base module when those was placed inside the MDLE.

    Fixed Bugs

    • General
      • ​The detection of default functions and materials in the mi exporter has been fixed. Default calls are now omitted.
    • MDL Compiler and Backends
      • Fixed wrong optimization of empty do-while loops in the core compiler.
      • Fixed imports starting with . or .., these caused wrong package names entered before.
      • Fixed printing of float and double constants when MDL code was generated; previously not enough digits were used, causing lost precision when this code was compiled again.
      • Decals placed with mode DECAL_ON_FRONT_AND_BACK_FACE were incorrectly skipped for rays coming from the medium with higher IOR, making them disappear if seen through thick-walled glass. This has been fixed.
    • Iray Photoreal
      • RTX startup time reduced when using the NVIDIA R430 GA3 (or newer) driver. Then only the very first rendering after an Iray- or NVIDIA-driver update will need some additional startup time.
      • Some sporadic crashes and inconsistencies fixed.
    • Deep Learning based render progress - experimental feature
      • Memory leak and performance slowdown with increasing numbers of iterations - fixed.
    Post edited by rbtwhiz on
  • rbtwhizrbtwhiz Posts: 2,171
    edited October 2019

    Iray RTX 2019.1.2, build 317500.2996

    Fixed Bugs

    • MDL Compiler and Backends
      • A performance issue due to iterating over all files in a directory to check for non-UDIM texture files has been fixed. This fixes the loading time regression when working with a huge amount of MDL files.
    • Iray Photoreal & Iray Interactive
      • Reduce GPU memory usage on RTX cards during scene pre-processing (i.e. ray tracing hierarchy construction) if instancing enabled.
      • Reduce GPU memory usage on RTX cards during rendering.
      • Fixed the issue of the OptiX library not being found on systems with integrated graphics or non-NVIDIA GPUs.
      • Fix issue where some pixels alpha channel was rounded to 254 instead of 255 when using 8 bits per channel outputs.
    • Iray Photoreal
      • Some sporadic crashes and inconsistencies fixed (includes bug LW#21668).
      • Fixed wrong UVW coordinates generated when using some projector modes in combination with enabled instancing.
      • Fixed wrong light source updates when using instancing modes user or auto.
      • Fixed wrong UVW coordinates generated when falling back to MDL JIT mode with enabled instancing.
    • Iray Interactive
      • Fix black bars in high resolution images when a lot of samples/paths need to evaluate cutout opacity.
      • Fix up to 15 pixel black bar on top of image when rendering with interactive scheduling and CPUonly.
    • Deep Learning based Denoiser
      • If albedo and alpha buffers were used as input, the albedo image was shining through. This is fixed.
    Post edited by rbtwhiz on
  • rbtwhizrbtwhiz Posts: 2,171
    edited October 2019

    Daz Studio 4.12.0.42:

     

    Iray RTX 2019.1.3, build 317500.3714

    Fixed Bugs

    • General
      • Fixed removal of mesh attributes which did not work correctly if the corresponding connectivity was accessed first(bug #19213).
      • Proper quantization of float to integer image formats (also fixes issue where some pixels alpha channel was rounded to 254 instead of 255 when using 8 bits per channel outputs).
      • Fixed update detection of postprocessing pipeline: Achange in the pipeline caused the render context to request an update.
      • Fixed creation of MDLE files from in-memory MDL modules.
    • Iray Photoreal & Iray Interactive
      • Workaround a bug on current NVIDIA drivers that breaks ray tracing on Turing cards without RT cores.
    • Iray Photoreal
      • Fixed wrong UVW coordinates generated when using some projector modes while using instancing modes user or auto.
      • Fixed wrong light source updates when using instancing modes user or auto.
      • Fixed wrong auxiliary/data buffers on Volta and Turing (e.g. when using 3D bitmap textures).
      • Process the emission on double-sided materials of geometry lights as a single two-sided light source (if front- and backface emissions are identical), so these now behave the same correct way as a classical light source.
      • Fixed regression of deformation/vertex motion blur being broken on Turing cards.
    • Iray Interactive
      • Fix sporadic crashes when loading textures in parallel.
    Post edited by rbtwhiz on
  • rbtwhizrbtwhiz Posts: 2,171
    edited October 2019

    Daz Studio 4.12.1.16:

     

    Iray RTX 2019.1.4, build 317500.5529

    Added and Changed Features

    • General
      • Update to CUDA 10.1 (Update 2) toolkit for internal compilation and the included CUDA runtime libraries. Minimum driver version requirements do not change due to this.
    • Iray API
      • Default max limit of allowed http connections was increased from 100 to 256.

    Fixed Bugs

    • Iray Photoreal & Iray Interactive
      • More consistently handle very large and infinity values in output buffers when converting to integer formats.
      • Fix implementations of anisotropic Smith masking for GGX and Beckmann.
      • Fix implementation of base::sellmeier_coefficients.
      • Fix implementation of is_black_blend.
      • Fix crashes when requesting rendering of 0 sized images.
      • Handle more MDL functions natively in the rendering core (like math::lerp, math::luminance, float3 and color constructors) to avoid having to JIT compileMDLcode that includes such functions.
      • Optimize away MDL texturing nodes that are zero-weighted.
    • Iray Photoreal
      • Fix light transformation (updates) regression in instancing mode "auto".
      • Fix regression which would sometimes cause crashes early-on in network rendering.
      • Fix incorrect stereo offsets if both stereo rendering and camera motion blur are enabled.
      • Retweak self intersection handling if instancing is enabled.
    • Iray Interactive
      • Fix crash when pre-computing the environment/IBL acceleration data.
      • Respect the progressive_rendering_max_time more precisely.
      • Fix cases where actually more iterations were computed than requested.
      • Limit the number of total samples that can be computed per iteration in batch mode to avoid missing pixels or features.
      • Improve CUDA error reporting.
    Post edited by rbtwhiz on
  • rbtwhizrbtwhiz Posts: 2,171

    Daz Studio 4.12.1.40:

     

    Iray RTX 2019.1.5, build 317500.7473

    Fixed Bugs

    • General
      • Fix potential bugs due to race conditions in the scene traversal.
      • Warn about non-practical pre-computed gamma corrections being done on integer format images.
      • Restore forward compatibility for all non-path tracing related CUDA code (e.g. post processing, video conversion, AI denoiser).
      • Fix incorrect parsing of IES data for IESNA LM-63-2002 files.
    • MDL Compiler and Backends
      • Fix slow JIT compilation of MDL code on Linux and Mac.
    • Iray Photoreal
      • Fix incorrect mapping for iray_spectral_conversion_color_space "acescg".
      • Always trigger material updates if iray_spectral_conversion_color_space changed.
      • Fix some numerical issues.
      • Work around a defect in 440 series drivers when rendering empty scenes on Turing GPUs.
      • Work around a defect in 440 series drivers where initializing multiple Turing GPUs crashes.
    • Iray Interactive
      • Fix that rendering was stopped after CPU load was changed.
      • Fix some potential bugs with the glossy component of the ground plane.
      • Proper fix for the sample queue overflow issue with specular materials and cutouts. This fixes the performance regression seen on large resolutions, but can introduce more noise in scenes with a lot of cutouts.
      • Fix a potential race condition in texture pre-loading.
      • Fix wrong rendering of textures after a GPU crash.
      • Fix some numerical issues, specifically with spherical cameras.
  • rbtwhizrbtwhiz Posts: 2,171

    Daz Studio 4.12.1.76:

     

    Iray RTX 2019.1.6, build 317500.11080

    Added and Changed Features

    • Iray Photoreal
      • Add new iray_rt_low_memory option to decrease the amount of memory needed for the ray tracing acceleration hierarchies. So far this option can only be set to "auto" and "on", and will only affect pre-Turing GPUs.

    Fixed Bugs

    • MDL Compiler and Backends
      • A bug regarding the JIT code cache was fixed. Previously, when a scene was edited and only textures or other resources were added/removed, the JIT code was not regenerated but just reused. Modifying the number or oder of textures might result in different texture indexes, thus reusing the old compilation resulted in potentially wrong textures assigned, or even a GPU error.
    • Iray Photoreal & Iray Interactive
      • Remove warning to switch from WDDM to TCC driver model if running on Optimus setups (e.g. mixed internal and discrete GPU laptops).
  • rbtwhizrbtwhiz Posts: 2,171
    edited October 2020

    Iray RTX 2020.0.0, build 327300.312

    Known Issues and Restrictions

    • Minimum driver requirement (to support CUDA 10.2) is 441.22 on Windows. For Turing GPUs the minimum driver requirement (to support OptiX 7.1) is 441.87 (GA5) on Windows.
    • Using a driver earlier than the to-be-released 440 GA6 (i.e. 441.87 (GA5)) on Turing GPUs will result in too thin fibers.
    • Support for CUDA rendering on macOS is marked as deprecated, and it will most likely be removed with the next major release.
    • The new MDL 1.6 df::tint modifier overload is ignored so far in Iray Interactive.
    • Motion vector canvas outputs are disabled for this beta, will be re-enabled for the final again.

    Added and Changed Features

    • General
      • Support for a new fiber primitive in order to support hair, fur and other geometries based on curves without tessellation. A new example has been added.
      • Toon post processing pipeline: This will add outlines and an (optional) faux lighting effect to a buffer output (recommended inputs are result or albedo along with anti-aliased auxiliary buffers).
      • Render finish prediction. An AI network was trained to predict when rendering will be finished. This is an experimental feature. Information at which iteration rendering will be finished with a given level of quality will be provided via progress callback. For Iray Photoreal also the time needed to finish an image is returned. For quality measure SSIM (Structural Similarity Index) is used. Default is 0.98.
      • Matte fog support to create fog-like atmospheric effects, such as aerial perspective, without the computational overhead of modeling an actual scattering volume.
    • MI Exporter
      • Support for writing mental-ray-style hair objects has been added. In addition the new keyword bspline has been added. Note that fibers will always be exported as such.
    • Iray Photoreal & Iray Interactive
      • Use the newer Embree library 3.6.1 for CPU based ray tracing.
      • Support for MDL 1.6.
    • Iray Photoreal
      • Support for the new fiber primitive in order to support rendering hair, fur and other geometries based on curves without tessellation.
    • Iray Interactive
      • Improve CPU rendering performance.
    • Material Definition Language (MDL)
      • MDL 1.6 Language Specification
        • The file path resolution algorithm has been changed to treat weak relative paths the same as strict relative paths if the referring MDL module has an MDL version of 1.6 or higher. Furthermore, the error checks have been simplified to only protect relative paths from referring to files in other search paths.
        • The import of standard library modules has been changed in all examples to use absolute path imports.
        • An additional way of defining functions has been added using an expression instead of a procedural function body.
        • Let-expression can also be applied to functions defined using an expression.
        • The limitation has been removed that package names and module names can only be identifiers.
        • The new using alias declaration has been added to enable the use of Unicode names for module names and package names.
        • The description has been clarified that standard module names shadow only modules of the same fully qualified name while modules in subpackages can have a standard module name as their unqualified name.
        • The new scene standard library module has been added with data_isvalid, data_lookup_ltype, and data_lookup_uniform_ltype functions.
        • The new multiscatter_tint parameter has been added to all glossy BSDF models to enable energy loss compensation at higher roughness values.
        • The new df::sheen_bsdf bidirectional scattering distribution function has been added.
        • The new df::tint_modifier overload has been added for the hair bidirectional scattering distribution function.
        • The new df::tint_modifier overload has been added for the separate tinting of the reflective and transmissive light paths of a base BSDF.
      • Support for MDL 1.6 has been added to the MDL compiler.
      • Limited support for MDL 1.6 features has been added to the backends, in particular, the scene module is supported, but currently no code is generated for interrogating the renderer, hence always the default value is returned.
      • The entity resolver has been sped up for built-in modules in some cases where it is clear that the module can only be read from the MDL root.
      • The memory size of the DAG representation has been slightly reduced by internalizing all DAG signatures.
      • The DAG representation now uses unsafe math operations, especially x * 0 = 0 for floating point values.
      • Inlining of functions containing constant declarations into the DAG has been implemented.
      • The distiller has been extended to support the new MDL 1.6 BSDF types.
    • Deep Learning based Denoiser
      • Improved quality with new training methodology, better preservation of brightness and details for low sample images.

    Fixed Bugs

    • MDL Compiler and Backends
      • The implementation of math::isnan() and math::isfinite() has been fixed for vector types.
      • A crash in the MDL core compiler that could occur if exported types contain errors in their default initializers has been fixed.
      • Wrong function names generated from debug::assert() calls when placed after a while loop have been fixed.
      • The name of the anno::deprecated() parameter has been fixed, it is description, not message.
      • The export of MDL modules containing relative imports has been fixed, access to the imported entities is now generated correctly.
    • Iray Photoreal & Iray Interactive
      • Change behavior of the CPU fallback to be more in line with what one would expect.
      • Conversion of zero-valued volume coefficient spectra for non-spectral rendering has been fixed.
    • Iray Photoreal
      • Improved support and additional fixes for outputting motion vectors.
      • Fix rare crashes when pre-processing the scene geometry.
      • VDF mixing is now exact for up to three elemental VDFs and only approximate if more are used.
    • Iray Interactive
      • Fix crash when pre-processing decal materials.
      • Fix rare crashes and race conditions in the parallelized texture loading.
    • Deep Learning based Denoiser
      • Fix denoising of alpha channel in denoise alpha mode on Pascal and Maxwell generation GPUs.
      • Fix blend operation in denoise alpha mode.
    Post edited by rbtwhiz on
  • rbtwhizrbtwhiz Posts: 2,171
    edited October 2020

    Iray RTX 2020.0.0, build 327300.2022

    Only differences to the 2020.0.0 beta (above - 327300.312) will be listed here.

    Known Issues and Restrictions

    • Minimum driver requirement (to support CUDA 10.2) is 441.22 on Windows. For Turing GPUs the minimum driver requirement (to support OptiX 7.1) is 442.19 on Windows.
    • Support for SM 3.X/Kepler generation GPUs is still only marked as deprecated, but it will most likely be removed with the next release.
    • Support for SM 5.0/’Small’ Maxwell generation GPUs is marked as deprecated, and it will most likely be removed with the next major release.

    Added and Changed Features

    • General
      • Toon postprocessing pipeline: Improve the detection, robustness, and the smoothness of lines.
      • Toon postprocessing pipeline: Add ability to render without input (i.e. lines (and optionally) faux shading only).
      • The FreeImage plugin is now based on FreeImage 3.18.0.
    • Iray Photoreal
      • Add new iray_rt_low_memory option to decrease the amount of memory needed for the ray tracing acceleration hierarchies. So far this option can only be set to "auto" and "on", and will only affect pre-Turing GPUs.
      • Improve fiber API example and add code to demonstrate ’phantom points’ (which allow B-splines to start/end at a fixed point).
    • Material Definition Language (MDL)
      • Changes to the internal representation of builtin MDL operators. MDL supports a variety of operators, potentially featuring an endless number of instances:
         - array index operator[]
         - array length symbol
         - ternary operator ?:

        Previously, Iray created ’local’ definitions for every used instance of these operators in a MDL module:
         - array index operator on type T in module M: M::T@(T,int)
         - array length symbol on type T in module M: M::T.len(T)
         - ternary operator on type T in module M: M::operator?(bool,T,T)

        This representation had several drawbacks:
        - there might be one definition for the same operator in every module
        - if the operator was not used inside the source of a module, it was not created

        Especially the second point lead to several problems in the editing application. Hence, starting with the 2020.0.0 release, the internal representation was changed and operators are now represented by 'global' template-like definitions:
         - array index operator: operator[](<0>[],int)
         - array length operator: operator len(<0>[])
         - ternary operator: operator?(bool,<0>,<0>)

        In addition, the name of the cast operator was changed from operator_cast() to operator_cast(<0>). Drawback: When inspecting the types of the operators definition, 'int' is returned for the template types, but this might be changed in the future by expanding the type system. Note: The mi_importer plugin will automatically convert old local operator names to the new global ones.

    Fixed Bugs

    • General
      • Support for processor groups on Windows, this improves utilization of all CPU cores if the system features more than 64 cores (including virtual/hyperthreaded ones).
      • Fixed support for rational trim curves for free form surfaces.
    • MDL Compiler and Backends
      • A bug regarding the JIT code cache was fixed. Previously, when a scene was edited and only textures or other resources were added/removed, the JIT code was not regenerated but just reused. Modifying the number or oder of textures might result in different texture indexes, thus reusing the old compilation resulted in potentially wrong textures assigned, or even a GPU error.
    • Iray Photoreal & Iray Interactive
      • Fixes sporadic crashes, due to broken dependency handling for JIT-compiled MDL expressions that use state::normal().
      • Remove warning to switch from WDDM to TCC driver model if running on Optimus setups (e.g. mixed internal and discrete GPU laptops).
      • Improve management of per-material texture slots to reduce dropped textures if internal texture slots are filled up.
    • Iray Photoreal
      • Fixed wrong motion blur with non-infinite environment domes.
      • Support textures on point light sources.
      • Reduce temporary memory usage for pre-processing fibers.
      • Disallow cutouts on fibers.
      • Fix slightly wrong normals and v-coordinate on fibers with varying radius.
      • Support negative radius values for fibers (clamped during runtime evaluation to allow for more curve effects).
      • Improve robustness and precision of fiber intersector and improve self intersection ('surface acne') avoidance, especially on Turing cards.
      • Fix missing intersections with fibers on pre-Turing cards.
      • Fix picking of fibers on Turing cards.
      • Fix minor shading issues with the new hair BSDF.
      • Fix error in light source tangent handling with caustic sampler enabled.
      • Fix too dark specular on ground plane.
      • Fix wrong UVWs on ground plane.
      • Fix negative values in depth and distance buffers for (hemi-)spherical and cylindrical camera setups.
    • Iray Interactive
      • Fix a data race in render context data access/creation.
      • Improved the offsetting of rays for ambient occlusion, which could show artifacts caused by selfintersection on RTX cards.
      • Fix some matte fog issues.
      • Fixed wrong black color rendering for section planes.
      • Improve handling of failing GPUs.
      • Support the new MDL 1.6 df::tint modifier overload (one level of tint only).
      • Fix wrong behavior of thin-walled glossy and diffuse transmission with enabled backplates.
      • Improve quality of optional FXAA postprocess.
      • Fix render window offset for non-progressive buffers.
      • Fix handling of tangent space index for glossy BSDFs, which broke in particular MDL JIT-compiled tangent expressions.
    • Material Definition Language (MDL)
      • Fix names of member selection operators/field access functions for builtin vector types. For example: float3(float,float,float).x(float3) is wrong, whereas float3.x(float3) is correct. This affects bool, int, float, double vector types.
    • MI exporter
      • Fix export of fibers.
    • Deep Learning based Denoiser
      • Fix regression in denoising quality.
    Post edited by rbtwhiz on
  • rbtwhizrbtwhiz Posts: 2,171

    Daz Studio 4.12.1.109:

     

    Iray RTX 2020.0.1, build 327300.3640

    Fixed Bugs

    • General
      • Fixed a bug in creating the toon postprocessing pipeline.
      • Improve first startup time after installing a new GPU driver (i.e. with empty/reset CUDA caches).
      • Using adaptive approximation (i.e. distance ratio) of an untrimmed (freeform) surface, the whole surface instead of the limited parameter space was approximated.
    • Iray Photoreal & Iray Interactive
      • Fix colored offset/scale handling for scalar textures (previously all mono-mode textures were converted to scalar data, not properly handling colored offset/scale).
    • Iray Photoreal
      • Fixed some issues with material sampling, leading to improved convergence behavior (i.e. less noise on the average and improved precision in extreme cases).
      • Fixed an issue with IBL/environment/dome sampling for non-power-of-two sized textures, which leads to subtle quality improvements.
      • Fix potentially missing camera lens updates.
      • Fix crashes when using (at least) shadow_terminator_offset_mode along with fiber geometry.
      • Fix a problem in serialization of fiber geometry, matte area lights and animated materials (leading to artifacts like stripes in network rendering).
      • Fix matte fog absorption color handling with enabled spectral rendering.
    • Iray Interactive
      • Slightly improve performance on RTX GPUs in some rare scenarios.
    • Material Definition Language (MDL)
      • Fixed handling of resources inside function bodies. Previously, these resources were not found under some conditions, causing black textures for instance.
      • Fixed a subtle bug in one of the code caches, which caused ignored argument changes under some complex conditions. Typically, boolean parameters were vulnerable, but could happen to parameters of any type (nvbugs 2875123).
      • Fixed MDL archive tool failures with Unicode package names. The MDL version of such archives is now automatically set to MDL 1.6 as lowest necessary version (bug 19512).
      • A bug in the resource handling was fixed that previously caused resources to be resolved and loaded more that once, possibly leading to failures if search paths had been changed in between.
      • Fixed the MDL core compiler’s analysis pass. Some analysis info was computed but not annotated, causing JIT failures on functions that consists of a single expression body only.
      • Fixed too strict error checks for creation of function calls of the array index operator, the ternary operator, and the cast operator.
      • Fixed creation of variants without specifying any annotations where the annotations of the prototype were erroneously copied to the variants.
      • Fixed loading of string-based modules with absolute file paths for resources.
  • rbtwhizrbtwhiz Posts: 2,171

    Daz Studio 4.12.2.9:

     

    Iray RTX 2020.0.2, build 327300.6313
    NOTE: 2020.0 is the last major release to support Kepler based cards - 2020.1 will drop support for Kepler based cards.

    Added and Changed Features

    • General
      • Added ability to exclude objects from receiving toon edges/outlines.
    • Iray Interactive
      • Added new scene option to control filtering of the implicit ground plane shadows irt ground shadow filter. Enabled by default to match previous behavior. Could be disabled to get better AI Denoiser filtering for the ground plane.
    • Material Definition Language (MDL)
      • Reduced the minimum roughness threshold for microfacet BSDFs from 1e-3 to 1e-7 to make them usable for mirrors and clear glass, which is inefficient but could be required by ubershaders.
      • Added "ro_data_segment" field to Shading_state_environment ("ro_data_segment_offset" for HLSL).
      • Use "direction" for the field name of Shading_state_environment (HLSL only).
      • Made state::position() derivable.

    Fixed Bugs

    • General
      • Update the leaf (motion-)bounding box during on-demand mesh updates.
    • Iray Photoreal
      • Fixed a rare networking crash.
      • Fixed handling of scene changes involving multiple materials per object.
      • Issue an error in cases where unavailable CUDA functionality is triggered (e.g. missing kernels).
      • Better manage available GPU memory, incl. internal wavefront memory caches.
      • Use slightly less memory for rendering on Turing GPUs.
      • Fixed launch memory estimate on Turing GPUs (which in one incarnation lead to the rendering of black images).
      • Improved error reporting for out of memory situations.
    • Iray Interactive
      • Properly handle object mask/flag updates.
    • Material Definition Language (MDL)
      • Fixed some rare cases were resources inside MDL functions got lost.
      • Fixed crash in MDL code generators due to MDL core compiler missing some error messages when a (wrong) member selection has the same name like an enum constant.
      • Fixed rare NaN in microfacet sampling.
      • Fixed error value of ITarget_code::get_body_*() functions.
      • Fixed return value of ITarget_code::create_argument_block() when required resource callback is missing.
      • Fixed read-only data segment data not being set for native lambdas.
      • Fixed resource enumeration when compiling multiple expressions in a link unit with add_material(): ensure that resources in material bodies are enumerated first.
    • Deep Learning based render progress (experimental)
      • ​Fixed missing update from restarts.
  • rbtwhizrbtwhiz Posts: 2,171

    Daz Studio 4.12.2.31:

     

    Iray RTX 2020.0.3, build 327300.XXXX

    Added and Changed Features

    • General
      • Updated general libraries:
        • FFmpeg 4.3.1
        • Boost 1.69
        • OpenEXR 2.5.2
        • SQLite 3.32.3
        • zlib 1.2.11
        • JsonCpp 1.9.3
        • OpenSSL 1.1.1g
        • NVAPI R445
    • Iray Photoreal & Iray Interactive
      • Use the newer Embree library 3.10.0 for CPU based ray tracing.

    Fixed Bugs

    • General
      • Fixed problem with toon edges on silhouettes (i.e. shared edges with the environment)(bug 3078269).
      • Restore alpha channel after FXAA pass (bug 3076968).
    • Iray Photoreal & Iray Interactive
      • color_offset and color_scale for base::file_texture() now also affect the mono output for mode mono_alpha (computed as the average of color offset + value * color_scale). This restores the behavior of previous Iray versions (bug 2967468).
    • Iray Photoreal
      • Fixed handling of negative camera offsets (bug 2978415).
      • Fixed matte visible in aux canvas changes appearance of result canvas (bug 3041603).
    • Iray Interactive
      • Fixed the computation of the pixel offset when outputting non-progressive buffers (e.g. stereo) (bug 2998668).
      • Fixed problems with parallel texture loading (bug 2909701,bug 3038553 and bug 3062834).
      • Fixed memory leak in host caches (bug 3072255, bug 2978402 and bug 3049585).
      • Fixed problems with the glossy BRDF importance sampling (bug 3038834).
      • Fixed that cap color is displayed on inside surfaces of object and all internal edges become visible (bug 3049799).
    • Material Definition Language (MDL)
      • Fixed serialization of ints with most significant bit set.
      • Fixed possible crash when inlining a function containing a for (i = ...) loop statement (bug 19529).
      • Fixed potential crash in the auto importer when imports of the current module are erroneous (Jira OM-15589).
      • Fixed handling of suppressed warnings if notes are attached to them, previously these were attached to other messages.
      • Fixed wrong code generation for int to float conversions with derivatives.
  • rbtwhizrbtwhiz Posts: 2,171
    edited October 2020

    Iray RTX 2020.1.0 beta, build 334300.1111

    Known Issues and Restrictions

    • Minimum driver requirement (to properly support both CUDA 11 and OptiX 7.1) is  451.48 on Windows.
    • The support for the ::mdl::scene module that has been introduced with this release is so far restricted to Iray Photoreal and vertex data arrays are only working for triangle meshes. Support for other mesh types and Iray Interactive will follow.

    Added and Changed Features

    • General
      • Support for Ampere GPUs (SM 8.0 / GA100) in Iray Photoreal and Iray Interactive.
      • Support for SM 3.X/Kepler generation GPUs has been removed due to CUDA 11 (note that SM 5.0/’Small’ Maxwell generation GPUs are still marked as deprecated, matching CUDA 11).
      • Replace internal OptiX 6.X based copy of the NVIDIA AI denoiser with the official OptiX7.1 based one (via the driver). As a result, cuDNN is no longer needed by libneuray, yielding a 90 percent reduction in the size of the optimized library and avoiding JIT compilation of unneeded code on new SM versions. Also the quality and performance of denoising is improved (on the average).
      • Added ability to use post SSIM as a termination criterion for Iray Photoreal and Interactive. Added a scene option progressive_rendering_quality_ssim to control this feature.
      • Added ability to disable all post processing for individual render target canvases via PARAM_PROCESSING_DISABLED. This allows to create ones own, custom postprocessing pipeline for certain canvases of the rendering pass.
      • The render canvas for motion vectors in screen space has been removed, now there is only one general canvas for motion vectors. See Programmers Manual section 18.2.
      • The tracking of DB memory usage has been disabled by default. The tracking incurs some overhead and is only relevant if memory limits are configured or for the admin HTTP server. If needed, it can be enabled on IDatabase_configuration.
      • Updated general libraries:
        • OpenEXR 2.5.2
        • SQLite 3.32.3
        • zlib 1.2.11
        • JsonCpp 1.9.3
        • OpenSSL 1.1.1g
        • CUDA 11.0.2
        • OptiX 7.1
        • NVAPI R445
      • With this version custom attributes on scene elements of type mi::Float32, mi::Float32_2, mi::Float32_3, mi::Float32_4, mi::Color, mi::Sint32, mi::Sint32_2, mi::Sint32_3 and mi::Sint32_4 now trigger a render refresh when being created or changed unless filtered via the new functions mi::neuraylib::IRendering configuration::add_custom_attribute_filter().
    • AxF Importer
      • Upgraded to AxF 1.7 SDK
        • Added rudimentary support for EPSVBRDF (by utilizing automatic conversion). – Added support for SVBRDFs with refracting clearcoats (by utilizing the automatic conversion to non-refracting clearcoats).
    • MI importer/exporter
      • Added support for MDL entities that have parenthesis and/or commas in their names. These are now escaped with a backslash to distinguish them from the syntactical elements.
      • Support for reading and writing user data arrays on trilist objects has been added.
      • A new mi-extension allows specifying user data names on objects in the form name "<arrayname>" offset <index>, where name denotes the name of the user data array and offset specifies its index.
      • The new attribute types vector2, vector4, ivector2, ivector3 and ivector4 have been introduced which map to mi::Float32 2,mi::Float32_4,mi::Sint32_2, mi::Sint32_3 and mi::Sint32_4 on the API side.
    • Iray Photoreal & Iray Interactive
      • Use the newer Embree library 3.10.0 for CPU based ray tracing.
      • Built-in normal/bump mapping support has been improved
        • Bump mapping functions (base::file_texture(), base::tile_bump_texture(), etc.) now support input other than state::normal() and state::rounded_corner_normal()
        • base::blend_normals() has been added to blend two normal maps for sticker-like use cases (base and detail normal).
        • state::rounded_corner_normal() may now be be used anywhere in the graph driving material.geometry.normal.
        • It may be used multiple times, but only with matching parameters.
        • It is still unsupported for bump inputs of layering (e.g. df::weighted_layer) and unsupported for JIT-compiled expressions.
      • Outside of finite environment domes, rays missing the dome now return black (instead of showing the infinite environment).
      • Allow total internal reflection for glossy BSDFs with mode df::scatter_transmit.
    • Iray Photoreal
      • Extend the iray_rt_low_memory option (that decreases the amount of memory needed for the ray tracing acceleration hierarchies). So far this option only affected pre-Turing GPUs, but will now also save memory on the CPU.
      • The controls related to motion vectors have been extended, see Programmers Manual section 4.10.
      • Support for MDL scene data lookup functions has been added: up to eight userdata attributes specified on a per-vertex or per group/instance/object basis will be taken into account for scene data lookups in MDL materials.
    • Iray Interactive
      • Added support for the SSIM convergence criterion.
    • Material Definition Language (MDL)
      • The new API components IMdl_impexp api, IMdl_backend api, IMdl_backend and ITarget_code have been added to give access to the MDL compiler and related components.
      • Enabled support for MDL modules whose names contains parentheses, brackets, or commas.
      • The interface IMdl_entity_resolver has been redesigned. Support for resolving resources has been added.
      • The new interface IMdl_module_transformer allows to apply certain transformations on MDL modules.
      • Various API methods have been added in order to reduce the error-prone parsing of MDL-related names: To retrieve DB names from MDL names use get_db_module_name() and get_db_definition_name() on IMdl_factory. To retrieve parts of the MDL name from the corresponding DB element use get_mdl_package_component_count(), get_mdl_package_component_name(), and get_mdl_simple_name() on IModule; get_mdl_module_name(), get_mdl_simple_name() on IMaterial_definition; and get_mdl_module_name(), get_mdl_simple_name(), and get_mdl_parameter_type_name() on IFunction_definition and IAnnotation_definition.
      • Added a new overload of IModule::get function overloads() that accepts a simple name and an array of parameter type names instead of two strings. This avoids the ambiguity when parsing parentheses and commas. The old overload is deprecated and still available if MI_NEURAYLIB_DEPRECATED_11_1 is defined.
      • Improved recursive MDL module reloading: changed the traversal order from pre-order to postorder traversal, avoid flagging a module as changed if it did not change at all.
      • Improved Definition_wrapper: the creation of functions calls for template-like MDL functions requires now an actual argument list since the dummy defaults for such functions easily lead to function calls with the wrong types in the signature.
      • Added more options to control the generation of compiled materials in class compilation mode: Folding of enum and bool parameters, folding of individual parameters, folding of cutout opacity, and folding of transparent layers.
      • Added methods to retrieve the MDL version of modules, and the MDL version when a particular function or material definition was added to (and, if applicable, removed from) the MDL specification.
      • Added methods to retrieve the MDL system and user paths.
      • Changed the default MDL and resource search path: It is now empty, instead of containing the current working directory.
      • Allow total internal reflection for glossy BSDFs with mode df::scatter_transmit (libbsdf).
      • When derivatives are enabled, state::position() is now derivable. Thus, the "position" field of Shading_state_material_with_derivs is now a derivative type.
      • Added "meters_per_scene_unit" field to Shading_state_material. It is used, when folding of state::meters_per_scene_unit() and state::scene_units_per_meter() has been disabled via the new IMdl_execution_context "fold_meters_per_scene_unit" option.
      • The legacy behavior of df::simple_glossy_bsdf can now be controlled via the interface IMdl_configuration.

    Fixed Bugs

    • General
      • Improved SSIM convergence criterion. The previous implementation terminated once the first canvas with SSIM signaled convergence. Changed this to signal convergence only once all such canvases have converged.
      • Extended integration of the SSIM pass in the post processing pipeline to allow both SSIM and AI denoiser to be available at the same time, thus enabling and disabling is possible without restarts.
      • Improved update efficiency of post processing pipeline by avoiding unnecessary update passes if options haven’t changed.
    • MDL Compiler and Backends
      • Fixed serialization of ints with most significant bit set.
      • Fixed file resolution during re-export of MDLE modules.
      • Fixed missing clearing of context messages when creating a link unit.
      • Fixed detection of absolute file names on Windows for MDLEs on a network share (bug 19517).
      • Fixed support for the read-only segment and resources inside function bodies when compiling for the native target.
      • Fixed rare crash/memory corruption than could occur on MDLE creation.
      • The serialized code of a MDL module is now deterministic (bug 19523).
      • Fixed possible crash when inlining a function containing a for (i = ...) loop statement (bug 19529).
      • Fixed potential crash in the auto importer when imports of the current module are erroneous (Jira OM-15589).
      • Fixed handling of suppressed warnings if notes are attached to them, previously these were attached to other messages.
      • Fixed possible crash in generating MDLE when array types are involved (bug 19526).
      • Fixed printing of initializers containing sequence expressions, it is T v = (a,b);, not T v = a, b;.
      • Improved AST optimizer: – Write optimized if conditions back. – Write optimized sub-expressions of binary expressions back. – Handle constant && x, constant || x, x && constant, x || constant.
      • Fixed documentation of Bsdf_evaluate_data structs: eval function results are output-only, not input/output.
      • Fixed folding of calls t ostate::meters_per_scene_unit() and state::scene_units_per_meter() in non-inlined functions.
      • Fixed wrong code generation for int to float conversions with derivatives.
    • Iray Photoreal & Iray Interactive
      • color_offset and color_scale for base::file_texture() now also affect the mono output for mode mono_alpha (computed as the average of color_offset + value * color_scale). This restores the behavior of previous Iray versions (bug 2967468).
      • Numerical issues in the computation of base::worley_noise_bump_texture() for edge < 1.0 have been fixed.
      • Properly handle backplate updates from multiple render contexts.
    • Iray Photoreal
      • Improve precision and consistency of fiber geometry. Note that matching behavior for RTX boards is available via R450 NVIDIA drivers.
      • Paths going below the ground plane are canceled, this makes the behavior between tracing and direct light estimation consistent.
      • Fix temporary rendering memory handling after clearing or allocation failure.
      • Fix 31 (or less) slightly wrong pixels in some scenarios on Turing GPUs.
      • Don’t reserve wavefront state memory before allocating frame buffer memory. The original approach favored larger wavefronts over complete frame buffers, which is unlikely to be a good tradeoff.
      • Reduced risk of running out of wavefront state memory, including a fix for repeated failure to allocate wavefront state memory.
      • Improve prediction of kernel launch memory, thus increasing robustness of being able to render with GPUs in low memory situations.
    • Iray Interactive
      • Fix a crash when exporting stereo non-progressive buffers.
      • Properly exclude hosts without GPUs from network rendering.
      • Fix alpha values that should be 0 to actually be 0.
      • Fix possible problems with scene updates in subsequent renders.
      • Fix possible black bars appearing at the top of framebuffers.
      • Decrease overhead of framebuffer copies.
    • MI importer/exporter
      • Fix an issue in the mi-importer where the mesh connectivity was used for uv coordinates of polygon meshes, even though a different connectivity was required.
    Post edited by rbtwhiz on
  • rbtwhizrbtwhiz Posts: 2,171
    edited October 2020

    Iray RTX 2020.1.0, build 334300.2228

    Known Issues and Restrictions

    • Per-vertex userdata vectors are only supported on triangle meshes.
    • MDL scene data lookups nested inside a uniform expression graph that is attached to either a uniform material slot or a uniform input of a function of the::mdl::base module are currently not supported (the default value will be used).
    • MDL scene data lookups on materials that are attached to decals are not supported (the default value will be used).

    Added and Changed Features

    • General
      • Minimum driver requirement (to properly support both CUDA 11 and OptiX 7.1) is 451.48 on Windows.
      • Switch to the CUDA 11.0.2 GA/final toolkit, and OptiX 7.1 GA/final SDK.
      • Updated FFmpeg library to 4.3.1.
      • Updated documentation about supported hardware and documented progress callback areas in the Programmer’s Manual.
      • Automatic use of CUDA for internal canvas format conversions during rendering, resulting in more interactive performance in some cases.
    • Material Definition Language (MDL)
      • Added derivative support for matrices.
      • Added derivative support for scene data functions. Requires new texture runtime functions scene_data_lookup_deriv_float, scene_data_lookup_deriv_float2, scene_data_lookup_deriv_float3, scene_data_lookup_deriv_float4, and scene_data_lookup_deriv_color.
      • Added mi::neuraylib::ICompiled_material::depends_on_uniform_scene_data() analyzing whether any scene::data_lookup_uniform_*() functions are called by a material instance.
      • The return type of IFunction definition::get_body() has been changed from const IExpression_direct_call* to const IExpression*.
      • Implemented per function render state usage in ITarget_code.
      • Avoid reporting deprecated warnings, if current entity is already deprecated.
    • Deep Learning based Denoiser
      • Iray now uses the OptiX denoiser in the driver.

    Fixed Bugs

    • General
      • Added missing cloud bridge for boolean canvas parameter type.
      • Fixed missing export of movable attribute for some DAG types.
      • Fixed problem with toon edges on silhouettes (i.e. shared edges with the environment)(bug3078269).
      • Restore alpha channel after FXAA pass (bug 3076968).
      • Fixed an issue regarding vertex user data names getting lost during mesh welding and attribute alignment.
    • Iray Photoreal & Iray Interactive
      • Fix fallback behavior for currently unsupported GPUs (i.e. SM X.Y GPUs will fallback to SM X.0 then, so the major revision still has to match)
      • Fix a potential numerical problem in Worley noise computation.
      • Optimize performance of Perlin noise on Turing/Ampere.
    • Iray Photoreal
      • Fix 2020.1 beta limitation regarding ::mdl::scene (user data) not working for light sources.
      • Further improved core memory estimates to make it more robust in corner cases (like low memory conditions).
      • Fixed rendering of striped framebuffers when running under low memory conditions.
      • Restored missing warning about unsupported devices, when those devices are not disabled via the NVIDIA control panel or the command line via CUDA_VISIBLE_DEVICES. Also made the device information less verbose, also removing some duplicate outputs.
      • Reduced host memory requirements when rendering motion vectors.
      • Core support for higher precision normal map encoding.
      • Improve precision and robustness of ?ber intersection and rendering.
      • Fixed (temporary) blocky patterns appearing in volumes/SSS materials.
      • Fixed special cases of new dome behavior (outside it looks black).
      • Improve handling of modulated shading normals (i.e. bump and normal maps), leading to less artifacts in special cases.
      • Respect object projector generated UVW coordinates in all cutout paths (bug 3068504).
      • Improve handling of degenerate light geometry (i.e. zero area triangles).
      • Optimize interactive performance if many LPE and/or auxiliary buffers are rendered.
      • Optimize interactive performance if multiple GPUs are used.
      • Optimize performance on SM 8.0/GA100 since the 2020.1 beta.
      • Optimize performance of spectral rendering on Turing/Ampere.
      • Fixed standard material crashes ?rst reported in 2020.1 beta (bug 3084977).
      • Fixed outliers in depth buffers (bug 3082839).
      • Fixed matte_visible_in_aux_canvas changes appearance of result canvas (bug 3041603).
      • Fixed precision issue with normal maps (banding artifacts, bug 3014665).
      • Fixed potential artifacts in the caustic sampler as the scheduler cranks up iterations/update.
    • Iray Interactive
      • Fix 2020.1 beta limitation regarding ::mdl::scene (user data) not being supported.
      • Fixed issues on SM 7.5/Turing and SM 8.0/Ampere GPUs when updating visibility flags.
      • Fixed memory leak in host caches (bug 3072255, bug 2978402 and bug 3049585).
      • Fixed incorrectly scaled environment dome if the rotation axis was not normalized.
      • Fixed problem with light sources that feature same front and backside EDF (bug 3053348).
      • Fixed problems with the glossy BRDF importance sampling (bug 3038834).
      • Fixed race condition in texture pre-loading phase (bug 3038553 and bug 3062834).
      • Optimize interactive performance if many LPE and/or auxiliary buffers are rendered.
      • Fixed crash with AxF materials (bug 3074291).
      • Fixed that cap color is displayed on inside surfaces of object and all internal edges become visible (bug 3049799).
    • Material Definition Language (MDL)
      • Fixed checking of valid MDL identifiers (names starting with "do" were treated as keywords, but not "do" itself).
      • Fixed IFunction_definition::get_mdl_name_without_parameter_types() for builtin functions.
      • Fixed overload resolution for MDL operators.
      • Fixed compilation of materials using the array length operator (bug 19543, bug 3075690).
      • Fixed crash in MDL runtime when using nonexistent image files with MDL.
      • Fixed crash on CentOS 7.1 when importing non-trivial MDL modules.
      • Fixed invalid translation of int to float conversion with derivatives enabled.
      • Fixed broken math::sincos() on vectors.
      • Fixed incorrect behavior during function call creation when implicit casts were enabled.
      • Fixed failing MDLE creation due to several missing or non-exported entities (constants, annotations).
      • Fixed failing MDLE creation if the main module was < MDL 1.6,but imported an MDL 1.6module.
      • Fixed failing MDLE creation if non-absolute imports of ::base were used.
      • Fixed rare crashes occurring when the array constructor is used in annotations.
      • Fixed lost enumeration of BSDF data textures used by the libbsdf multiscatter.
    • MI importer/exporter
      • Improve export of fiber data.
      • Fixed export of functions from the ::<builtins> module.
      • Fixed import of calls to the array length operator in files exported before Iray 2020.
      • Fixed crash when importing calls to the array length/index operator with constant expression arguments.
      • Fixed crash when the parser reads an array value, but the MDL function or material parameter has no array type.
    • Deep Learning based render progress
      • Fixed an issue with SSIM predictor not responding to scene changes in Iray Interactive.
    Post edited by rbtwhiz on
  • rbtwhizrbtwhiz Posts: 2,171

    Daz Studio 4.12.2.50:

     

    Iray 2020.1.1, build 334300.4226

    Added and Changed Features

    • Material Definition Language (MDL)
      • Thumbnail paths are now resolved when they are requested. Before, the resolving was done during the module loading.
      • A new backend option eval_dag_ternary_strictly has been added, which enables strict evaluation of ternary operators (?:) on the DAG to reduce code size. By default it is enabled.
      • Added single-init mode for a set of functions added to a link unit, allowing all these functions to reuse values calculated in the init function and stored in the texture results field of the state struct. To enable this mode, the first path in the target function description list given to ILink_unit::add_material() must be "init". (Note: the init function will not be marked as ITarget_code::DK_BSDF anymore.)

    Fixed Bugs

    • General
      • Fixed WebSocket bug in the built-in http server where fragmented web socket messages were delivered as if each fragment was a complete message. This is now fixed so that the entire message will be assembled before being delivered.
      • Print an error when a non-uniform scene data lookup is attached to a uniform MDL parameter input rather than silently ignoring it.
    • Iray Photoreal & Iray Interactive
      • Fix rare problems with bump or normal maps leading to invalid results (bug 3129570).
    • Iray Photoreal
      • Fix some numerical issues with section planes.
      • Fix wrong motion vectors for scenes that specify an offset for the camera (bug 3111802).
    • Material Definition Language (MDL)
      • Fixed IFunction_call::get_arguments() for the array constructor, such that it always uses "0", "1", and so on as argument names.
      • Fixed failing MDLE export if the tex::gamma_mode type is only referenced by an annotation (bug 19551).
      • Fixed storing matrices in texture results taking up all the space without much benefit.
    • MI importer/exporter
      • User data vector import and export fixes (bug 3097124).
      • Fix export of MDL material/function arguments of type string.
      • Use correct argument names when adding array constructor arguments on import (bug 3089809).
This discussion has been closed.