Soft Cluster EX

Soft Cluster EX UI Preview

Soft Cluster EX UI Preview

Soft Cluster EX Demo from xracz on Vimeo.

工具名: Soft Cluster EX
作者: Webber Huang
联系方式: xracz.fx@gmail.com
主页: http://riggingtd.com
版本: 3.0.0
要求: Maya 2011 x64 or above
平台: Windows 64bit, Mac OS X, Linux 64bit
许可: BSD license

描述:

Soft Cluster EX基于python和C++编写,用于转换软选择为Cluster或Joint,并支持多种常见
的可变形物体,如:polygon、nurbs、subdiv和晶格。

安装:

  1. 将 SoftClusterEX 文件夹放进 maya script 路径.
    如:C:/Users/用户名/Documents/maya/scripts/

    • 注意1:如果之前有安装过1.x版本,请先删除softClusterEX.py 和 softClusterEX.pyc
    • 注意2:如果之前安装过2.6或者更早的版本,请先删除softSelectionQuery插件
  2. 把”install.mel”拽进maya场景,当前工具架会自动创建SoftClusterEX的按钮(和图标),
    点击启动 (推荐这样安装)

使用:

如果你不想通过”install.mel”来安装按钮,在maya的python tab里执行以下代码也能启动:

特征:

基本功能:

  • 支持从polygon, nurbsSurface, nurbsCurve, subdiv 和 lattice创建Cluster或Joint
  • 可选打开/关闭不希望被影响的类型
  • 支持多选,Global模式下被软选择影响的多种类型几何体也能创建Cluster或Joint
  • Global模式下可排除不希望被影响的物体和组
  • 场景里存在大量重命名物体也没关系
  • 即使在高分辨率模型上创建cluster或Joint也具备极高的性能
  • 支持对所有常见可变形物体做局部或者世界空间的cluster或Joint镜像
  • 用软选择定义权重
  • 支持导出、导入权重

命令行:

  • Soft Cluster EX的核心功能来自自定义命令(custom command)”softSelectionQuery”,
    它是一个独立通用的Plugin,用来查询软选择信息,用户可以用它来构建自己的工具。

  • Synopsis: softSelectionQuery [flags] [String...]

    • sl -selection 获取软选影响的物体名和顶点名
    • tr -transforms 获取软选影响的物体名
    • s -shapeNames: 获取被影响物体的shape节点名
    • vtx -vertices: 获取被影响的点
    • ap -allPaths: 获取查询内容的相对路径名,用于应对重命名的情况
    • l -long: 获取查询内容的绝对路径名,用于应对重命名的情况
    • c -count: 获取被影响物体总数
    • nt -nodeTypes: 获取被影响物体的类型
    • ant -apiNodeTypes: 获取被影响物体的api类型名
    • exo -excludeObjects String (multi-use): 设置被排除的物体,支持列表
    • t -types String (multi-use): 设在可影响物体类型,支持列表
    • w -weights: 获取被影响点的权重值

待开发:

局限

  • 因为MFnSkinCluster不能兼容subdivision,骨骼功能无法支持这种类型的模型

反馈:

任何bug、问题、建议请发送至 xracz.fx@gmail.com

更新日志:

2014-09-07: v3.0.0 by Webber Huang

  • 新增: 完全支持joint,创建,镜像,重定义,导入导出权重,与cluster工作方式一样

  • 新增: Cluster 与 joint互相转换

  • 新增: 重定义工具可对cluster或joint做添加权重的操作

  • 新增: Falloff曲线面板以帮助用户调整软选择

  • 更新: UI调整

2014-09-03: v2.7.0 by Webber Huang

  • 删除冗余代码,mirror速度得以提升.

  • 删除权重文件的不必要信息,减小文件大小,提升导入、导出速度.

  • 用新的方法来设置module的环境,softSelectionQuery插件已被整合
    进SoftClusterEX包里面,用户无需再把它们来放进maya plugin路径.

  • 新增: 一个用于安装工具架按钮的mel script.

  • 更新: softSelectionQuery插件更新至v1.5, 包含新的方法来获取点路径.

  • 修正: 在maya 2011里启动失败.

  • 修正: mirror功能失效.

2014-08-28: v2.6.0 by Webber Huang

  • 重新整理源码文件结构

  • 简化权重的数据结构,提升性能

  • 新增:用软选择重新定义cluster权重

  • 新增:清除cluster对模型的影响

  • 新增:可导出、导入cluster权重

  • 新增:图标

2014-08-17: v2.1.0 by Webber Huang

  • 优化架构,以实现完全OO的设计

  • 优化UI

  • 新增一个标签来显示作者信息

2014-07-25: v2.0.0 by Webber Huang

  • 这是一个里程碑的版本,UI基本不变,但重新设计了结构和算法

  • 基于Maya API和优化的数据结构,即使在高分辨率模型上创建soft cluster也只是一眨功夫

  • 所有模型点都被cluster影响,而不像之前版本仅仅是软选择覆盖范围内的点被cluster控制,
    如果你想增加影响范围,尽管刷cluster权重就是了

  • 基于KD-Tree算法构建的镜像功能, 无论是局部空间还是世界空间,都能快速准确的完成
    cluster镜像,支持所有常见可变形物体

  • 注意:如果模型不是完美对称,镜像之后可能会有少量点不受cluster控制,目前我无法解决
    这个问题,如果你遇到这个情况,刷一下权重就可以了

2014-05-28: v1.1.1 by Webber Huang

  • 支持Maya 2015 SP2,更新2014编译版本至SP4

2013-11-18: v1.1.0 by Webber Huang

  • 支持Linux平台
  • 可按组(group)排除物体,把组添加进排除列表,Global模式下组内的所有物体均被忽略

2013-10-27: v1.02 by Webber Huang

  • 支持Mac OS X平台

2013-10-09: v1.01 by Webber Huang

  • 1.00版因采用vs2012编译,版本过新,导致多数电脑无法正常加载softSelectionQuery插件,为保证最大兼容性,用vs2008重新编译了所有softSelectionQuery_<Version>-<Bit>.mll

2013-09-30: v1.00 by Webber Huang

  • 首次发布

===========================English Translate===========================

Toolname: Soft Cluster EX
Author: Webber Huang
Contact: xracz.fx@gmail.com
Homepage: http://riggingtd.com
Version: 3.0.0
Requires: Maya 2011 x64 or above
Platform: Windows 64bit, Mac OS X, Linux 64bit
License: BSD license

Description:

Soft Cluster EX is a python and c++ based tool for converting soft selection to
cluster or joint, supports common types of deformable geometry(e.g. polygon,nurbs
,subdiv and lattice) with a lot of advance features.

Install:

  1. Place SoftClusterEX folder into your maya script path.
    e.g., C:/Users/YourUsername/Documents/maya/scripts/
  • NOTE 1: Please remove softClusterEX.py and softClusterEX.pyc first if you ever
    installed the 1.x version before.
  • NOTE 2: Please remove the softSelectionQuery plugins from your plugin path
    (e.g., C:/Program Files/Autodesk/Maya/bin/plug-ins/) if you
    ever installed 2.6.0 version or older.
  1. Drag “install.mel” into maya scene, a new button will appear in your current shelf,
    click it to launch. (Recommend!)

Usage:

If you don’t like to use “install.mel” to help you install, run the following code in maya’s
python tab is also okay.

Features:

General functionality:

  • supports create cluster or joint from polygon, nurbsSurface, nurbsCurve, subdiv and lattice
  • all types can be toggled on/off from UI
  • supports create cluster or joint from multi objects of different type
  • supports exclude influenced objects and groups while working on Global falloff mode
  • supports objects with duplicate name
  • ultra high performance, even working on massive density geometry
  • mirror cluster or joint in local or world space, also support working on
    multiple types of deformable geometry
  • redefine weight with soft selection
  • supports export and import weight

Command line:

  • The core function of this tool comes from the custom command “softSelectionQuery”,
    you can use it to implement your own tools.

    • Synopsis: softSelectionQuery [flags] [String...]
      • sl -selection return a list contains transforms and vertices
      • tr -transforms return transform names of influenced objects
      • s -shapeNames: return shape names of influenced objects
      • vtx -vertices: return vertices of influenced objects
      • ap -allPaths: return partial paths to objects in DAG
      • l -long: return full path names for Dag objects.
      • c -count: return count of influenced objects
      • nt -nodeTypes: return type names of influenced objects
      • ant -apiNodeTypes: return api type name of influenced objects
      • exo -excludeObjects String (multi-use): set exclude objects
      • t -types String (multi-use): set support types
      • w -weights: return weights of influenced components

Todo:

  • None

Limitation

  • Joint function can’t work with subdiv since MFnSkinCluster incompatible with this type of geometry

Feedback:

Bugs, questions and suggestions to xracz.fx@gmail.com

History

2014-09-07: v3.0.0 by Webber Huang

  • NEW: Fully supports working with joint, create, mirror,
    redefine, export, import weight, just like play with cluster

  • NEW: Convert cluster and joint into each other

  • NEW: Append new weight with redefine tool

  • NEW: A falloff curve panel to help user adjust soft selection

  • UPDATE: Better UI

2014-09-03: v2.7.0 by Webber Huang

  • Reduce the redundant codes, improve mirror performance.

  • Reduce the information contained in weight data file.

  • A new method for setting environment, plugins have been
    integrated into “SoftClusterEX” module, so people don’t
    need to tangle with placing the plugin files any more.

  • NEW: A mel script to help people install a shelf button.

  • UPDATE: softSelectionQuery plugin has been update to v1.5,
    new ways to deal with the path of the geometry vertex.

  • FIXED: Failure to launch in maya 2011.

  • FIXED: Malfunction occured in mirror operation.

2014-08-28: v2.6.0 by Webber Huang

  • Reconstruct source files to make it more reasonable

  • Simplify weight data structure, performance improve

  • NEW: Redefine cluster weight by soft selection

  • NEW: Detach influenced geometries from cluster

  • NEW: Export and Import cluster weight

  • NEW: A flat style icon

2014-08-17: v2.1.0 by Webber Huang

  • Optimized architecture to meet fully OO design principle

  • Optimized UI

  • A new tab to show author’s information

2014-07-25: v2.0.0 by Webber Huang

  • A complete redisign of architecture, optimized codes and algorithms

  • Base on Maya API and optimized data structure, this version achieves a significant
    performance improvement when create cluster on massive density geometry

  • All geometry vertices are binded to cluster, it means that no more necessary to use
    “Edit Membership Tool” to append vertices to cluster, if you want some more
    influence, just paint it

  • A powerful mirror function has been implemented to enhance this tool, supports
    all kind of common deformable geometry, base on kd-tree algorithm, it works fast
    and reliable, so please feel free to play it with your wide imagination

  • Notes that there may be a few vertices mis-binded(zero weight value) after perform
    mirror operation, it happens when geometry is not perfect symmetry, i can’t solve
    this issue in current, please paint it when you come across this situation, i hope
    it won’t be such a troublesome problem to you, this function works perfect mostly

2014-05-28: v1.1.1 by Webber Huang

  • Nothing’s news, but support maya 2015 SP2 and update compile against 2014 SP4

2013-11-18: v1.1.0 by Webber Huang

  • Add Linux compile version for softSelectionQuery plugin, it works on linux now

  • Exclude objects by group supported, user can add groups into exclude list,
    objects under these groups will be ignored while working on global mode

2013-10-27: v1.02 by Webber Huang

  • Compiled softSelectionQuery plugin for OS X, mac user can play with it

2013-10-09: v1.01 by Webber Huang

  • Issue of plugin loading failed,i re-compile all softSelectionQuery_-.mll
    with vs2008 to maintain maximum compatibility

2013-09-30: v1.00 by Webber Huang

  • Initial release

Download:

GitHub: https://github.com/xracz/SoftClusterEX
CreativeCrash: http://www.creativecrash.com/maya/plugin/soft-cluster-ex

2014-09-07: SoftClusterEX-3.0.0.7z
2014-09-03: SoftClusterEX-2.7.0.7z
2014-08-28: SoftClusterEX-2.6.0.7z
2014-08-17:SoftClusterEX-2.1.0.7z
2014-07-25: SoftClusterEX-2.0.0.7z
2014-05-28: SoftClusterEX-1.1.1.7z
2013-11-18: SoftClusterEX-1.1.0.7z
2013-10-27: SoftClusterEX-1.02.7z
2013-10-09: SoftClusterEX-1.01.7z
2013-09-30: SoftClusterEX-1.00