Daz Studio Pro 4.14 - NVIDIA Iray

rbtwhizrbtwhiz Posts: 2,171
edited December 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 introduction of 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.

 

 



Public Build (Beta) Threads:

 

  • 4.14.1.38 (December 23, 2020)
    • 4.14.1.28 (December 15, 2020)
    • 4.14.1.22 (December 4, 2020)
    • 4.14.0.10 (November 24, 2020)
    • 4.14.0.8 (November 10, 2020)
  • 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)

 


General Release Thread:

 

  • 4.14.0.10 (December 2, 2020)
    • 4.14.0.8 (November 10, 2020)

 


Previous Thread:

 

Post edited by rbtwhiz on

Comments

  • rbtwhizrbtwhiz Posts: 2,171

    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

    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

    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.
  • rbtwhizrbtwhiz Posts: 2,171

    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.
  • rbtwhizrbtwhiz Posts: 2,171

    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).
  • rbtwhizrbtwhiz Posts: 2,171

    Daz Studio 4.14.0.8

  • rbtwhizrbtwhiz Posts: 2,171

    Iray 2020.1.2, build 334300.5582

    Added and Changed Features

    • General
      • Updated general libraries:
        • OpenEXR 2.5.3
    • Material Definition Language (MDL)
      • 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 is float2 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.

    Fixed Bugs

    • General
      • Fix crash when editing a fiber attribute vector.
      • Fix websocket bug where a fragmented message sent by a client would always be delivered flagged as a binary message.
      • Fix a post-processing failure when activating/deactivating devices during rendering (bug 3108175).
      • Fix post-processing crashes in a few corner cases (like no pipeline or if the pipeline runs entirely on the CPU).
      • Fix potential memory leak in scheduler.
      • Proper fix for scene update failing with many scene elements (bug 2505588).
      • Improve performance of scene traversal for scenes that feature lots of instances.
    • Iray Photoreal & Iray Interactive
      • Performance optimizations for some material paths.
      • Add device IDs and tags to many more messages.
      • Fix potential energy gain of multiscatter-enabled glossy BSDFs.
      • Add support for tinting the environment light, driven by the scene option environment_function_tint.
      • Fix a crash when converting materials that use colors constructed from state::normal() as input for normal maps (i.e. converted back to float3) (bug 3154445), but please use the new base::blend_normals() instead, as it will be much more efficient!
      • Fix an issue where userdata lookups would fall back to the default color in JIT-compiled materials when the ground plane material changes.
    • Iray Photoreal
      • If shadow_terminator_offset_mode is set, improve energy conservation in some corner cases, e.g. poorly tessellated geometry, notably in (but not limited to) combination with transmitting materials (example: specular BSDF with an IOR of 1.0).
      • Fix an error in fiber curve-weights calculations, leading to incorrect per vertex data interpolation.
      • Fix behavior of auxiliary buffers when scene features volumes, especially if the camera is inside of the media (bug 3043439, 3157501).
      • General improvements to volumes and materials featuring sub-surface-scattering, both in performance/convergence and quality.
      • Fix a minor issue with the light importance sampling when using userdata.
    • Iray Interactive
      • Lower CPU usage when rendering with CUDA on lower end systems.
      • Fix crash if picking is done before rendering (bug 3034133).
      • Fix issue with time-based termination (possible iteration overshootings, bug 3150045).
    • Material Definition Language (MDL)
      • Fix wrong optimization for ternary operators selecting different vector elements in HLSL always returning the true expression.
      • Fix wrong PTX version used for sm_86.
      • In single-init mode, don’t let a requested geometry.normal expression calculate the normal again.
      • Fix analysis of derivative variants of functions not being recognized as depending on state::normal().
      • Reduce 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.
      • Accept MDL projector and decal functions whose return type is explicitly marked as uniform or varying (bug 3148507).
    • MI importer/exporter
      • Fixed missing error message if an MDL projector or decal function has the wrong return type.
  • rbtwhizrbtwhiz Posts: 2,171

    Daz Studio 4.14.1.22

  • rbtwhizrbtwhiz Posts: 2,171

    Iray 2020.1.3, build 334300.6349

    Added and Changed Features

    • General
      • Updated general libraries:
        • FreeImage 3.18.0 339654 (massively speeds up handling of progressive JPEGs if only the metadata is needed).
      • Changed timer behavior on Windows: The May 2020 Update (20H1) of Windows 10 (build 19041) introduced a very noteworthy change to how timer resolution/accuracy is handled via the Windows API, especially in the context of many apps/processes running at the same time (for a detailed explanation see for example https://randomascii.wordpress.com/2020/10/04/windows-timerresolution-the-great-rule-change/). Since Iray depends on a high timer resolution/accuracy, it now automatically calls timeBeginPeriod(1) on startup and timeEndPeriod(1) on shutdown.
    • Iray Photoreal
      • ​Extend message tagging functionality by the ability to attach messages to all CUDA devices which adds details to the device handling. In particular, it is now possible to detect CPU fallback, or the inability to fall back to CPU.
    • Material Definition Language (MDL)
      • The performance of the parallel module loading has been improved.

    Fixed Bugs

    • General
      • Fix crash on shutdown after failed authentication.
      • Fix various race conditions potentially leading to crashes.
    • Iray Photoreal & Iray Interactive
      • Add message details to CUDA errors issued from POST.
    • Iray Photoreal
      • Fix memory allocation error messages (Device ID and memory size swapped, Bug 200677658) and details of CUDA error messages.
      • Motion vectors now respect the progressive aux canvas scene option and are correctly averaged when enabled. Please note that it must be used in conjunction with motion vectors instantaneous shutter in order to produce meaningful results (bug 3116613).
      • Fix 3D textures being wrong with motion blur.
      • Fix motion transform computation when instancing is on or auto for motion vectors (bug 3087345).
    • Iray Interactive
      • Rework the fast convergence start mechanism that allows the iteration speed to be reduced in favor of more efficient convergence. A new scene option irt_fast_convergence_ramp_up has been added that allows to specify a number of frames over which the speed/convergence trade-off happens gradually. This new mechanism also fixes some issues (like render time overshooting) that the previous one had (bug 3150045).
    • Material Definition Language (MDL)
      • All error messages of recursively imported modules are now reported in the list of error messages during compilation.
      • The use of an imported user defined structure type with a nested structure type in an exported function signature has been fixed.
      • The check for incorrect varying function call attachments to uniform parameters has been fixed in the MDL SDK API.
      • The function Mdl_compiled_material::depends_on_uniform_scenedata has been fixed.
      • The custom-curve and measured-curve layering has been improved for non-thin-walled transmissive materials to reduce energy loss for some cases of modelling glass with these components.
      • The import of the ::std module in modules of lower MDL version has been fixed.
  • rbtwhizrbtwhiz Posts: 2,171

    Daz Studio 4.14.1.38

This discussion has been closed.