User Tools

Site Tools


4.12.0.86 Change Log

Below is a “sanitized” version of the Daz Studio change log leading to the General Release of version 4.12.0.86. This log is posted as part of a conscious effort to be more transparent in the development process. That being said, not all information relating to a particular build is present on this page - some information is still considered private and is therefore not included.

Public Build Channel

Public Beta (4.12.0.33)

  • Increment version

DAZ Studio : Incremented build number to 4.12.0.1


  • Source maintenance
  • Merged changes to Trunk (4.11.0.x)

DAZ Studio : Incremented build number to 4.12.0.2


  • Source maintenance
  • Merged changes to Trunk (4.11.0.x)
  • Updated public API documentation; DzFileIO, DzDir

DAZ Studio : Incremented build number to 4.12.0.3


  • Source maintenance
  • Merged changes to Trunk (4.11.0.x)
  • Added the ability for an IK node to persist in the scene
  • Add the ability for IK nodes to be seen in scene views
  • Added the ability for “Chain Root” and “Chain End” nodes to be specified as properties on an IK node
  • Added a Create > New IK Chain… action
  • Updated IK action descriptions
  • Updated IK action undo text

DAZ Studio : Incremented build number to 4.12.0.4


  • Update to NVIDIA Iray RTX 2019.1 (317500.1752)
  • Source maintenance; IK

DAZ Studio : Incremented build number to 4.12.0.5


  • Source maintenance; IK

DAZ Studio : Incremented build number to 4.12.0.6


  • Source maintenance
  • Merged changes to Trunk (4.11.0.x)
  • Handle IK node root and end point chain changes
  • Saving of IK node and chain definitions
  • Improved creation of IK chains when the chain root bone has multiple *bone* children

DAZ Studio : Incremented build number to 4.12.0.7


  • Source maintenance
  • Extended DzCreateNewItemDlg SDK API; added value to NewItemType enum
  • Added a dialog to the Create > New IK Chain… action

DAZ Studio : Incremented build number to 4.12.0.8


  • Source maintenance
  • Fixed a crash that occurred when creating a New IK Chain and a node type other than bone was selected
  • Added support for selecting vertices on polylines using lasso/marques modes of the Geometry Editor tool
  • Extended DzCreateNewItemDlg SDK API; added values to NewItemType enum; assign explicit value to CustomNode; added addOption(), addToButtonGroup()
  • Updated SDK version to 4.12.0.9; SDK min is 4.5.0.100
  • Fixed an issue that could cause the name of a new Group Node to have an unintended prefix

DAZ Studio : Incremented build number to 4.12.0.9


  • Source maintenance
  • Extended DzCreateNewItemDlg SDK API; added setNewItemName(), getNewItemName(); added parameter to addOption()
  • Extended DzObject public API; added isBuildingGeom(), isBuildingGeomValid()
  • Updated SDK version to 4.12.0.10; SDK min is 4.5.0.100
  • Updated SDK API documentation; DzCreateNewItemDlg
  • Update to NVIDIA Iray RTX 2019.1.1 (317500.2554)
  • Fixed a timing/update issue in DzMeshSmoother

DAZ Studio : Incremented build number to 4.12.0.10


  • Update to dForce 1.2.0.6
  • Updated the “New Strand-Based Hair…” action dialog to allow hiding the extended configuration options

DAZ Studio : Incremented build number to 4.12.0.11


  • Source maintenance
  • Build system tweaks; BitRock license
  • Pressing the spacebar when the Universal (or derived) tool is active and IK is enabled now causes IK pinning to be toggled; if translation or rotation is pinned, the pin is cleared; if neither translation or rotation is pinned, both become pinned
  • Fixed an issue with full vs partial pinning
  • Added saving of temporary IK nodes (arbitrary pose pinning in the context of viewtool dragged/pinned)
  • Cleaned up Universal tool IK pin menu display

DAZ Studio : Incremented build number to 4.12.0.12


  • Source maintenance
  • Default to “Best” display optimization when the user's card supports VBOs; reset this setting for all users
  • Updated copyright statement to include TBB and Thrust

DAZ Studio : Incremented build number to 4.12.0.13


  • Source maintenance

DAZ Studio : Incremented build number to 4.12.0.14


  • Source maintenance

DAZ Studio : Incremented build number to 4.12.0.15


  • Source maintenance; timeline
  • Fixed crash caused by stack size decrease
  • Extended the DzTimelinePane scripting API

DAZ Studio : Incremented build number to 4.12.0.16


  • Source maintenance; timeline
  • Updated Splash/About images
  • Fixed a crash when loading a geometry shell before (in scene order) a graft node involved in its target
  • Timeline actions that depend on key selection now enable/disable based on whether or not keys are selected
  • Fixed an issue where changing the key type would cause node/property navigation to completely collapse; still room to improve
  • Fixed timeline pane crash on close issues
  • Extended the DzTimelinePane scripting API
  • The (Key) Types selector now allows each type of property to be enabled/disabled independently
  • Moved the Copy/Paste Key(s) buttons into the button bar
  • Refactored the Interpolation Type selector to use interpolation type actions
  • Updated default styles; timeline, keyframes
  • Added Timeline 2 pane to core packages; removed from internal packages

DAZ Studio : Incremented build number to 4.12.0.17


  • Updated packaging version
  • Updated manual installer images
  • Fixed saving/loading of property favorites

DAZ Studio : Incremented build number to 4.12.0.18


  • Source maintenance
  • Updated scripting API documentation; DzFileIO, DzDir

DAZ Studio : Incremented build number to 4.12.0.19


  • Source maintenance
  • Report GL_MAX_ELEMENTS_INDICES and GL_MAX_ELEMENTS_VERTICES to log

DAZ Studio : Incremented build number to 4.12.0.20


  • Source maintenance

DAZ Studio : Incremented build number to 4.12.0.21


  • Source maintenance
  • Added support for single-quad “ribbons” to the “Convert Ribbons to Lines…” action; a polyline is created between the edge with lowest two vertex indices and the opposite edge

DAZ Studio : Incremented build number to 4.12.0.22


  • Source maintenance
  • If hairs are generated during the conversion process to dForce hair, a selection set is now created for generated versus copied hairs
  • Fixed an issue that could cause dForce hair simulation data to not be re-applied during scene load
  • Fixed an issue that could cause a file handle to be left open (locked) for a texture map if an error occurred when being read/imported in the Paint workspace of the Strand-Based Hair Editor
  • Update to dForce 1.2.0.8
  • Geometry Editor will now rename the corresponding simulation settings provider when renaming a surface; not doing so was causing simulation settings to be lost for the renamed surface
  • Added/Updated keyframe button/action icons
  • Fixed an issue in cases where the node-post-create script is executed and the renderer specific app setting has not been set (e.g., OBJ importer - ./FileIOOptions/DzObjImporter/DzIrayRenderer), the property values on existing materials were not being copied to the corresponding new renderer specific material; ref: using OBJ importer when the active renderer was set to Iray would not preserve settings imported from the corresponding MTL

DAZ Studio : Incremented build number to 4.12.0.23


  • Source maintenance
  • Updated keyframe button/action icons
  • Fixed an issue where right-clicking in the Timeline pane key graph to access the context menu would not properly consume the event; the toolbar menu would display after choosing an action from the menu
  • Updated default styles - timeline buttons/actions

DAZ Studio : Incremented build number to 4.12.0.24


  • Source maintenance
  • Updated logo; activity bar
  • Extended DzDrawSceneContext SDK API; added getDrawingViewport(), setDrawingViewport()
  • Updated SDK version to 4.12.0.25; SDK min is 4.5.0.100
  • Added the current viewport to the draw context for DrawStyles with scene draw handlers
  • Updated default styles; timeline button bar
  • Layout/Style work on timeline pane

DAZ Studio : Incremented build number to 4.12.0.25


  • Source maintenance
  • Fixed a crash caused by undoing an IK move
  • Added support for non-figure node hierarchy IK chains; still some issues but generally working; requires root node to be a Group Node for the IK Chain context
  • Fixed #DS-1874: Having the percent symbol (“%”) in the value of a float/int slider results in the value becoming 0%
  • Fixed IK “rattle” at extents; especially noticeable on Group based IK context systems

DAZ Studio : Incremented build number to 4.12.0.26


  • Source maintenance
  • Updated default styles; IK node/chain
  • The (create/delete key) “Scope” option in the Timeline pane now has 3 possible values - Node, Node Recursive (was labeled “Object”), and Object
  • Adjusted labeling, layout, and positioning of footer widgets in the Timeline pane; grouped related widgets; simplified (dynamic/basic) hiding/showing of widgets
  • Extracted inline help for the Timeline pane

DAZ Studio : Incremented build number to 4.12.0.27


  • Source maintenance
  • Added a toggle-able “Monitor Parameters Pane” action to the Timeline pane option menu; default unchecked; state recorded to pane settings; toggles whether or not to monitor property selection/hover in the Parameters pane
  • Extended DzTimePane scripting API

DAZ Studio : Incremented build number to 4.12.0.28


  • Source maintenance
  • Fixed handling of IK on a prop when parented to a bone; e.g., sword in hand
  • Fixed crashes related to construction/destruction/ownership of IK chains when setting/changing chain root/end
  • Restored previous behavior of the “Create Keyframe” action; operates on selected nodes, regardless of filtering in Timeline pane
  • “Create Keyframe” action relabeled to “Create Keys (Selected Nodes)”
  • “Create Key(s)” action relabeled to “Create Keys (Filtered)”; operates on filtering in Timeline pane
  • Restored previous behavior of the “Delete Keyframe” action; operates on selected nodes, regardless of filtering in Timeline pane
  • “Delete Keyframe” action relabeled to “Delete Keys (Selected Nodes)”; operates on selected nodes, regardless of selection in Timeline pane
  • “Skip to Previous Keyframe” action relabeled to “Skip to Previous Key”
  • “Skip to Previous (Displayed) Key” action relabeled to “Skip to Previous Key (Filtered)”
  • “Skip to Next Keyframe” action relabeled to “Skip to Next Key”
  • “Skip to Next (Displayed) Key” action relabeled to “Skip to Next Key (Filtered)”
  • Updated animation/timeline pane action descriptions
  • Modified/Extended DzTimePane scripting API
  • Updated default menus; recommend clicking Window > Workspace > Update and Merge Menus action

DAZ Studio : Incremented build number to 4.12.0.29


  • Source maintenance

DAZ Studio : Incremented build number to 4.12.0.30


  • Source maintenance

DAZ Studio : Incremented build number to 4.12.0.31


  • Source maintenance
  • Extended DzTimePane scripting API
  • Fixed inconsistencies between which Timeline pane playhead actions were undoable and which were not
  • Paste Keys in the Timeline pane is now undoable
  • Fixed inconsistencies in the labeling of undo items
  • Holding the control keyboard modifier while clicking the Create Keys button in the Timeline pane will now prompt for the number of keys to create; now consistent with the corresponding action
  • Fixed issues with canceling the Create # Keys dialog
  • Fixed issues with the enabled/disabled state of Timeline pane actions/buttons; still some styling of action icons to fix
  • Updated Timeline pane related inline help entries
  • Extended DzComboEditDlg SDK API
  • Updated SDK version to 4.12.0.32; SDK min is 4.5.0.100
  • In the Render Settings pane, clicking the “Add to Queue[…]” button on the “Bridge [BETA]” sub-page of the “Advanced” page for the “NVIDIA Iray” renderer now displays a basic dialog that validates the “Job Name” value before enabling the “Accept” button when the “Image Name” property is empty; if the “Image Name” property is non-empty, the job name is set to a valid version of the “Image Name” value; if a valid job name cannot be extracted, a warning is written to the log; this prevents illegal job names from ultimately causing issues/failures on the Iray Server side

DAZ Studio : Incremented build number to 4.12.0.32


  • Source maintenance
  • Fixed a memory leak (regression) when adding a job to the Iray bridge queue and the “Image Name” property has a value
  • Extended DzFileNameValidator SDK API; added setDisallowLeadingDot(), getDisallowLeadingDot(), setDisallowConsecutiveDots(), getDisallowConsecutiveDots(), setEmptyIsIntermediate(), getEmptyIsIntermediate(), validate()
  • Updated SDK version to 4.12.0.33; SDK min is 4.5.0.100
  • Further refined the job name validator used by the Iray Bridge when adding a job to the render queue
  • The “Image Name” property in the Render Settings pane now utilizes a filename validator to prevent illegal characters/sequences from being entered
  • The “Name” field in the Render Window now utilizes a filename validator to prevent illegal characters/sequences from being entered
  • Refined validation of the job name (project) portion of a snapshot result_name that is submitted to Iray Server; an illegal character in the job name is now replaced with an underscore character
  • Refined validation of the output_name for a render_target submitted to Iray Server; an illegal character in the job name is now replaced with an underscore character; limited to 32 characters

DAZ Studio : Incremented build number to 4.12.0.33

Public Beta (4.12.0.42)

  • Source maintenance
  • Updated SDK API documentation; DzOptionsDialog
  • Improved progress feedback when using Iray Bridge

DAZ Studio : Incremented build number to 4.12.0.34


  • Source maintenance

DAZ Studio : Incremented build number to 4.12.0.35


  • Source maintenance

DAZ Studio : Incremented build number to 4.12.0.36


  • Source maintenance

DAZ Studio : Incremented build number to 4.12.0.37


  • Source maintenance

DAZ Studio : Incremented build number to 4.12.0.38


  • Source maintenance

DAZ Studio : Incremented build number to 4.12.0.39


  • Source maintenance
  • Extended DzDrawSceneContext SDK API; added isTiling(), setIsTiling()
  • Updated SDK version to 4.12.0.40; SDK min is 4.5.0.100
  • Modified DzHierarchyPane scripting API
  • Updated label of DzHPShowIKAction from “Show IK” to “Show IK Chains”
  • Showing IK Chains in the Scene pane is now enabled by default
  • Extended DzIrayRenderer scripting API
  • Fixed an issue that prevented dForce Hair from being rendered via Iray Server
  • Improved progress/feedback when constructing snapshots to send to Iray Server
  • Improved progress/feedback when sending snapshots to Iray Server
  • Improved formatting of Iray log messages

DAZ Studio : Incremented build number to 4.12.0.40


  • Source maintenance
  • Fixed a potential crash related to the undo stack and float properties
  • Fixed an issue with the facing direction of tessellated polylines
  • Fixed a crash that occurred when attempting to create an IK Chain for a selected node that it is not possible to create an IK chain for; i.e., a skeleton
  • Added/Modified feedback provided when a node type cannot be created by DzCreateNewItemDlg

DAZ Studio : Incremented build number to 4.12.0.41


  • Source maintenance
  • Update to NVIDIA Iray RTX 2019.1.3 (317500.3714)
  • Fixed compile warning in basic_test mdl
  • Update to dForce 1.2.0.10
  • Fixed an issue in the dForce hair generation modifier with simplification during conversion.
  • Fixed a memory corruption/crash issue with text validators used in various Strand-Based Hair related dialogs

DAZ Studio : Incremented build number to 4.12.0.42

Public Beta (4.12.0.47)

  • Fixed a crash on close related to removing/deleting IK chains
  • Implemented initial support for Timeline pane dopesheet key selection via context menu actions

DAZ Studio : Incremented build number to 4.12.0.43


  • Source maintenance
  • Fixed an issue in the Timeline pane where modifying the playrange would cause left/right background drawing of the Key Graph to be incorrectly sized
  • The Timeline pane Key Graph now uses style colors (if available) for drawing of transform property labels/curves
  • The Timeline pane Key Graph now (left) elides object:property labels when the left background is not wide enough to support the full text
  • Added a “Select Item Keys (Filtered)” action; selects keys represented by the selected items (or the context item if no selection) in the dopesheet, within the visible playrange; Timeline pane dopesheet context menu
  • Added a “Select All Item Keys (Filtered)” action; selects keys represented by the selected items (or the context item if no selection) in the dopesheet, in the animation range; Timeline pane dopesheet context menu
  • Added a “Deselect Item Keys (Filtered)” action; deselects keys represented by the selected items (or the context item if no selection) in the dopesheet, within the visible playrange; Timeline pane dopesheet context menu
  • Added a “Deselect All Item Keys (Filtered)” action; deselects keys represented by the selected items (or the context item if no selection) in the dopesheet, in the animation range; Timeline pane dopesheet context menu

DAZ Studio : Incremented build number to 4.12.0.44


  • Source maintenance
  • Fixed a dForce hair simulation issue with twist introduced into a given strand (by various means); now considers the transform of the face at the root
  • Fixed a dForce hair crash caused by accessing the wrong rotation
  • Made dForce hair OpenCL kernel more consistent with other dForce OpenCL kernels
  • Fixed #DS-1880 : Polyline Dynamic Surface Add-Ons do not work
  • Update to dForce 1.2.0.12
  • The enabled/disabled state of the “Create Keys (Filtered)” action now depends on Timeline pane dopesheet item selection; a node must be selected in order for the action to have a proper context
  • Fixed issues relating to the enabled/disabled state of Timeline pane actions/buttons; still more work to do here

DAZ Studio : Incremented build number to 4.12.0.45


  • Fixed a crash in the IK system caused by choosing None as the Chain Root or Chain End
  • Placed Timeline pane node selection updates behind an event; addresses an issue that caused expensive key caching/drawing updates to occur too frequently (e.g., for each node when selecting/deselecting many/all nodes vs as the event loop naturally allows) and ultimately resulted in degraded performance
  • IK solve is now applied during animation (as opposed to only during tool manipulation) based on the value of Reach Translation on an IK node; a value of 0 does not apply; a value of 1 fully applies
  • Fixed an issue with loading (and then attempting to re-save) scenes that were saved with IK pins active prior to 4.12.x; IK pins were erroneously being saved (incompletely) in prior builds, causing recently added intentional support for temporary/transient IK Chain saving/loading to be improperly defined and therefore crash during subsequent attempts to save
  • Scenes saved with IK pins active prior to 4.12.x now (implicitly) have their IK pins restored on load
  • Fixed enabling/disabling of Timeline pane actions for selecting/deselecting item keys; context menu

DAZ Studio : Incremented build number to 4.12.0.46


  • Build system tweaks

DAZ Studio : Incremented build number to 4.12.0.47

Public Beta (4.12.0.60)

  • Source maintenance; Timeline pane

DAZ Studio : Incremented build number to 4.12.0.48


  • Source maintenance

DAZ Studio : Incremented build number to 4.12.0.49


  • Source maintenance
  • Cleaned up logging of errant meta-invocation of view render handler retrieval method when rendering with Iray
  • The dynamic divider between the Dopesheet and Key Graph in the Timeline pane now uses the proper thin styling to reflect scope (internal to a pane) instead of the full styling (dock areas/columns)

DAZ Studio : Incremented build number to 4.12.0.50


  • Source maintenance
  • When the text of an item in the name column of the Timeline pane Dopesheet view is truncated/elided, a tooltip that contains the full text of the item will be displayed when the cursor is hovered over the item
  • Added Expand/Collapse actions for the Timeline pane dopesheet view; still some key painting issues to address
  • Added error reporting for Timeline pane related actions
  • Updated default layout files; recommend clicking Window > Workspace > Update and Merge menus
  • Extended DzTimePane scripting API

DAZ Studio : Incremented build number to 4.12.0.51


  • Source maintenance
  • Fixed enabling/disabling the Timeline pane Paste Keys action/button; enabled when keys have been copied, disabled otherwise
  • Extended/Modified DzTimePane scripting API
  • Updated default styles

DAZ Studio : Incremented build number to 4.12.0.52


  • Source maintenance
  • Fixed an issue in the Timeline pane Key Graph where changing which property(ies) to display would not disconnect listening to previously selected properties
  • Guard against potential crashes when removing an IK node from the scene
  • Improved efficiency of IK Chains validating the existence of nodes in the scene

DAZ Studio : Incremented build number to 4.12.0.53


  • Source maintenance
  • Node properties now respect the checked state of the Scene pane > option menu > Show > Show Hidden Nodes action when displaying the node selection dialog; does not prevent the property from being assigned a hidden node value, like excludeNode() does, only whether or not hidden nodes are listed in the editor

DAZ Studio : Incremented build number to 4.12.0.54


  • Source maintenance
  • Fixed an issue with creating IK Chains for legacy figures, where the name/label of the IK chain did not reflect the name/label specified by the file/data
  • The the name/label of a legacy IK Chain now includes the name/label of the figure as a prefix by default; helps in the identification of cross-object parenting relationships
  • The name/label of a temporary/transient IK Chain now includes the name/label of the context node as a prefix; helps in the identification of cross-object parenting relationships
  • Fixed an issue with creating IK Chains for legacy figures where the Chain Root and Chain End properties of the node did not reflect the root/end of the chain
  • IK nodes now properly exclude themselves from Chain Root/End options
  • The IK Chain Reach Translation/Rotation properties are now displayed as percentages
  • Updated feedback in the “New IK Chain…” action
  • Extended DzCreateNewItemDlg SDK API
  • Updated SDK version to 4.12.0.55; SDK min is 4.5.0.100
  • Added a Label field to the Create New Item dialog
  • The Name and Label fields of the Create New Item dialog now provide an option with the default value
  • The Create New Item dialog now disables the Accept button unless the Name and Label fields are non-empty; still need to add validators to prevent illegal characters from being entered
  • Create > New IK Chain… now provides defaults for the Name/Label fields that include the name/label of the context node as a prefix by default; helps in the identification of cross-object parenting relationships
  • Enabled the “Parent to Selected Item” option for Create > New IK Chain…“ action; note that the current behavior of IK nodes that are parented to the selected node is indeterminate and that this option is therefore experimental
  • Prompting for node label collisions by the Create New Item dialog is (temporarily) disabled; a unique label is automatically determined/assigned

DAZ Studio : Incremented build number to 4.12.0.55


  • Source maintenance
  • Fixed an issue with the “Expand All” and “Expand from Item” actions on the Dopesheet context menu causing tracks/keys to not be drawn

DAZ Studio : Incremented build number to 4.12.0.56


  • Source maintenance

DAZ Studio : Incremented build number to 4.12.0.57


  • Source maintenance
  • Fixed a crash on close (regression) when the scene contained an IK Chain; regression resulted from recent work to guard against potential crashes when removing an IK Chain from the scene
  • Refactored DzCreateNewItemDlg to allow option shown/hidden states to be configured after init, but prior to display/exec; formalized the distinction between the intent to show/hide an option altogether vs dynamically showing/hiding when the user clicks a button in the UI
  • Extended DzCreateNewItemDlg SDK API
  • Updated SDK version to 4.12.0.58; SDK min is 4.5.0.100
  • Switched Create > “New Iray Decal Node…” action to use refactored DzCreateNewItemDlg CustomNode API/functionality
  • Switched Create > “New Iray Section Plane Node…” action to use refactored DzCreateNewItemDlg CustomNode API/functionality
  • Switched Create > “New Push Modifier Weight Node…” action to use refactored DzCreateNewItemDlg CustomNode API/functionality

DAZ Studio : Incremented build number to 4.12.0.58


  • Source maintenance
  • Switched Create > “New Strand-Based Hair Node…” action to use refactored DzCreateNewItemDlg CustomNode API/functionality
  • Switched Create > “New dForce Modifier Weight Node…” action to use refactored DzCreateNewItemDlg CustomNode API/functionality
  • Switched Create > “New dForce Wind Node…” action to use refactored DzCreateNewItemDlg CustomNode API/functionality
  • Update to dForce 1.2.0.13

DAZ Studio : Incremented build number to 4.12.0.59


  • Source maintenance
  • Extended DzSubPathValidator SDK API
  • Extended DzFileNameValidator SDK API
  • Updated SDK version to 4.12.0.60; SDK min is 4.5.0.100
  • Removed the “Create a Persistent Point At Target (Null)” option from the Create > “New Push Modifier Weight Node…” action options dialog; it served no meaningful purpose; it was shown due to a limitation in the DzCreateNewItemDlg API that has since been addressed
  • Added validators to the Name and Label fields of the Create New Item dialog; prevents illegal characters from being entered
  • Fixed a regression in the Create New Item dialog that caused options that should be hidden for a given node type to display when the dialog options were expanded
  • Added validators to the Node Name/Label fields of the “Scene Identification” dialog
  • The Accept button of the “Scene Identification” dialog now enables/disables based on valid Node Name/Label values
  • The Node Name/Label fields of the “Scene Identification” dialog now behave consistently; enabling/disabling, validators, value options, etc
  • Fixed widget object names in the “Scene Identification” dialog
  • Removed the “Create a Persistent Point At Target (Null)” option from the Create > “New dForce Modifier Weight Node…” action options dialog; it served no meaningful purpose; it was shown due to a limitation in the DzCreateNewItemDlg API that has since been addressed
  • Update to dForce 1.2.0.14
  • Extended the ./resources/guide pages/Common/PanePage.dsa include script to allow a given pane's public API to declare/define a get*GuidePage() method, where '*' is the basename of the file that includes …PanePage.dsa and is the script that performs setup of the guide page
  • The “Rename Node…” action dialog is now consistent with the “Scene Identification” and Create New Item dialogs; validation, accept button enabling/disabling, etc
  • Cleaned up “Reparent Bone…” action
  • Cleaned up “Mirror Joint Options” dialog
  • Added a “Properties” option to the Create Key Scope selector on the Timeline pane; when active and the Create Keys button/action is clicked/triggered, only the properties represented by the selected items in the dopesheet name column will have keys created
  • Modified the DzTimePane scripting API

DAZ Studio : Incremented build number to 4.12.0.60

Public Beta (4.12.0.67)

  • Source maintenance
  • Extended DzScene public API; added getUniqueTopLevelName()
  • Updated SDK version to 4.12.0.61; SDK min is 4.5.0.100
  • Updated public API documentation; DzScene
  • The Create New Item dialog now uses DzScene::getUniqueTopLevelName() instead of its own implementation
  • The Create > “New Node Instances…” action now provides feedback when a node has not been selected and the action is triggered
  • The Create > “New Node Instances…” action now provides an options dialog that is more consistent with other native Create > New * actions
  • The Create > “New Node Instance…” action now provides feedback when a node has not been selected and the action is triggered
  • The Create > “New Geometry Shell…” action now provides feedback when a node has not been selected and the action is triggered

DAZ Studio : Incremented build number to 4.12.0.61


  • Source maintenance
  • Extended DzScene public API; added getNameNumber(), stripNameNumber(), getLabelNumber()
  • Extended SDK API; added DzBasicDialogValidator
  • Extended DzBasicDialog SDK API; added setValidator(), getValidator()
  • Updated SDK version to 4.12.0.62; SDK min is 4.5.0.100
  • Updated public API documentation; DzScene
  • Updated SDK API documentation; DzBasicDialogValidator, DzBasicDialog
  • Fixed an issue with erratic IK behavior when a node involved in a chain was locked at non-zero values

DAZ Studio : Incremented build number to 4.12.0.62


  • Source maintenance
  • Fixed an errant warning when setting lists on empty enum properties
  • Fixed an issue where deleting a camera/light from the scene that was serving as the active camera for a given 3D viewport would not cause that viewport to change the active camera to another camera/light
  • Extended DzCreateNewItemDlg SDK API
  • Updated SDK version to 4.12.0.63; SDK min is 4.5.0.100
  • The Create New Item dialog now defaults to making the Label value unique
  • Fixed an issue with the timing between initializing the Create New Item dialog and the initial show event; improves the ability to configure options via SDK API prior to display
  • Implemented Create New Item dialog validation between Name suffix, Label suffix and scene contents; when the dialog is accepted, if the Name/Label specified are not unique and/or suffixes do not match, the user is notified, the Name and/or Label will be adjusted to ensure uniqueness
  • The default Name/Label for Create > “New Geometry Shell…” now includes “Shell”
  • The default Name/Label for Create > “New Node Instance…” now includes “Instance”
  • The default Name/Label for Create > “New Node Instances…” is now “Node Instances” to avoid confusion with Instance Group Nodes (collections of instances displayed/controlled as a single node)
  • The default Label for Create > “New Node Instances…” is now made unique
  • Fixed available options for the Create > “New Node Instances…” action

DAZ Studio : Incremented build number to 4.12.0.63


  • Source maintenance
  • Added Key Creation Scope actions (Object, Node Recurse, Node, Properties) for setting the Timeline pane Create Key Scope selector
  • Added Key Creation Scope actions to the timeline pane Dopesheet context menu
  • Updated default layout files; recommend clicking Window > Workspace > Update and Merge menus
  • Modified/Extended DzTimePane scripting API.

DAZ Studio : Incremented build number to 4.12.0.64


  • Source maintenance
  • Key Creation Scope actions (Object, Node Recurse, Node, Properties) for setting the Timeline pane Create Key Scope selector now indicate which one in the set is active
  • The Timeline pane Dopesheet context menu is now more context aware
  • The Timeline pane Key Graph context menu is now more context aware
  • Made performance improvements to various components of the Timeline pane
  • Fixed an issue in the Timeline pane where using the [Shift] component of extended selection (i.e., selection between the last two selected items when holding shift key) in the Name column of the Dopesheet did not cause the Key Graph to display all (float) properties in the selection
  • Made improvements to mouse event handling in the Timeline pane Dopesheet

DAZ Studio : Incremented build number to 4.12.0.65


  • Source maintenance
  • Fixed an issue in dForce that allowed unnecessary processing of objects that are not Visible in Simulation
  • Fixed a crash in dForce when a Dynamic Surface Add-On that added floating vertices was used
  • Fixed a crash in dForce when a Dynamic Surface Add-On that causes floating vertices was used
  • Update to dForce 1.2.0.16
  • Extended DzSkeleton public API; added getUniqueBoneName(), getUniqueBoneLabel()
  • Modified DzSkeleton public API; deprecated findUniqueBoneName()
  • Updated SDK version to 4.12.0.66; SDK min is 4.5.0.100
  • Updated public API documentation; DzSkeleton, DzFigure, DzLegacyFigure
  • Fixed an issue where the nodeName parameter passed to DzSkeleton::convertFigureToProp() wasn't being used; now it is used if non-empty, otherwise the name of the figure being converted is used
  • Converting a figure to a prop (Edit > Figure > Rigging > Convert to Prop…) now ensures a unique label is assigned
  • Converting a figure to a prop now infers selection of a bone to be the skeleton it belongs to instead of requiring explicit skeleton selection
  • Converting a prop to a figure (Edit > Object > Rigging > Convert Prop to Figure…) now ensures that the selected node is not a skeleton or a bone
  • Converting a prop to a figure now ensures a unique label is assigned
  • The “Convert Prop to Figure” dialog now validates node name input if the “Inherit Skeleton of Parent” is unchecked

DAZ Studio : Incremented build number to 4.12.0.66


  • Source maintenance
  • Fixed an issue with generating unique names/labels for bones; DzSkeleton::getUniqueBoneName() and DzSkeleton::getUniqueBoneLabel() now strip the trailing space/digits from the name passed in and use the resulting base to construct unique names/labels
  • Performed work to begin replacing Qt3 item views in the Customize dialog; internal
  • Fixed an issue in the “Convert Prop to Figure…” action where the conversion would not be performed if the “Root Node Name” field in the dialog was empty and disabled; now uses “Bone” in this scenario
  • Performed cleanup of the Convert Prop to Figure dialog
  • Creating a new child bone with the Joint Editor tool Interactive Mode enabled (context menu > Create > Interactive Mode) and the Ctrl/Cmd modifier pressed now uses the selected node to determine the name/label of the created bone; ensures uniqueness
  • The “Create Child Bone” dialog (Joint Editor context menu > Create > Create Child Bone…) is now consistent with the Create New Item, Scene Identification, and Rename Node dialogs; validators, accept button enabling/disabling, etc
  • The “Create Sibling Bone” action bone naming/labeling is now consistent
  • The “Duplicate Bones” action bone naming/labeling is now consistent
  • The “Split Bone” action bone naming/labeling is now consistent

DAZ Studio : Incremented build number to 4.12.0.67

Public Build (4.12.0.73)

  • Source maintenance
  • Changing the label of a node in a scene view (e.g., Scene pane) now validates the entered text and provides feedback where appropriate; illegal characters, collisions, etc
  • Additional work in the effort to replace Qt3 item views in the Customize dialog; internal

DAZ Studio : Incremented build number to 4.12.0.68


  • Source maintenance
  • Made improvements to the replacement of Qt3 item views in the Customize dialog; internal
  • Extended DzCreateNewItemDlg SDK API
  • Updated SDK version to 4.12.0.69; SDK min is 4.5.0.100
  • Fixed an issue that caused Create > “New *…” actions that are set to prefer the “Parent to Selected Item” option to erroneously cause the “Parent Selected Item(s) to New *” option (which is typically hidden in those cases) to be selected

DAZ Studio : Incremented build number to 4.12.0.69


  • Source maintenance

DAZ Studio : Incremented build number to 4.12.0.70


  • Source maintenance
  • Relaxed the node label validator in Create > New *… dialog to allow non-consecutive dot (period) characters
  • Relaxed the node label validator in Scene Identification dialog to allow non-consecutive dot (period) characters
  • Relaxed the node label validator in scene views (e.g., Scene pane) to allow non-consecutive dot (period) characters
  • Fixed a crash that could occur in scene views when building/rebuilding the view
  • Changing the label of a node in the Measure Metrics pane now validates the entered text and provides feedback where appropriate; illegal characters, collisions, etc
  • Relaxed the node label validator in Create Child Bone dialog to allow non-consecutive dot (period) characters
  • Fixed an issue with Iray canvas rendering when using the Spot Render tool configured to render to a new window
  • Fixed a crash that occured when an IK target node was outside of the figure node hierarchy and the figure was deleted during weight map conversion
  • Removed the move root item up/down buttons from the Name column of the Dopesheet in the Timeline pane; preparation for adding filtering header
  • Extended the DzTimePane scripting API
  • Added a “Move Root Item to Top” action; moves the the root of the selected item to the top of the Dopesheet; accessible via Timeline pane Dopesheet context menu
  • Added a “Move Root Item Up” action; moves the the root of the selected item to the next higher position in the Dopesheet; accessible via Timeline pane Dopesheet context menu
  • Added a “Move Root Item Down” action; moves the the root of the selected item to the next lower position in the Dopesheet; accessible via Timeline pane Dopesheet context menu
  • Added a “Move Root Item to Bottom” action; moves the the root of the selected item to the bottom of the Dopesheet; accessible via Timeline pane Dopesheet context menu
  • Fixed styling and widget parenting issues in the Timeline pane

DAZ Studio : Incremented build number to 4.12.0.71


  • Source maintenance
  • Fixed #DS-1927: Fixed a crash when skipping to next key frame; ensure undo stack exists prior to pushing undo items
  • Additional work to gaurd against crashing on save of IK nodes
  • Extended DzElementData public API; added addedToElement(), removedFromElement(), elementDeleting() signals
  • Updated SDK version to 4.12.0.72; SDK min is 4.5.0.100
  • Fixed an issue where removing an IK context node from the scene did not also remove the associated IK nodes
  • Fixed a crash when undoing after converting a figure from legacy to weight mapping and the figure provided IK chains
  • Fixed #DS-1923: Fixed a crash on close when category roots are still being fetched in a separate thread
  • Fixed #DS-1912: Visible in Simulation cannot be animated; simulation visibility is captured at the start of the simulation and maintained throughout
  • Improved performance of restoring expanded state of scene views (e.g., Scene pane); occurs each time a new node is added to the scene
  • The expanded state of items in the Timeline pane Dopesheet is now preserved when changing which property types are displayed or the key creation scope
  • Extended DzTimePane scripting API
  • Added a “Refresh” action for the Timeline pane Dopesheet; accessible via context menu
  • Moved Face Transfer plugin from internal to external footprint; Win64 only

DAZ Studio : Incremented build number to 4.12.0.72


  • Source maintenance
  • Fixed an issue with loading of saved IK chains; internally was not including all nodes in the chain even though the IK node properties showed them as being included
  • Fixed an issue where parenting an IK target node to a node in the the IK chain that it defines caused amplified movement while dragging the IK target
  • Fixed an occasional crash when search results are changed quickly in side navigation content views; due to issues with variable lifetime and multi-threading
  • Updated SDK version to 4.12.0.73; SDK min is 4.5.0.100
  • Updated SDK API documentation; DzTransformTool
  • Fixed an issue in trial usage activation policy; now dependent on release cycle/channel

DAZ Studio : Incremented build number to 4.12.0.73

Public Build (4.12.0.83)

  • Source maintenance
  • Fixed #DS-1925: Fixed “Index out of range in DzEnumProperty::getItem()” when switching shaders on objects with multiple UV sets
  • Fixed #DS-1920: Fixed nested group nodes and visibility
  • Fixed #DS-1881: Fixed Iray voffset not looking the same as 3Delight and the viewport in some cases; could result in consistency issues with released products that used the previously inconsistent setting
  • Holding the Alt modifier while clicking the Visible icon in a scene view (e.g., Scene pane) will now restore the default visibility of the node
  • Holding the Ctrl/Cmd modifier while clicking the Visible icon in a scene view (e.g., Scene pane) will now toggle visibility of the node and all of the node's children, recursively until/unless a Group node is encountered
  • Holding the Ctrl/Cmd modifier and the Alt modifier together while clicking the Visible icon in a scene view (e.g., Scene pane) will now restore the default visibility of the node and all of the node's children, recursively until/unless a Group node is encountered
  • Holding the Alt modifier while clicking the Selectable icon in a scene view (e.g., Scene pane) will now restore the default viewport selectability of the node
  • Holding the Ctrl/Cmd modifier while clicking the Selectable icon in a scene view (e.g., Scene pane) will now toggle viewport selectability of the node and all of the node's children, recursively until/unless a Group node is encountered
  • Holding the Ctrl/Cmd modifier and the Alt modifier together while clicking the Selectable icon in a scene view (e.g., Scene pane) will now restore the default viewport selectability of the node and all of the node's children, recursively until/unless a Group node is encountered
  • Tooltips for the Visible and Selectable icons in scene views (e.g., Scene pane) now indicate state in addition to node label
  • When the text of an item in a scene view (e.g., Scene pane) is truncated/elided, a tooltip that contains the full text of the item will now be displayed
  • Reformated Face Transfer Save page
  • Updated textual feedback in Face Transfer progress

DAZ Studio : Incremented build number to 4.12.0.74


  • Source maintenance
  • Fixed #DS-1920: Fixed Iray voffset for MDL bricks
  • Extended DzStyledButton public API; added minimumWidthText property
  • Extended DzStyledButton SDK API; added setMinimumWidthText(), getMinimumWidthText()
  • Extended DzTexture public API; added getRevision(), incrementRevision()
  • Updated SDK version to 4.12.0.75; SDK min is 4.5.0.100
  • Fixed #DS-1886: Choosing a long labeled node in the scene selection dropdown found in various panes is causing minimum size issues for the widget/pane
  • Fixed Face Transfer pane Source Image resizing issues
  • Fixed Face Transfer pane default open location; default to OS defined pictures path; record/restore last path used for none/browse; use current where applicable
  • Fixed refreshed texture not rendering in Iray until all active instances are shut down
  • Fixed an issue with refreshing textures when a texture was temporarily invalid; now testing invalid is temporary
  • Fixed an issue with refreshing textures when modified timestamp was not newer; now requires being different, not newer
  • Redraws and the undo stack are now locked while Face Transfer is processing
  • Fixed a crash on close in Face Transfer

DAZ Studio : Incremented build number to 4.12.0.75


  • Source maintenance
  • Put Face Transfer handling of scene selection behind events
  • Fixed #DS-1883: Missing bump/normal mix for Iray shaders using refraction without shared glossy inputs
  • Extended DzPushModifier public API; added setToPostSmooth(), isPostSmooth()
  • Extended DzPushModifier SDK API; added getDefaultModifierStackSectionID() override, shouldAddPostSmooth()
  • Updated SDK version to 4.12.0.76; SDK min is 4.5.0.100
  • Fixed #DS-1884: Allow push modifier to exist before or after smoothing modifier depending on whether or not smoothing modifier exists when the push modifier is added
  • The track/keys column for selected items in the Dopesheet view (Timeline pane) is now highlighted if it is the lowest leaf (i.e., a property) or not expanded (i.e., node, property group, or intermediary)
  • Made styling adjustments to various elements of the Dopesheet view (Timeline pane); playhead size/positioning, track start/end markers, etc

DAZ Studio : Incremented build number to 4.12.0.76


  • Source maintenance
  • Fixed an issue in the Timeline pane Key Graph where moving two or more selected keys together horizontally in either direction and abruptly changing direction during the drag would cause the selected keys to randomize their times relative to one another; this was an issue in graphMate prior to integration
  • Fixed a regression in the Timeline pane where moving a key in the dope sheet would sometimes cause TCB params to be randomized to unexpected/large values
  • Key selection state between the Dope Sheet and the Key Graph views of the Timeline pane are now synchronized

DAZ Studio : Incremented build number to 4.12.0.77


  • Source maintenance
  • Modified Face Transfer pane gender options to remain enabled; the user is presented with options when a gender mismatch is encountered
  • Made adjustments to the alignment of the Face Transfer trial status text
  • Face Transfer gender selection now persists between sessions
  • Fixed an issue in the Face Transfer pane with scroll bars and resizing the image portion of the pane
  • Saving via the Face Transfer pane now causes the Scene Subset thumbnail image to be created

DAZ Studio : Incremented build number to 4.12.0.78


  • Source maintenance
  • Made adjustments to controls in the Face Transfer save dialog

DAZ Studio : Incremented build number to 4.12.0.79


  • Source maintenance
  • Extended SDK API; added DzNodeNameValidator, DzNodeLabelValidator
  • Updated SDK version to 4.12.0.80; SDK min is 4.5.0.100
  • Fixed an issue that caused the text cursor in render filename properties/widgets to be moved to the end (far right) while typing
  • Improved editing of string properties
  • Made slight optimizations to property view painting/drawing
  • String property widgets now use ”<?>“ or ”<Multiple>“ value when multiple values are being represented and the value is indeterminate; this is now consistent with other indeterminate states
  • Extended DzComboEdit public API
  • Made validation behaviors of the “Rename Node…” action dialog is more consistent with scene views (e.g., Scene pane), “Scene Identification” and Create New Item dialogs

DAZ Studio : Incremented build number to 4.12.0.80


  • Source maintenance
  • Tweaks to validation behaviors of the “Rename Node…” action dialog

DAZ Studio : Incremented build number to 4.12.0.81


  • Source maintenance
  • Fixed an issue where an IK target/goal node for a given IK chain that is parented and pinned to a node higher in the node hierarchy than its Chain Root, but still within the hierarchy that ascends to the context node (root), would erroneously translate when rotating a node between said higher node and the Chain Root
  • Fixed erratic behavior (“popping”) stemming from error during solve of IK in systems where an IK target/goal node is dragged past full extension of the explicit chain
  • Fixed an issue in sub-path validator that erroneously allowed a backslash character (“\”) to be entered; backslash characters have special meaning when placed adjacent to other certain characters,; backslash characters are not cross-platform compatible in paths; a backslash character should be automatically replaced with a slash character (”/“) where a sub-path validator is used
  • Auto-scrolling to an item representing the primary selected node in the Timeline pane dopesheet now centers the item instead of just causing it to be visible within the top/bottom edge of the view
  • Switched handling of ensuring item visibility in the dopesheet to be event based instead of timer based
  • Handle a case in the “Rename Node…” action dialog when the generated label for a node is empty because an intermediate, but illegal in certain positions, character was the only character entered (e.g., a period)

DAZ Studio : Incremented build number to 4.12.0.82


  • Source maintenance
  • Updated validation used in various fields of the Face Transfer save dialog
  • Fixed an issue when initializing the “Asset Directory” value for the Morph Asset save options dialog that would cause an invalid value to be set if the selected object was installed via Daz Connect; new assets should not be saved to Daz Connect data directories
  • Fixed an issue when initializing the “Asset Directory” value for the UV Asset save options dialog that would cause an invalid value to be set if the selected object was installed via Daz Connect; new assets should not be saved to Daz Connect data directories
  • The selected state of items in the Timeline pane Dopesheet is now preserved when changing which property types are displayed or the key creation scope
  • Added a Window > Workspace > “Off Screen Tool Bars…” action
  • Updated default menus; recommend clicking Window > Workspace > Update and Merge Menus action

DAZ Studio : Incremented build number to 4.12.0.83

Public Beta (4.12.0.85)

  • Source maintenance
  • Extended DzBasicDialog public API; added setDefaultButton(), setHelpButtonAsDefault(), setApplyButtonAsDefault(), setAcceptButtonAsDefault(), setCancelButtonAsDefault()
  • Updated public API documentation; DzBasicDialog
  • Updated SDK version to 4.12.0.84; SDK min is 4.5.0.100
  • DzBasicDialog instances now explicitly select the 'Accept' button by default
  • Dynamically enabling/disabling or showing/hiding a dialog button in a DzBasicDialog instance no longer loses track of the preferred default button for the instance
  • Default button assignment in a DzBasicDialog instance now falls back (in a specific order) to a dialog button that is currently enabled/showing, but is restored to the preferred button when it becomes enabled/shown; focus is only updated if a dialog button had focus immediately prior to the preferred button becoming enabled/shown
  • Fixed #DS-1953: Create new item dialogs no longer select Accept button by default
  • Extended DzBlackHoleNode SDK sample API
  • Updated DzBlackHoleAction to use DzCreateNewItemDlg; provides the user with a familiar/consistent experience and demonstrates use of the API for developers
  • Extended DzCreateNewItemDlg SDK API; added setNameCheckDisabled(), setNewItemNameOptionReadOnly()
  • Extended DzCreateNewItemValidator SDK API
  • Fixed an issue in DzCreateNewItemDlg where calling setNewItemNameOptionHidden() or setNewItemLabelOptionHidden() did not also hide the corresponding label

DAZ Studio : Incremented build number to 4.12.0.84


  • Source maintenance
  • Updated Splash/About images
  • Updated default styles; Face Transfer pane action icon
  • Extended DzSubPathValidator SDK API; added setDisallowWhitespace(), getDisallowWhitespace(), setDisallowConsecutiveWhitespace(), getDisallowConsecutiveWhitespace(), setConsecutiveWhitespaceIsIntermediate(), getConsecutiveWhitespaceIsIntermediate(), setIllegalCharactersExpression(), getIllegalCharactersExpression()
  • Updated SDK version to 4.12.0.85; SDK min is 4.5.0.100
  • Fixed an issue with sub-path validation that prevented the user from being able to type words (more specifically, consecutive space characters) mid string if the text cursor was positioned on the left side of an existing space character (if the text cursor was position on the right side, it behaved as expected) and the validator was configured to prevent consecutive space characters
  • Fixed an issue in the Highway and Main Street styles where the contrast of the value for properties in a property view that are not at their default values was not significant enough to be distinguished from the item background when selected/mouseover

DAZ Studio : Incremented build number to 4.12.0.85

Private Beta (4.12.0.86)

  • Build system tweaks; exclude errant files from plugin packages
  • Updated default interface files; added Face Transfer pane to City Limits Lite layout; added Face Transfer pane action to City Limits Create toolbar; updated ActionLists with recently added Timeline pane actions
  • Consolidated Face Transfer tip page video buttons

DAZ Studio : Incremented build number to 4.12.0.86



Release to Production

  • 4.12.0.86 - 2019-9-24