Release Notes

Version 2.3

Functionality

  • Improved collision detection system.
    The collision detection system is now more robust and efficient. Continuous Collision Detection has switched to using a swept motion intersection computation instead of a relative embedding approach. This leads to more accurate collision detection and fewer erroneous contacts.
    Contacts in the new system are persistent. This means that contacts will be maintained between frames, even if the collision geometry moves, as long as the contact vertex is still touching the other tissue. Contacts will only be removed when the collision geometry moves away from the contact point in the proper direction.

    • Collision Subdivision checkbox.
      Collision subdivision is now disabled by default. It needs to be turned on manually by setting the Collisions Subdivision attribute on the zSolver node to True. Additional collision points are now only added along the edges of collision triangles, instead of on their faces. Collision Subdivision data is pre-computed at the start of the sim. As a consequence, the Collisions Point Spacing attribute is not keyable anymore.

    • Initial penetration detection.
      The simulation now performs an initial penetration test before running the first frame of simulation. Vertices found to be penetrating collision geometry will have contacts created for them as if they had previously come into contact with that geometry. This prevents small initial penetrations from being ignored by the Continuous Collision Detection system. Keep in mind that initial penetration detection creates contacts by finding the closest point on the collision geometry to the penetrating vertex. This means that very deep initial penetrations or vertices penetrating very thin tissues could result in erroneous initial contacts.

    • Maximum contact length.
      A new Max Contact Length attribute in the zSolver node allows any penetration contact of more than the specified length to be removed from the simulation. Since contacts are now persistent, this tool allows users to remove potentially undesirable contacts from their simulation.

  • A new Approximate mode of Curvature stiffness feature is added for better performance. The existing one is rename to Original mode. Check the Curvature Stiffness Mode attribute in the zTissue node for detailed information.

  • Contact Line Width attributes is added to zSolver node. The contacts are more noticable by adjusting the line width.

Bug Fixes

  • VFXACT-1928 Contacts do not render when a tissue is selected in a tissue-bone collision..

ziva-vfx-utils (v2.3.0) updates

For the complete list of the ziva-vfx-utils release notes, please visit ziva-vfx-utils Release Notes.

Version 2.2

Functionality

  • A GPU solver that leverages Nvidia’s CUDA computational power is now available.
    An Nvidia graphics card that is equivalent or newer than Turing Architecture is required. The GPU solver has better performance when the asset is large and complex. For light assets, the GPU solver will be less performant. The GPU solver can be selected on the zSolver node.
    The Linux installation process has changed. Please refer to Linux Quick Installation for more information. If the new instructions are not followed, error message listed in the topic Ziva VFX version 2.2 plugin can’t load under Linux will show and cause the plugin fail to load.

  • Attachment Stretch Visualization is now available.
    Attachments can now be dynamically colored in the Maya viewport to show how much they are being stretched. This stretch is directly proportional to the force the attachment will apply, so the distribution of forces can be visualized with a user-defined color scheme. This allows for quick identification of areas in the simulation where attachments are under large stress. The stretch range can be controlled via the maxVisualStretch attribute on the zSolver node.

Bug Fixes

  • VFXACT-1731 Maya crash when setting zTissue material type to Anisotropic

  • VFXACT-705 zCache save command with start frame greater than end frame causes Ziva VFX to hang

ziva-vfx-utils (v2.2.0) updates

  • Robust mirror operation is added

  • The Maya deformer builder (which supports Blendshape, DeltaMush, Wrap and SKinCluster) is revived.

For the complete list of the ziva-vfx-utils release notes, please visit ziva-vfx-utils Release Notes.

Version 2.1

Functionality

  • All integrator types are now supported by the Iterative Solver.

  • Continuous Collision Detection (CCD) method is now applied to the collision detection phase.
    The simulation quality is improved through the use of CCD (which interpolates the past and current position of vertices to find contact points) instead of Discrete Collision Detection (which just detects vertex penetration and finds contacts through a closest-point projection to the surface). Each simulation timestep is more expensive due to this change, but the simulation quality becomes better. With the improved simulation quality, the number of substeps needed can be drastically reduced while retaining the same visual accuracy. This reduction in the number of substeps can often lead to faster simulation times, and is available to the user to tweak.

  • Curvature stiffness attribute is added to zMaterial node.
    This attribute makes the tissue more resistant to bending (in overall shape or in surface deformations).

  • Attachment Damping (check Damping under Physical Effects) is added, which appears as an adjustable attachment-wise parameter called damping under zAttachment. When attachment damping is enabled, oscillatory/unstable behavior in attachments is reduced.
    Note: Attachment damping does not support Maya Cached Playback when resuming simulation from anywhere but the start frame. However, this problem is not present in Ziva Simulation Cache(zCache).

  • Maya 2023 is now supported.

  • -logFileQuery and -logFile flags are added to the ziva commands.
    The former flag returns the current log file path and the latter flag allows user to set a custom log file.

  • zBone/zTissue/zCloth enable attribute is now connectable.

Bug Fixes

  • VFXACT-745 Changing zTet.maxResolution attribute value causes zSolver report error.

  • VFXACT-1322 Clearing cache for 2 zSolvers at once throws error.

  • VFXACT-1350 Changing a tissue fiber to sub-tissue does not draw the fiber.

  • VFXACT-1445 Info query about an invalid tet mesh crashes Maya.

ziva-vfx-utils (v2.1.0) updates

  • The refresh speed of Scene Panel 2 is improved.

  • The zBuilder file format size is decreased by compressing the file.

For the complete list of the ziva-vfx-utils release notes, please visit ziva-vfx-utils Release Notes.

Version 2.0

NOTE: The version 2.0 setup is not backward compatible. Open new setup in old Ziva VFX plugin causes Maya crash.

Functionality

  • Added Iterative Solver as an alternative to the default direct solver under Solver list in the channel box. This is currently an experimental feature and supports the Backward Euler integrator only.

  • Overhaul the stability and performance of quasistatic Integrators.

  • Added solverToleranceFactor attribute to zSolver node.

  • Supported Maya Cached Playback feature in Maya 2022.

  • Added Cache Tet Mesh attribute to zTet node. It is turned off by default. The Maya file size is thus decreased for some setups.

  • Add Runup weight to zSolver node.

  • Added a single bundle for all Maya modules on Linux platform.

  • Last created solver becomes the default solver.

  • Added SHORT log output level which outputs solver statistics information. Refer to the ziva command page for details.

  • Retired hard contact related attributes.

Bug Fixes

  • VFXACT-690 Sub-tissue draws tissue wireframe mesh as its parent.

  • VFXACT-876 Removed deprecated flag -def from ziva commands.

  • VFXACT-939 Grey out font when zCache is disabled.

ziva-vfx-utils (v2.0.0) updates

  • Add Scene Panel 2

For the complete list of the ziva-vfx-utils release notes, please visit ziva-vfx-utils Release Notes.

Version 1.922

Functionality

  • Add support for Maya 2022

  • Discontinue support for Maya 2018 and older

  • Add zRivetToBone removal to the ‘Ziva Menu’. See Menus for details.

  • Muscle excitation color is now customizable via the “Muscle Fiber Color Ramp” in zSolver node.

Bug Fixes

  • The flag for setting the default solver in ziva and zQuery commands are renamed from -def to -ds. Previously, this flag could not be used from python scripts, like cmds.ziva(def=”foo”), because it conflicts with the Python def keyword. The old -def flag is now deprecated and will be removed in the next release. MEL scripts using -def must be edited to use -ds instead.

  • The envelope and weights attributes of new base zMaterial node are now locked. Previously, after the default base zMaterial nodes is replaced by new node, the envelope and weights attributes of the new base zMaterial node become editable. This is misleading because base material’s envelope and weights are always 1.0.

  • Attributes of zTet that have no effect if animated are no longer keyable: tetSize, surfaceRefinement,and refinementPropagation.

  • Subtissues would continue to draw in the viewport after being removed.

Version 1.9

Functionality

  • Add Maya 2020 support.
    Disable Maya Cached Playback using Safe Mode when zSolver is enabled in the scene. Note that ZivaVFX still does not support Cached Playback yet.

  • Support Maya File Referencing.

  • Add zRivetToBone support to zQuery command. See zQuery for details.

  • Scene Panel display disabled nodes with dark font color.

  • Improve simulation stability when zFiber strength is large relative to Young’s modulus on the same tissue’s zMaterial.

  • Improve simulation stability when zMaterial surfaceTension is large relative to Young’s modulus or tensileStiffness.

Bug Fixes

  • Child processes of Maya would keep the license checked out even after Maya closed. Now we explicitly check in the license when Maya exits, instead of depending on the license server to detect program exit. This bug presented on Linux, but not Windows.

  • zLineOfAction nodes were using the object-space shape of its input curves, instead of world-space.

  • zLineOfAction nodes neglected zSolver transform in length computation.
    The bug fix required an additional connection in the DAG, so a Python script is provided to fix existing ZivaVFX scenes. zLineOfAction nodes in scenes made with ZivaVFX v1.8 and older will report warnings and suggest running the script.
    See zLineOfAction for details.

  • zRestShape target mesh weight attribute in the Maya Channel Box was hidden after saving then loading, if its value is 0.

  • zTissue were not able to be created on duplicated name meshes

  • Duplicated name meshes were not able to be added as zRestShape target mesh. Now they are added with auto renaming alias attribute name, same as Maya Blend Shape.

ziva-vfx-utils (v1.0.11) updates

  • Add Ziva Shelf.

  • Add support for renaming Scene Panel nodes through double-click.

  • Add right-click context menu for zSolver node in Scene Panel.

  • Add zBuilder support for Maya File Referencing.

  • Improve zBuilder setup retrieval operation performance.

  • Fix some Scene Panel and zBuilder bugs.

For the complete list of the ziva-vfx-utils release notes, please visit ziva-vfx-utils Release Notes.

Version 1.8

Functionality

  • Add ‘Register License’ function to the ‘Ziva Menu’ for quicker and easier Ziva VFX license installation. This is the recommended way to install a license for the product. Learn how it works here: License Registration.

  • Attachments with all-zero source weights will no longer affect on the simulation. Previously, it would prompt an error and stop the simulation from running.

  • Creature modification can now take place before the simulation start frame. Modifications still have no effect until returning to the start frame, so this change is mostly a workflow convenience. This used to trigger an error in the command doing the modification.

  • Program now searches the Ziva VFX Maya Module path for a license file, in addition to all previous search locations (the working directory, the plugin path, and the zivadyn_LICENSE environment variable) for easier license setup.

  • Add Performance Tuning section to the docs, explaining how to tune/optimize a setup to run faster.

  • Overhaul the backend logging system. This is mostly to simplify future development. There should be no visible changes, except possibly bugs in text formatting. As always, please report any such bugs.

Bug Fixes

  • Broken rendering bug on attachments with weights painted to values greater than one.

  • Removing a subtissue would remove the connection in Maya, but not always remove it from the simulation.

ziva-vfx-utils (v1.0.10) updates

  • Add copy/paste/invert context menu to Scene Panel.

  • Add utils.merge_solvers() function.

  • Improve retrieve operation performance when dealing with meshes.

  • Fix some bugs on building and retrieving operations.

For the complete list of the ziva-vfx-utils release notes, please visit ziva-vfx-utils Release Notes.

Version 1.7

Functionality

  • zRBFWarp can now warp NURBS surfaces and curves, in addition to meshes.

  • Add zRestShape node and zRestShape command. These provide non-physical ways to manipulate the shape of a tissue for artistic intent.

  • The Tutorials section of the docs has been totally rewritten.

Node Changes

Node Change

Purpose

Add zRestShape

Manipulate the shape of a Tissue.

Command Changes

Command

Purpose

Add zRestShape

Tools to create, edit, and use the zRestShape node.

Bug Fixes

  • Fixed sliding attachments sometimes attaching to the wrong spot. This would happen randomly if the sliding attachment lands exactly on an edge or vertex of the target mesh. This could result in noisy artifacts appearing in simulation results, which should be fixed now.

  • Fixed a bug where providing both the shape node and transform node of a mesh as arguments to zBoneWarp causes errors in the output.

  • Same as above for locator to zHarmonicWarp.

  • Fixed a bug that sometimes causes a crash at the end of the zCache time window.

  • Fixed a bug that sometimes causes incorrect dynamics with TR-BDF2 and BDF2 at the end of the zCache time window.

  • Fixed a bug in caching sliding attachments.

  • Fixed a TR-BDF2 and BDF2 contact handling bug.

Version 1.619

Functionality

  • Add Maya 2019 support. Please note that Ziva simulations are not compatible with the new cached playback feature in Maya 2019, and cached playback will automatically be turned off if a Ziva Solver is enabled in a scene.

  • General performance improvement of 0-20%, depending on the setup.

  • Add a custom locator type for visualizing rivets in the viewport. The zRivetToBone command creates these nodes along with the rivet, so the rivets will be visible. Existing scenes with zRivetToBone nodes will not automatically have this visualization. Delete and re-create the rivet nodes to add the visualization.

Attribute Changes

Node

Attribute Change

Purpose

zRivetToBone

Add segments

For visualization.

Bug Fixes

  • Changing the input mesh topology after creating the warp (zRBFWarp, zHarmonicWarp or zBoneWarp) sometimes (rarely) causes a crash.

Version 1.6

Functionality

  • Add new Ziva Anatomy Transfer (ZAT) deformers for transferring creature geometry from a source creature onto a new creature.

  • Add Ziva Transfer menu for faster access to ZAT features.

  • Add Python scripts that wrap common zBuilder functionality to transfer Ziva rigs from (parts of a) source creature onto a new creature.

  • Add a new zRivetToBone deformer and command. Use this to drive zLineOfAction curves. Some built-in Maya techniques for doing this create cycles in the dependency graph, which can make simulation results incorrect. This node and its command should not introduce cycles. Furthermore, having this node as a standardized approach for driving zLineOfAction curves simplifies scripting and improves script portability.

  • Add new options to “Ziva” menu for erasing all Ziva rigs in a selected Ziva solver, or from the entire Maya scene.

  • Improve simulation robustness (better low-level deformable object numerics).

  • Improve performance in general, about 15-20% on typical anatomical setups.

Node Changes

Node Change

Purpose

Add zHarmonicWarp

Harmonic warp deformer for internal anatomy (tissues, fascias, Maya joints, locators).

Add zBoneWarp

Bone warp deformer. Keeps the bones straight based on a painted landmark map.

Add zRBFWarp

Radial Basis Function (RBF) warp deformer. Useful, e.g., for geometry outside of the creature (eyelashes, hair, etc.).

Add zRivetToBone

Deformer for attaching curve CVs to bones meshes.

Command Changes

Command

Purpose

Add zHarmonicWarp

Creates and binds a zHarmonicWarp deformer.

Add zBoneWarp

Creates and binds a zBoneWarp deformer.

Add zRBFWarp

Creates and binds a zRBFWarp deformer.

Add zRivetToBone

Creates and binds a zRivetToBone deformer.

Bug Fixes

  • Fix crash when closing scenes with subtissues. This crash happens unpredictably, about 1 in 15 times, only in scenes using subtissues and only when there’s more than one subtissue per parent.

  • Fix sliding attachments sometimes getting stuck on triangle edges and not sliding smoothly.

Version 1.5

Functionality

  • Support multiple integration schemes: implicit backward Euler, BDF2, TR-BDF2, quasi-static. Add zSolver.integrator to select the integrator.

  • Merge the zFindIntersections and zFindSelfIntersect commands into zFindIntersections.

  • Improved verbosity-selection interface. “ziva -vb” has been revised to accept verbosity levels from 0 (only show errors) to 3 (show operation and progress).

  • Deprecated hard attachments and hard contact. They continue to work, but are hidden from the Maya UI, and may be removed in future versions. New designs should use soft attachments and contact.

Attribute Changes

Node

Attribute Change

Purpose

zSolver

Remove quasiStatic

Quasi-static solver is now specified using the attribute zSolver.integrator.

zAttachment

Deprecate (hide) isHard

Seldom used feature and there is an excellent alternative (isHard=off).

zTissue

Deprecate (hide) hardContact

Seldom used feature and there is an excellent alternative (hardContact=off).

zCloth

Deprecate (hide) hardContact

Seldom used feature and there is an excellent alternative (hardContact=off).

Note

If you open a file saved with version v1.4 (or earlier) that contains a zSolver whose quasiStatic attribute has been set to true, you will see the following Maya error message:

// Error: line 0: The zSolver 'zSolver1Shape' has no 'qua' attribute.
// Error: line 0: Node "zSolver1Shape" has no attribute "qua".

This error occurs because the zSolver.quasiStatic attribute has been deleted in v1.5. The solver will not use the quasi-static mode, unless you specify it using the zSolver.integrator attribute. Even if you do this, the error message will persist. You can get rid of the error message by saving the scene using the v1.5 plugin. When the scene is re-opened, the error message will no longer appear.

Command Changes

Command

Purpose

Add ziva -vbq

Query the current verbosity level.

Add zFindIntersections -xo

Excludes intersections between different meshes from the query – thus finding only self intersections.

Remove zFindSelfIntersection

Replaced by zFindIntersections -xo.

Bug Fixes

  • Calling “ziva -vb” with no arguments results in undefined behavior. Now, “ziva -vb” always requires an argument. There is now a separate command “ziva -vbq” to query the current verbosity level.

Version 1.4 hotfix 1

Bug Fixes

  • Fixed a bug where Maya Fields did not evaluate correctly if the solver transform changed after the first frame.

  • When zSolver.maxNewtonIterations is greater than 1, the dynamics were often under-damped. The dynamics are correctly damped now, which will result in some simulations appearing more damped than before. To recover similar results to previous versions, decrease zSolver.stiffnessDamping and zSolver.massDamping – possibly to the new default values: 0.001 and 0.0 respectively. This was fixed in 1.4’s initial release, but missed in the release notes.

  • Fixed a bug where a “Solver has encountered instabilities” message persisted even after rewinding to the first frame.

  • Fixed a bug where adding a new body to the scene could affect the simulation results of existing, unconnected bodies.

  • Fixed a bug where zBuilder would sometimes not record the field and zFieldAdaptor nodes.

  • Fixed a bug where zBuilder would sometimes re-order zMaterial nodes.

Version 1.4

Functionality

  • Add Rest Scale to make tissues shrink (or grow) equally in all directions (previously already available for cloth).

  • Add Muscle Growth to grow or shrink tissues perpendicularly to muscle fibers, making characters more muscular or leaner.

  • Add Pressure to apply an external pressure force to tissues (previously already available for cloth).

  • Add Surface Tension to apply a surface tension force to tissues and cloth.

  • Maya Fields can now be used to add external forces to Ziva bodies.

  • Decreased the default value of zSolver.stiffnessDamping. This makes simulations more lively by default, but sometimes also less stable.

  • In Ziva VFX v1.1 to v1.3, the attributes zMaterial.pressure and zMaterial.restScale applied only to cloth bodies, but now they also apply to tissue bodies. In existing scenes made with v1.1 to v1.3, these attributes already exist on tissue material nodes, but will not show up in the channel box. Correct this with the following MEL script:

select `ls -type zMaterial`
setAttr .restScale -channelBox true
setAttr .pressure -channelBox true

Node Changes

Node Change

Purpose

Add zFieldAdaptor

Adaptor node for connecting Maya fields to Tissue and Cloth objects (to add external forces)

Attribute Changes

Node

Attribute Change

Purpose

zTissue

Add iFields

To allow connection to Maya fields (via zFieldAdaptor)

zTissue

Add pressureEnvelope

Envelope for pressure force

zTissue

Add restScaleEnvelope

Envelope for rest scale

zTissue

Add surfaceTensionEnvelope

Envelope for surface tension

zCloth

Add iFields

To allow connection to Maya fields (via zFieldAdaptor)

zCloth

Add pressureEnvelope

Envelope for pressure force (e.g., for stable runups)

zCloth

Add restScaleEnvelope

Envelope for rest scale (e.g., for stable runups)

zCloth

Add surfaceTensionEnvelope

Envelope for surface tension (e.g., for stable runups)

zMaterial

Add surfaceTension

To set the amount of surface tension

zFiber

Add enableMuscleGrowth

Turn muscle growth on/off

zFiber

Add muscleGrowthScale

Amount of muscle growth

zFiber

Add useLoaForMuscleGrowth

Drive muscle growth via line of action

Command Changes

Command

Purpose

Add ziva -cf

To connect an existing Maya field to a Tissue/Cloth object (for external forces)

Bug Fixes

  • Display an error when a zGeo.iNeutralMesh has a mesh with zero vertices or faces. This happens when a missing Alembic is connected directly to this plug.

Version 1.3

Functionality

  • Improved multi-solver workflows:

    • Ability to set the default solver: Select

    • Easier solver selection: Select

  • All commands can now accept scene object inputs by name. If no scene objects are given by name, the currently selected objects are used, as before.

    • Ex: ziva -t pSphere1; converts pSphere1 into a tissue.

    • Ex: zFindSelfIntersections myMesh1; finds self-intersections in myMesh1.

    • Ex: zCache -l "myCache.zCache" zSolver1; loads a simulation cache into zSolver1.

    • Ex: zSelectVerticesByProximity -r 0.5 myMesh1 myMesh2; finds vertices on myMesh1 that are within 0.5 units of myMesh2.

  • Fibers and attachments draw grey when their envelope attributes are set to zero, to show that they are effectively disabled.

  • Attachment rendering fades to transparent as its weightmap fades to black.

  • zSelectVerticesByProximity has been renamed to zFindVerticesByProximity.

  • zFindIntersections and zFindSelfIntersections can both work with any number of meshes, instead of just 2 or 1 respectively.

  • zFindIntersections can optionally also find self-intersections.

  • The zFindIntersections, zFindSelfIntersections, and zFindVerticesByProximity MEL commands now return selection strings instead of changing the current selection.

    • The behavior of the corresponding Ziva Tools menu items has not changed, and will still set the current selection.

    • To achieve the old behavior when writing MEL, you can call, for example: select `zFindIntersections`;.

  • Reduce default collision stiffness on zTissue and zCloth nodes to reduce jitter and improve stability with default settings.

  • The zCopyMesh command has been deprecated, and will be removed in a future release.

Bug Fixes

  • Attribute zFiber.envelope also affects excitation due to zLineOfAction. Consequently, if zFiber.envelope is zero, that fiber will not contract.

  • Tissue tetrahedralization will no longer happen while zSolver is disabled. Pulling on zTet.oMesh while the solver is disabled will no longer work.

  • Make initial fiber endpoints work on meshes with multiple connected components. Previously, the fiber would be created and instantly cause an error in the scene.

  • Fixed bug that sometimes causes fibers to draw in gray when multiple fibers are selected.

  • Fixed bug that sometimes left the effect of a zFiber node even after the node was deleted.

  • Minor fixes to the undo/redo behavior of ziva, zPaintAttachmentsByProximity, and zMeshCheck MEL commands.

Version 1.2

Functionality

  • Add Maya 2018 support.

  • Improve performance on scenes with cloth – twice as fast on some simple benchmarks.

  • Improve performance in general.

  • Modify mesh quality requirements for “ziva -tissue” and “ziva -cloth” commands. They are more permissive about triangle quality than before, but more picky about manifoldness. The goal is to work with more meshes out-of-the-box while still rejecting meshes that are sure to cause problems.

  • Add zMeshCheck command, which can be run without a license.

Command Changes

Command

Purpose

Add zMeshCheck

Check meshes for potential problems.

Version 1.1

Functionality

  • Add “rest-scale” to make cloth shrink like shrinkwrap (or grow).

  • Add “pressure” to apply an external pressure force to cloth. Pressure and rest-scale are useful for wrapping fascia around muscles.

  • Significant performance improvements to tetrahedralization. Previously, we have advised setting zTet.tetSize to a large value and using surface refinement and refinement propagation to get high resolution where you need it. That workaround is no longer necessary and will be slower than setting tet-size directly to what you want. Surface refinement should only be used if you actually want spatially-varying refinement.

  • Lazy license checkout. The plugin only acquires a license once a node or command is run, not when the plugin is loaded.

  • Mesh analysis checks for negative-volume (inverted normals), which will usually look fine, but completely breaks material attributes, particularly on subtissues.

  • Significant performance improvements to zFindIntersections command (menu item “Ziva Tools” → “Find Intersections”).

Bug Fixes

  • The plugin won’t load in “maya -prompt” mode.

  • Random crashes due to invalid internal constraints on cloth.

  • Warnings about MEL variable-shadowing happen on plugin load.

  • Running mayapy is using an authoring license instead of a batch license.

  • A sliding attachment with a subtissue target crashes maya.

  • Unstable cloth when rest shape was folded over itself.

  • Save and Load zCache dialogs no longer filter for file type when set to “All Files”

Attribute Changes

Node

Attribute Change

Purpose

zMaterial

Add restScale and pressure

To support fascia simulation and more general cloth sims. In actual fact, restScale was present in 1.0, but it was undocumented and unsupported.

zCloth

Add restScaleEnvelope and pressureEnvelope

To support stable runup with restScale and pressure effects.

Version 1.0 hotfix 2

Bug Fixes

  • Fix crashes or incorrect behaviour when tissue tets are larger than 1 meter across.

  • Fix incorrect spurious attachment of cloth vertices to other nearby parts of the same cloth.

Version 1.0

Functionality

  • Add zLineOfAction to enable semi-automatic muscle fiber excitation.

  • SubTissues - for volumetric material authoring.

  • Add zPolyCombine - a fast poly combine node. We use this internally because the Maya polyCombine is much too slow.

  • Empty Cavities mode on zTet mesh allows users to create internal cavities in tet mesh. For example, when meshing a fat layer over the entire body, this mode will not fill the rest of the body cavity with material.

  • Increased accuracy of tissue mass and stiffness for tets partially outside the tissue surface. Depending on resolution, this can reduce object mass and jiggle relative to previous versions.

  • Cloth - our cloth material model is no longer experimental. It is significantly more stable than past releases. It’s not a general cloth solution yet, but it is good for simulating fascia and skin.

  • Muscle Excitation is now visualized with a fiber color change.

  • Automatic fiber endpoint selection when adding a fiber node. Manual painting is still recommended, but it will paint a default automatically.

  • Logging improvements. All logging has controllable verbosity. All logging goes to the script editor and a log file.

  • Lots of performance improvements, affecting:

    • Simulation caching

    • Collision detection and response

    • Attachment updates

    • Attachment creation

    • Material interpolation

    • zEmbedder

Bug Fixes

  • Fix memory leak affecting cloth, volume conservation, inertial damping, and hard attachments/contacts.

  • Fix out-of-bounds memory access during tetrahedralization.

  • Ziva Menus no longer attempting to load in Batch mode.

  • zBones no longer draw when disabled.

  • Fix random crash on Linux.

Node Changes

Node Change

Purpose

Add zLineOfAction

Automatic muscle fiber excitation

Add zPolyCombine

Fast alternative to Maya’s polyCombine

Attribute Changes

Node

Attribute Change

Purpose

zTissue

Add iParentTissue and oChildTissue

To support subtissues.

zTissue

Add serializedCache

To support fast re-opening of scenes. Internal use only.

zTet

Change fillInterior from bool to enum.

To support a new option ‘Empty Cavities’. See Tetrahedral Meshes

zTet

Remove tetsUpperBound. Add maxResolution.

Same purpose, but the new parameter is easier to explain and understand.

zEmbedder

Remove iSolverParams

No longer needed.

zCloth

Remove collisionVolume

This never worked anyway.

zIsoMesh

Add inputGeometry

To allow a faster and more accurate algorithm on watertight input meshes.

Command Changes

Command

Purpose

Add ziva -addSubtissue

To support subtissues

Add ziva -removeSubtissue

To support subtissues

Add ziva -lineOfAction

To enable automatic muscle excitation.

Add zLineOfActionUtil

To help make rigs for automatic muscle excitation.

Add zPolyCombine

To create the new zPolyCombine node.