Vetala Beta 0.2.01

Trello completed updates in green here: https://trello.com/b/rmfaZjMd

Additions

  • Jaw rig now has the option to follow world instead of just local.
  • Check UI now has a check for references.
  • Mirror selected only button
  • Mirror R to L button
  • Mirror Create button
  • Orient selected only button
  • Added notes section between Options and Templates. Right click show notes in the process view.
  • Slight improvement to drag and drop in the manifest.
  • deform.match_geo_blendshape now has the option to pick an index. Which allows for more than one geometry in the blendshape.
  • reduced the size of items in process list and other list.
  • floating code window improvements including versions in the code window, and it will no longer go in front of dialogues.
  • logs are now available after processing by right clicking on a process and picking show last log. If you want something to show up in the log use show() instead of print in the code edit.
  • api MeshFunction now has get_closest_normal
  • geo.plane_to_curves added to create curves on a polygon plane
  • geo.create_quill added to create quills from curves
  • geo.transfer_from_curve_to_curve can transfer curves on one curve to another curve. Good for feather work.
  • deform tab in the ui now has more options
  • controls tab now has an option to replace shape. Thanks Mark Neil for the inspiration!
  • space.delete_constraints added
  • util.vector_sub added
  • core.print_warning added
  • aim and up for joint orient changed from joints to locators
  • fixed show_channel_box for maya 2017/2018
  • handled error when missing source or target in deform.create_wrap
  • IkLegRig now has an option to set the ankle offset axis
  • when writing a file, if it errors it will wait a bit. This was needed for notes.
  • geo.nurb_surface_u_to_transforms added
  • IkScapulaRig now has the ability to hide the aim goal control.
  • rigs_util.TwistRibbon added
  • attr.get_attribute_name added
  • rigs now have the ability to connect the subVisibility up to an arbitrary attribute.
  • added file size to the data view.
  • added blendshape.recreate_targets()
  • curve.get_library_shape_names added
  • core.add_to_set command added, will create the named set if not present.
  • deform.blend_into_intermediate added
  • space.get_ik_from_joint added


Fixes

  • transfer_joint_to_joint was not properly using weights on specified joints. This is now fixed.
  • transfer_joints_to_new_joints Would not transfer to a list of joints that included the source joint. This is now fixed.
  • space.get_axis_vector fixed. This is useful for finding out where a transform is pointed.
  • small fix to mirror invert button. Should work a bit better now.
  • util.QuickSort fixed to return the follow array as well.
  • geo.get_closest_uv_on_mesh_at_curve fixed
  • rigs_util.fix_sub_controls now works when passing a name of a control.
  • Check ui, fix for empty groups now skips joints
  • StretchChain effectors now get their name incremented to avoid clashing.
  • Fixed blendshape.Blenshape.recreate_all
  • pyside is now found more reliably when switching between Maya 2016 and Maya 2017
  • breakpoint now works on code that is unchecked. It won't skip over them.
  • When in the code tab, sub process that a green will no longer auto build. It will only build what's in the code tab.


Removed

  • There is no longer the ability to click on a code tab and make it into its own window. It was causing Maya to crash. Set Option to open in new window in the preferences.

Vetala Beta 0.2.00

Whats new in the release:

  • Shogun Link Data added - need to create a shotgun api script to connect in the settings.
  • util_file.get_latest_file_at_path(path) added
  • Changed settings tab to a gear
  • Clicking on a script in the manifest will now focus on its tab or window if open.
  • Added setting to define what double clicking on a manifest item does. Open tab, open new window or open in external.

 

VETALA BETA 0.1.19

Added

  • anim.bake_to_animation added.
  • api.IteratePolygonFace added get_center, get_normal
  • geo.randomize_mesh_vertices added
  • space.randomize added to randomize transforms
  • process.get_sub_process_count added
  • process.get_sub_process_by_index added
  • core.get_current_camera added
  • added some vector math to util
  • some api functionality added.
  • added an active attr to orient attrs.
  • attr.remove_orient_attributes
  • added process.get_non_process_parts()
  • added ability to open scale channels on GroundRig
  • added vetala icon to hub
  • process.find_processes can return non process folders along with processes
  • added ability to convert folder to process
  • added new feather rig but needs a demo file to understand.
  • deform.skin_mesh_from_mesh now auto removes unused influences
  • mirror curve mirrors all curves in the scene that are named _L and have a corresponding _R
  • documentation looks a bit nicer and more up to date.

    Fixed
     
  • run script individually now respect auto focus setting in the settings.
  • fixed orient joint aim to put up and aim at the beginning of the children.
  • attr.unlock_attributes now sets k = True properly.
  • deform.matching_geo_blendshape now allows curves
  • geo.is_a_curve improved
  • version files fixed again. Tested and should be able to deal with deleting arbitrary version.
  • Cleaned up data names so they look a bit nicer.
  • more feedback when saving data
  • util_file.create_dir now can create a directory by just giving the full path to the desired directory

    Changes
     
  • changed pose data name to corrective. Everything should still work the same as before. This is just cosmetic.
  • changed animation data name to keyframes. Everything should still work the same as before. This is just cosmetic.
  • re-arranged some tabs.
  • ui cleanup

VETALA BETA 0.1.18

Additions

  • LockNodeState class added. This helps to lock and temporarily unlock all keyable attributes of a node to attr module.
  • Joint orientation attributes now have 2nd child up position. This can be used to have first child be aim, and second child be up axis.
  • Mirror Transforms will now unlock attributes before mirroring, and lock again after the mirror is done. This allows for more guided structure setups.
  • Added lock_translate_attributes and lock_rotate_attributes to attr module.
  • Added button Convert to Orient Joint beside Orient Joints button. If a joint is selected, this will convert the joint to a special auto orient configuration that uses 2 children to figure out the orientation.
  • Added get_hierarchy_path to space module. If you have joint_arm_L, joint_elbow_L, joint_wrist_L, it will find the path between joint_arm_L and joint_wrist_L without getting confused if joint_elbow_L branches. This can help find a limb if a skeleton is complex.
  • Added open_data() to process. Opening can be faster than importing. Open should probably be at the start of the code manifest.
  • Added get_bounding_box_size to space module. Good for adapting scripts to the size of a mesh. For example scale the controls when a mesh is larger/smaller. Being used to auto rig props with a single control that fits to the mesh.
  • is_cv_count_same function added to geo module
  • Shape Combo UI can now work with groups of meshes. If you set your base as a group with meshes under it, you can Add by selecting a different group with the same ( but duplicated ) meshes under it. Meshes must be in same order between base an group to be added.
  • Shape Combo UI, combos are now organized by hero selection.
  • Added Matrix class to the maya_lib.api module. Good for reading matrices and getting the translation, rotation.
  • Added Quaternion class to maya_lib.api module. Good for reading quaternions and getting the rotation in Euler.
  • Added leo cad ldr reader (very basic) to data module
  • Added read_lxfml_file reader (very basic) to data module. Needs to be export LXFML4 from Lego Digital Designer. Will return the id, position, rotation of parts listed in the file.
  • Added exists function to util_file for checking if a folder or file exists, instead of just is_file or is_dir

    Fixes
     
  • Fixed get_files_with_extension in util_file module. When setting full_path to True, it wouldn't return the full path.
  • Fixed versions not being deletable. Now you should be able to delete versions like version.1 verion.2 etc and the remaining versions should still show up in the ui. Let me know if not.
  • Fixed Scale Controls slider undo.
  • Fixed Fix Sub Controls button. It searches controls connect to subVisibility. Now it sorts the controls so they are always in the right order when scaling.
  • lock_attributes now works on double3 attributes like translate and rotate as well as translateX, translateY, etc.
  • MirrorControlKeyframes now lives in rigs_util module and has some more feedback when things are wrong.
  • Fixed issue with Animation data import in the ui.
  • Fixed minutes and seconds not printing properly when running processes.
  • Fixed set_attach_joints() on Sparse rigs. Sparse rigs would get created but wouldn't attach the controls to the joints.
  • Moved BoundingBox class to space module

    Removed
     
  • Removed file save block when saving code that hasn't changed.

Vetala Beta 0.1.17

  • No longer able to save code that hasn't changed since last save.
  • Warning given when maya ascii or binary data is imported,opened or reference but no data saved.
  • fixed rename issue when adding sub process to recently added top level process
  • added checks on processes. If check turned on the sub process will be run before the current process.
  • file save now forces maya to the right type.
  • selecting a character in the animation tab no longer changes selection. This helps keep the controls selected.
  • export alembic improvements
  • added get_uv_on_mesh_at_curve_base(mesh, curve) Good for adding follicles at a certain uv.
  • added get_closest_uv_on_mesh_at_curve(mesh, curve, samples=50) a bit slow, but finds where the curve intersects the mesh
  • correctives mirroring on a mesh without right side would sometimes error. More stable now.
  • when importing curve data, history on the control would sometimes block import. This now gets disconnected before importing and a warning is given.
  • added attr.is_connected and attr.is_locked
  • follicle curve improvements
  • improved version tab load speed.  Still can't delete arbitrary versions in the version folder, but will fix that for next release.
  • new checks ui that helps cleanup a scene
  • deform.skin_group_from_mesh now works with curves
  • export skin cluster will find parent if shape selected. This avoids exporting shape nodes.

VETALA BETA 0.1.15

Please login to forum.vetalarig.com to get the latest beta update.

  • Added a warning dialogue when scene does not save properly.
  • Fixed an issue with TransferWeights where it would not complete if all source joints were not weighted.
  • fixed overlapping dialogues. All dialogues should now open above any existing windows.
  • fixed negative scale on right side facial controls. 
  • new Batch Process, submits a process to run in batch. It will automically save as the latest build at the end.
  • fx module has the beginnings of some caching scripts
  • create_xform_group use_duplicate fixed. Before it would include children in the duplication.
  • Added driver group to scapula control.
  • Maya 2017 now uses invertShape C++ plugin instead of Chad Vernon python plugin. This makes importing pose data faster.
  • Snap curve to surface and project curve on surface.
  • Breakpoint in the code ui now possible by right click - set breakpoint
  • Pose import will now stop when pressing esc after files load. 
  • Delta mush weights now export/import using deformer weights data. 
  • !!! Please stop using the vtool.maya_lib.util module. It will be completely removed in a future release.

Picker UI was going to be in this release but I need a bit more time to get it working with namespaces and to test it out a bit more.

Vetala in Maya Batch

I played with Vetala in Maya Batch today.

I need to get a new release of Vetala out to fix a couple bugs but here's what it looks like.

In maya.standalone if Vetala is in the PYTHONPATH you can simply do:

from vtool.process_manager import process
process_inst = process.Process()
process_inst.set_directory('dir of your process')
process_inst.run()


#This will run the process. Then if you need to save the build out you can do.

process_inst.save_data('build', comment = 'saved from batch mode!')

Its so cool to see it running this way.  
For a body rig that used to take 36 seconds in Maya UI, it now takes 27 seconds in Maya Batch.   

VETALA BETA 0.1.14 RELEASED

  • Maya 2017 support
  • Version is now displayed in the window title.
  • Auto completion no longer begins to edit selected things in the Outliner when pressing enter on completion.
  • added pill control shape
  • Shape Combo no longer errors on inbetweens named like: target05
  • TransferWeights slightly faster
  • Correctives now have a combo option. 
    You need to set your character to the pose where two or more poses are at 1. 
    Create a combo pose.
    Then load those poses in the ui and sculpt your shape.
  • Corrective tool now has the following options on poses:
    Update Pose (Controls with Current Deformation)   -   Good for updating the deformation after tweaking the pose.
    Update Pose (Controls with Stored Deformation)    -    Good for mirroring to the right side, and fixing the right side pose.
    Update Pose (Controls Only)    -    Good if you need to change the position of the controls, and work on the deformation after.
  • geo.follicle_to_surface now has the option to constrain or not. If not tranform gets parented under follicle.
  • rigs.ScapualRig now has a fk rotate control option.
  • Various ik rigs have mirroring ability including tweakers, ik arms/legs, scapula.
  • space.create_follow now has the option to use a duplicate as the xform group.
  • rigs.SparseRig now has a compensate option so controls cancel themselves out when translating. This is good when riveting the control to a blendshape.
  • space.constrain_local now has the option to use a duplicate as the xform group.
  • MultiJointShape improvements.
  • minor issues fixed for Maya 2014
  • space scale fix for right side eye lid rig.
  • core.create_display_layer now has the option to set its initial state.
  • attr.create_blend_attribute now has the option to set an initial value.

Vetala in Maya 2017

Got Vetala working in Maya 2017 tonight.

Maya 2017 has changed in some significant ways.  
In order to support Qt 5 Maya now uses the PySide2 module and shiboken2.

In PySide all the Qt widgets were in PySide.QtGui.  In PySide2 many widgets are in PySide2.QtWidgets.
To deal with this I had to change my imports.
Before I was importing:
from PySide import QtGui

Now I import like this:
from PySide.QtGui import *

and if I'm in maya 2017
from PySide2.QtGui import *
from PySide2.QtWidgets import *


This way I don't have to write an if statement for every widget that used to be in QtGui but now is in QtWidgets.

shiboken2 works like shiboken.
In versions prior to 2017:
from shiboken import wrapInstance

In Maya 2017:
from shiboken2 import wrapInstance

I was thrown off at first because Autodesk didn't update the documentation.
But this page should make sense if you make the appropriate substitutions.  PySide2 instead of PySide, and shiboken2 instead of shiboken. 
PyQt and PySide Widget Best Practices
 

Vetala Beta 0.1.13 Released

  • Shape Combo tool is now more production tested. Many bugs fixed, especially with incremental combos.
  • New setting to turn off auto focus when opening a scene.
  • Added geo.snap_to_mesh. This will snap a transform to the closest face on a mesh
  • Fixed the corner controls on the rigs.StickyFadeRig
  • Auto indent added to code editing.
  • deform.CreateWrap will wrap to nurbs surfaces using maya wrap.
  • Fixed some issues with FkScaleRig and Maya 2014
  • deform.MultiJointShape now has a couple more options and improvements to get it to work better with the shape combo tool.
  • deform.SplitMeshShape has some minor tweaks and improvements to get it to work better with the shape combo tool.

Vetala Beta 0.1.12 Released

Updates to Vetala are available on the beta forum. 

  • Many improvements to options ui.
  • Added option in the settings tab to remove auto start new scene when hitting Process. This may need to get turned on to get old behavior!
  • Added curve cube_point
  • Syntax highlighting improved.
  • Auto complete will now list functions of a class.
  • Auto complete will now list process functions and maya.cmds functions.
  • Copy Special has been renamed Copy Merge. UI has been broken out into a floating window with some nice new features.
  • Fixes to shapeCombo
  • Fixed plugin unload issue in Maya 2016
  • Many bug fix improvements to Corrective tool.
  • Brought back pose mirroring. If pose didn't mirror control correctly, then right-click update pose after setting the proper pose. Then mirror again.
  • Added quick sort to the vtool.util module.
  • New color export/import data.
  • Blendshape weight export/import will now export nurbs curves and nurbs surfaces as well as blendshape base weights.
  • Fixed some issues with the code tabs and floating windows. 

Vetala on Linux

I tested Vetala on Linux tonight. Various studios have been asking for it to run on Linux.
From what I can tell everything seems to be working.  
For now studios and individuals who want Vetala on Linux should contact Cryptid Fx at louis@cryptidfx.com

VETALA BETA 0.1.09 Released

This update is available in the store and on the forum (for those who have purchased Vetala). 

Improvements in this release:

  • Added new blend_weights data. This will export blendshape weights on all targets for every mesh in the target. For targets that have multiple meshes.
  • Shape Combo channels are now open to overdrive.
  • Added new template tab. This makes it easier/more organized to pass around rigs.
  • Speed improvements to transfer_weights and import_skin_cluster data.
  • Pressing esc key during Vetala run will now stop sooner.
  • Cleaned up script editor feedback when Vetala runs.
  • Added set_sub_visibility on some classes.
  • Fixed some code tab bugs
  • Added control shape "back arc" for should clavicle controls
  • Added control shape "circle_corner" for head control.
  • Fixed curve import/export when the control had geo has a shape.
  • Fixed curve import/export when a control has hidden intermediate objects.
  • Tried to remove file access as much as possible to speed up Vetala on slow networks.
  • Added new rigs.SpineRig
  • Added Merge functionality to copy one process onto another. This versions up any matching data or code to the latest from the source.
  • Many of the rigs now have set_control_size and set_sub_control_size working better.
  • Fixed Correctives mirror.
  • Added Revert Vertex in Correctives to revert selected vertices to remove corrective tweaks.
  • Fixes to Correctives
  • Fixes to Auto Weight 2D class, being used for some facial.

VETALA BETA 0.1.08 IS OUT!

This release
 

  • Code tab had an issue saving that is now fixed.
  • Fixed many issues with shape combo, including some combos not working together or updating. 
  • Inbetweens and combo inbetweens are working better.
  • Added preserve combo to shape combo system.
  • Fixed copy process disregarding the manifest. However if you copy special it still disregards the manifest. This will be fixed in the next release.
  • Added new feature Process Options. Access by right clicking on a process and selecting show options.
  • Lots of fixes to code tabs. They are more reliable now.
  • control cvs will export now even if there is a non unique name.
  • Improved the speed of process loading on the network. Still slow but better.
  • Fk Curve Rig will no longer move the joints on build if set_buffer(True). This should be used sparingly. If you are doing many feathers use FkRig if you can.
  • AutoWeight2D will now push the first joint out if it overlaps. This fixes a bug where the weighting would go all to the first joint.
  • Fixed an issue with copying animation data, where the folder would copy but not the data.
  • If a process is deleted the code tab now updates.

 

Vetala Beta 0.1.07 Is out.

Notes

  • The shape combo ui is now up in "alpha" stage. It is usable, but expect some bugs and missing features.
  • Fixed a bug where maya would crash when running the Process button.
  • Fixed a bug where the process name wouldn't update when switching projects
  • Fixed a bug where the file wouldn't get marked as saved after saving.
  • Fixed a bug where the directory wasn't being updated in the save build widget when renaming a process.
  • Improved skin cluster import to deal with joints of the same name. If two joints named the same it will take the first joint. It will also give a warning.
  • Mesh smooth now gets turned off when opening files.
  • Fixed an issue when removing a corrective, the corrective list sometimes didn't update properly.

Vetala Beta 0.1.5 is out.

New Features

  • Code Hierarchies. You can now parent one script under another in the manifest. 
  • Some Code Tab and manifest functionality improvements.
  • Vetala now gives scripts permissions over files that exist in dropbox or google drive.


Starting on this version the vtool folder has a version.txt file, so you can check which version you have installed.

You can purchase the beta at the store.
If you already paid for Vetala you can get the update on the forum