All these about Maya will merge into graphic:python:maya

Intro to My Maya Tools

Get it here: installTool_template.mel

usage

  • put this file next to your python script file, your icon with same name under “icons” folder
  • change 2nd line string “YourPythonScriptName” into your python file name
  • LNTextEdit.py (Enhanced): 3rd party Line number text edit with my custom enhancement
    • v3.0 feature:
      • support drag and drop file or file url as url text
      • support setReadOnly and setReadOnlyStyle function
      • support text() function
      • better and clear code for PyQt4 and PySide

Rigging - Weighting Tool

Maya Skin Weight API Tool: (WIP - 2018-08-24)

  1. weightAPI.py - Skin weight API python tool: the new Faster weight operation tool, support JMP and VMP (joint based weight map, vertex based weight map, same as in column and row in Component editor)
  2. weightUI.py - better version of weight operation tool UI, with more feature integrations, based on the universal_tool_template.py for fast update and language support
  3. Research: Maya Weight API - my complete research and study on Maya Weight Operation and Weight Structure in MEL, Python, C++ API

Tool Package:

  1. shi_2nd_rig_weightTool.mel: (v2.1, mel) GUI and Core mel functions for weight tools
    • quick bone binding, unbinding, add bone, remove bone action
    • quick weight assign
    • quick weight brush setting
    • bone-to-bone weight shift
    • quick selection holder and selection operation
    • object level weight transfer
    • proc shi_bone_check(): (v2.0) GUI tool for quick Weight Check, Paint, Shift
      • Features:
        • 5 methods of filtering bone list: gmatch, regex, vtx query bone, from selection, add selection
        • check bone vtx affection
        • shift bone-to-bone weight
  2. shiPy_vmap.py, shiPy_vmapUI.py: (v2.0, py) GUI and Core functions for vertex-based-weight-map operation
    • Features:
      • support regional vtx selection vmap(vertext weight map) save/export/transfer
      • support bone re-targeting
      • support operation on or between different rigs or models or bone structures, only requirement is vertex index match for the region area of your vmap; note on work-around solution:
        1. you can use you old model as weight catcher, and then use maya standard world-space based weight transfer to your new model
        2. select the regional vtx of new model, save the regional weight
        3. re-open your new model with original weight before step2, apply back the new regional saved vmap weight
  3. shiPy_weightGenUI.py, shiPy_weightTool.py: (v1.0, py) GUI and Core functions for automatic weight map generation
    • Features:
      • soft selection based weight map generation, use soft selection map as bone weight map

Procedure and Modular Rig Tool

Modelling - Model Generation Tools

  • ScatterUI.py: a GUI python Maya tool to generate model instances based on particle position, with optional random rotation and scale.

Utility tool

  • TxPathEdit.py: a maya python GUI tool for you to edit texture path
  • FileOpen.py: a Maya and Desktop python GUI tool for quick Advanced File Browser and Operation

Developer tool

    • a maya mel GUI tool for you to convert multiple mel cmds into one line for button creation or simple one line code.
    • a quick Maya Python Path Editor for quick tool testing, copy-paste python tool path or drag and drop to update your Python path on the fly, without have to code like simple path append too many times.

Plugin tools


WIP - my Working in Progress

Nightly Developer Builds: (minor updates I made and WIP features for my above Package Tool)

Important Note: nightly builds are updates I made as I work along with tools, sometimes, it can get several new features in 1 day and not tested enough in multiple situations for non-developers to use; use at your own risk or wait till it move into stable release as package tool

    • (v1.0.1) features
      1. integrated mod version of vmap weight operation into shiPy_weightTool.py
      2. add weight remove function, unlike Maya remove weight method, which it remove weight and random add weights into other bone or extra bones, this new weight remove function will maintain the ratio of current vtx weight distribution when remove weight from one bone; extremely useful when clean up random weight all around the place.

My Own System Tool: (Not working for other system)

    • v0.1
      • add reApplyWeight tool. It will quickly remove skinCluster, and re-add skinCluster back with same weight, fix some random geo fly over issue for myself

My Lab - the Code before the Tool

My Reference - how other people code

Maya – Mesh Reorder / Transfer vertex position Tool (Mesh PickWalker)