Isotropix Forums

New Clarisse iFX 4.0 SP4!

New Clarisse iFX 4.0

New Clarisse iFX 4.0 SP4!

Unread postby release_team » Thu Oct 17, 2019 2:36 pm

Dear Clarisse users,

We are releasing Clarisse iFX 4.0 SP4 today!
As usual, you can download this release from your Download Area.

Clarisse iFX 4.0 is VFX Reference Platform CY2018 compliant.
More information can be found here:

What's new in Clarisse iFX 4.0 SP4:

New Features and Enhancements
3D View
  • In the 3D View, it is now possible to specify from which quality the OptiX denoiser is applied. By default the denoiser is applied on quality 1/2. (#9847)
  • Added a Frame Step option in the Playblast.
    Fixed a bug in Playblast options that caused to always use 3D View Ambient Occlusion status instead of using the Playblast Ambient Occlusion option value.
    Fixed a bug to prevent from starting Playblasts when the specified frame range is invalid (start frame bigger than end frame). (#9248)
  • 3D View HUD now displays fractional frames when requested. (#9184)
Attribute Editor
  • In the Attribute Editor, texture, curve and expression bindings can be removed by Ctrl+clicking the corresponding button. Note that on multidimensional attributes, it provides the ability to clear the expression/animation of a single channel.
    For expressions and curves, Ctrl+Shift+click is a shortcut for Remove Expression/F-Curve from the contextual menu.
    Ctrl+click on a Reference attribute (such as Parent in Scene Items) removes the current value.
    The same workflow applies to the Material Linker: Ctrl+click on the right arrow button removes the material, clip map or displacement assignment. (#10012)
  • Added an option to the SeExpr "to_string" function to control the maximum number of decimals used. (#10078)
  • Changed shading group names in USD Bundles in order to match kinematic hierarchy as in Alembic Bundles. (#10233)
  • When referencing USD scenes in Clarisse, instanceable USD references are now loaded as instances of USD Bundles. This should significantly speed up loading time when referencing a USD stage with many instanceable References. (#9669)
  • USD cube and sphere prims are now supported when referencing USD scenes in Clarisse. (#10035)
  • It is now possible to make USD Reference contexts local and to copy/paste USD items out of Reference contexts. (#10056)
  • USD Point Instancers are now supported in Reference contexts and USD Bundles. (#10069)
  • Added support for point instancers in USD references. (#10034)
  • Displacement is not computed anymore when assigning a null displacement node (i.e. with no texture and all values set to 0). (#10128)
  • A new "Integer" mode is added to the Texture Switch. This new mode takes the red channel of the input color to select the texture. (#9423)
  • It is now possible to disable Cryptomatte manifest metadata, thanks to new output modes: "Off", "AOVs Only" and "AOVs and Manifest".
    The legacy mode "On" is now replaced by "AOVs and Manifest". It will write all AOVs and all metadata, including the manifest.
    A new mode "AOVs Only" allows disabling the manifest metadata, which can be very verbose and heavy on images with many objects. It also reduces write to disk time, file size, and makes the image faster to load, and interact with, in external applications. (#8915)
Color Management
  • Clarisse now consistently uses OCIO Displays and Views where display conversions are expected (UI and display widgets), instead of applying only a color space. The main widgets (3d View, Image View, and Texture View) were already using displays and views, but other parts of the application, like the preferences, needed to be updated to have consistent UI controls.
  • A Display and View combination is now called a "View Transform" in Clarisse, instead of the inaccurate legacy term "Display Color Space".
  • Clarisse built-in "display color spaces" are now proper OCIO Displays and Views, and they map 1 to 1 to the 3 built-in color spaces linear, sRGB and Cineon.
  • Most non-critical error logs have been downgraded to warning level and some others were promoted to error level where needed and relevant. In general, there should be much less warning and error logs.
  • The custom OCIO configuration is now validated by OCIO sanity checks when enabled to ensure it is valid before using it.
  • Application preferences and widget settings:
    • Renamed the preference entry "default_display_color_space" to "default_view_transform" to reflect accurately its new purpose. This entry now shows the list of Displays and Views from the current configuration and matches what was already shown by display widgets in the legacy "Color Space" list button.
    • When switching OCIO configurations, the Preferences' default View Transform is automatically updated to the default View Transform from the active OCIO configuration.
    • Legacy preferences and widget settings will be upgraded silently when possible.
  • User Interface:
    • 3D View, Image View, Texture View: renamed the tool-bar list-button "Color Space" to "View Transform". The list-button content is unchanged: it was already displaying the displays and views.
    • All HUDs: renamed HUD item "LUT" to "View Transform". It now shows the active view transform and its color space.
    • Image View HUD: the item "LUT" was showing only the active color space instead of the active View Transform.
    • Texture View: added the HUD item "View Transform" which was completely missing.
    • Color Picker: it now shows the list of color spaces instead of the list of display and views, as one would expect.
    • File Format/Color Space Mapping editor: renamed some labels for consistency and added documentation tool-tips on the UI controls.
  • File format/color space auto-detection: when switch configuration, the application will now warn about unknown color spaces assigned to existing file format/color space mappings, along with a help message. Previously, there was no feedback at all to inform about invalid mappings. This was confusing for the user as it wasn't clear how to fix the issue after switching OCIO configurations. For example, such errors would result in unexpected color space conversions when reading input textures map files, therefore impacting the render result.

Bug Fixes
3D View
  • Using GPU mode in the 3D View, shading group visibility is now supported for USD and Alembic Bundles. (#10220)
  • Fixed an issue that could lead to color profile randomly switching between different machines. (#7882)
  • Fixed an initialization issue with color management in CNode that was causing unrecoverable errors when the preferences' temporary folder wasn't writable, even if the user was overriding it with the command line args.
    Improved initialization of the built-in OCIO configuration and color management with better error messages.
    Fixed the update order of the $CTEMP built-in application variable that was causing mismatching values between preferences and $CTEMP in some cases.
    Revamped temp_folder management to ensure the session's temporary sub-folder is always unique and writable:
    - Removed the shared temporary sub-folder "isotropix" under the specified temp_folder;
    - Each new application session will have its own random unique temporary folder directly under the specified temp_folder;
    - If the specified temporary folder doesn't exist, the application will refuse to create it and report an error;
    - If the specified temporary folder exists but isn't writable, the application will automatically fall-back to a writable temporary folder and report a warning; (#9839)
  • Undoing a Contextualize action no longer logs an irrelevant warning, and, more important, restores the correct items order. (#7459)
  • Fixed a regression with the frames_list argument in CNode that was not working properly anymore. (#9900)
  • The $PDIR variable is now properly evaluated in instances of Reference contexts. (#9972)
  • Fixed a crash that occurred when viewing expressions' result while editing them. (#10086)
  • Undoing expression commands is now properly restoring expression states. (#10013)
  • Fixed a bug that occurred when adding/removing global variables being used by an active SeExpr expression. (#9917)
  • Fixed a crash that occurred when accessing to a property of an Alembic mesh for which the number of faces was a multiple of the number of vertices. (#10156)
General UI
  • Browser and Hierarchy View no longer crash when extending selection (using Shift+click) by clicking in empty space. (#9965)
  • Fixed a bug that caused objects linked on pending UV slots to not be properly updated upon creation of the actual UV slot. (#10110)
  • Resync Resources now works properly on USD Reference contexts. (#10092)
  • Fixed a crash that occurred when exporting an empty geometry as an Alembic file. (#10172)
  • When importing USD scenes, Z-up is now correctly handled in USD Bundles and Reference contexts. (#10100)
  • Fixed the up axis when layering multiple stages, either in Reference contexts or in USD Bundles. (#10176)
  • Fixed a crash that occurred when deleting the last USD Bundle in the current session when there is still some Alembic Bundles (or vice versa). (#9617)
  • Fixed a crash that occurred when loading an empty geometry in a USD Bundle. This could happen when loading heterogeneously deformed geometries. (#10223)
  • Fixed a visibility bug in scatterers and point instancers when used as the surface of a volume surface object. (#10216)
  • In Alembic cameras, "Refit Mode" is not reverted anymore,when scrubbing the timeline, even when the mode is overridden. (#8437)
  • Animated USD Bundles are now properly loaded when the current time is not 0. (#10029)
  • Fixed a bug in the Alembic exporter that caused isolated objects to be exported only with their object matrix, therefore losing inherited kinematics. It is now possible to export a child object, alone, while preserving the inherited kinematic transforms. (#9958)
  • Clarisse is now properly disabled during Alembic export to forbid project modifications. (#10186)
  • In the Alembic exporter, fixed a regression, introduced in Clarisse iFX 4.0, where animations were not properly exported. (#9938)
  • Fixed a bug in the Alembic exporter that caused invalid shading group names to cause an error and abort the export.
    Invalid shading group names are now automatically renamed in the output Alembic file in order to follow Alembic standards. A warning log shows the new shading group name.
    Valid shading group names must start with [A-Z], [a-z] or '_'. All other characters must be one of [A-Z], [a-z], [0-9] or '_'. (#9992)
  • Fixed a bug in the Alembic exporter output filename that caused the file extension to be missing or written twice depending on the export options. (#9595)
Object Framework
  • Fixed a potential crash that could occur when a Group, or its parent context, is moved around (contextualize, drag & drop...). (#9921)
  • Fixed an accuracy issue when dragging time to first or last frame in the Timeline: when "Sub Frames" are enabled, the value displayed in the 3D View was sometimes not rounded, and querying the current floating frame in python was giving a wrong result. (#10075)
  • Removed an irrelevant warning message that occurred when moving a context containing items into another context. (#9941)
  • Fixed a crash that occurred when toggling to off the Enable attribute of an Environment light when there was sub-surface scattering involved in the scene. (#10177)
  • The illumination of Directional light is not decreasing anymore when increasing the number of material samples. (#10143)
  • Fixed minor corner cases when sampling the sphere light (#9961)
  • Fixed a crash that occurred when setting a light Group on a volume that was different from the one set in the 3D Layer. (#10042)
Color Management
  • Fixed various bugs when changing the active color configuration that caused repeated and annoying error logs.
  • Fixed a bug where the color picking role color space would use a color space from the custom configuration even if the custom configuration was disabled.
  • Fixed a bug that caused the application to think the custom OCIO configuration file was still used when specifying a valid file path and then an invalid file path.
  • Fixed a bug that caused the application to keep the custom OCIO configuration in memory after it was disabled in the preferences.
  • Fixed the default value for various attributes that were using color spaces as possible values: previously, such attributes would use the first available color space as default value. When using the Clarisse configuration, it was the "linear" color space, which was convenient. But when using a custom configuration, it could be anything. Now, such attributes will by default use the color space associated to the OCIO role scene_linear when possible (which for Clarisse is "linear"), or fall back to the first available color space if not found.

SDK Changes
Object Framework
  • OfOverridesContextEngine now provides methods to retrieve overridden objects and overridden attributes for a specified object. These methods are available in python. (#10112)
  • Added Python bindings for Alembic and USD Bundles. ModuleGeometryBundle, GeometryObjectBundle, PolyMesh, CurveMesh are now exposed to Python. (#10169)
  • CoreBasicArray::get_data() has been exposed again to Python. This API is being re-enabled temporarily only for backward compatibility reasons and it will be definitively removed in future versions of Clarisse, as this is not safe to use them with Python.
    Deprecated ShaderHelpers APIs "evaluate_support_material", "evaluate_support_texture" and "evaluate_vertices_texture" that take raw pointer arrays. New equivalent and safer APIs have been added, which use CoreBasicArrays instead. (#9794)
Color Management
  • ColorIO, ColorIOAutoDetection, ColorIOConverter: various API breaking changes.
  • Deprecated 'AppBase::set_default_display_color_space' : use set_default_view_transform instead.
  • Deprecated 'AppBase::get_default_display_color_space' : use get_default_view_transform instead.
User avatar
Posts: 130
Joined: Wed Oct 21, 2015 10:31 am

Return to Clarisse iFX 4.0