矩阵工具节点

Maya 使用矩阵工具节点通过矩阵数学向场景中添加额外的效果。另请参见编辑“变换偏移父对象矩阵”(Transform Offset Parent Matrix)属性

Maya 中提供了以下工具矩阵:

addMatrix
此 addMatrix 节点接受矩阵列表作为输入,并将其添加到一起以生成输出,该输出为所有输入矩阵的总和 (m1 + m2 + m3 + m4 = matrixSumOutput)。

另请参见 Maya 技术文档中的 addMatrix

aimMatrix
变换输入矩阵,使指定的主轴指向指定的主要目标。可以选择使用次要目标沿该常规方向(上方向向量)对准次轴。
aimMatrix 节点具有“空间矩阵”(Space Matrix)部分,您可以在此使用“前空间矩阵”(Pre Space Matrix)“后空间矩阵”(Post Space Matrix)浮点数,以及“合成”(Composition)和“矩阵”(Matrix)选项卡来改变输入和输出的空间。有关不同状态所表示内容的信息,请参见编辑“变换偏移父对象矩阵”(Transform Offset Parent Matrix)属性
aimMatrix 是混合对准/对齐操作。利用此节点,您可以通过独立于次轴对准或对齐操作的对齐或对准操作来设置主轴。

aimMatrix 节点具有以下选项

  • 输入轴(Input axis):要对准/对齐的轴
  • 模式(Mode)aimMatrix 节点有 5 种模式:
    模式 功能
    锁定轴(Lock Axis) 保持输入轴不变。
    目标(Aim) 将输入轴对准目标矩阵中目标向量定义的点。
    对齐(Align) 将输入轴对齐目标矩阵中目标向量定义的向量。
    无(None) 在解算中不包括次轴。主轴在解算中采用最短四元数球面线性插值。
    目标向量(Target Vector)
    • “目标”(Aim)模式:目标向量被视为目标矩阵中的 3D 点。
    • “对齐”(Align)模式:目标向量被视为目标矩阵中的向量。在此模式下,必须指定有效值(0,0,0 无效)。
axisFromMatrix
从指定的变换矩阵中检索所需的轴(X、Y 或 Z)三维向量。
blendMatrix
BlendNode 将基础矩阵 (InputMatrix) 与每个目标依次融合。融合以堆栈的形式进行。上一个融合结果将与下一个目标融合,依此类推。
将变形与 blendMatrix 节点链接在一起,其中权重值可用于外推和插值。
blendMatrix 不是加权平均,而是有序融合,每个后续矩阵都覆盖前面的矩阵。例如,如果三个矩阵的加权融合可能使用值 1、1 和 1 进行 50% 融合,则需要权重 1、0.5 和 0.3333(或更加清楚地说是 1/1、1/2、1/3)以达到与有序融合相同的结果。
blendMatrix 具有“空间矩阵”(Space Matrix)部分,您可以在此更改输入和输出的空间。
blendMatrix 节点具有“空间矩阵”(Space Matrix)部分,您可以在此更改输入和输出的空间,无需额外的 multiMatrix 节点。有关不同状态所表示内容的信息,请参见编辑“变换偏移父对象矩阵”(Transform Offset Parent Matrix)属性

blendMatrix 节点具有以下选项

  • 使用矩阵(Use Matrix):激活 blendMatrix 节点
  • 使用缩放/平移/旋转/斜切(Use Scale/Translate/Rotate/Shear):用于选择融合计算中将使用的组件(缩放/平移/旋转/斜切)。
columnFromMatrix
columnFromMatrix 节点从 4x4 矩阵返回指定列。
composeMatrix
composeMatrix 节点使用平移、(四元数或旋转)、缩放和斜切值来生成 4 x 4 矩阵。
decomposeMatrix
decomposeMatrix 节点将 4 x 4 变换矩阵用作输入,并返回变换矩阵分解。请参见变换偏移父矩阵(Transform Offset Parent Matrix)、rotationFromMatrix、scaleFromMatrix 和 translationFromMatrix。
determinant
determinant 节点计算给定矩阵的行列式。矩阵的行列式是标量值,它是矩阵条目的函数。
fourByFourMatrix
此节点根据 16 个输入值输出 4 x 4 矩阵。可以将该输出矩阵属性连接到属于“矩阵”类型的任何属性。

矩阵的第一行由 in00、in01、in02、in03 定义。

矩阵的第二行由 in10、in11、in12、in13 定义。

矩阵的第三行由 in20、in21、in22、in23 定义。

矩阵的第四行由 in30、in31、in32、in33 定义。

holdMatrix
使用该工具缓存矩阵。
inverseMatrix
inverseMatrix 节点计算给定可逆矩阵的逆矩阵。矩阵的逆矩阵是指与该矩阵相乘得到单位矩阵的矩阵。
multiplyPointByMatrix
multiplyPointByMatrix 节点返回点与矩阵相乘的乘积。
multiplyVectorByMatrix
multiplyVectorByMatrix 节点返回向量与矩阵相乘的乘积。这相当于计算向量终点与矩阵相乘减去向量起点与矩阵相乘。
multMatrix
将一系列矩阵相乘。
parentMatrix
parentMatrix 节点接受输入矩阵并融入其他父目标的效果。它将归一化所有目标的效果。

它可用于通过混合多个目标输入的加权影响来设置变换父对象的动画。

利用此节点,您可以使用“前空间矩阵”(Pre Space Matrix)属性和“后空间矩阵”(Post Space Matrix)属性来改变输入和输出的空间。

parentMatrix 节点具有“空间矩阵”(Space Matrix)部分,您可以在此使用“前空间矩阵”(Pre Space Matrix)属性和“后空间矩阵”(Post Space Matrix)属性,以及“合成”(Composition)和“矩阵”(Matrix)选项卡来改变输入和输出的空间,无需额外的 multMatrix 节点。有关如何使用 parentMatrix 的示例,请参见使用 parentmatrix 节点将对象更改为其父对象

parentMatrix 节点针对每个目标提供以下选项:
  • 启用目标(Enable Target):激活目标
  • 权重(Weight):要用于目标的权重(将与其他目标权重一起归一化)
  • 目标矩阵(Target Matrix):要融入的目标矩阵
  • 偏移矩阵(Offset Matrix):相对于目标矩阵的偏移。在设置从一个目标到另一个目标的动画时,可以使用此项捕获在某个交接点处对象相对于目标的偏移。
管理目标(Manage Targets)

parentMatrix 的“管理目标”(Manage Targets)菜单

parentMatrix 节点还具有“管理目标”(Manage Targets)菜单。从以下选项中选择:
将选定项添加为目标(Add Selected as Target)/移除选定项作为目标(Remove Selected as Target) 将选定对象合并到矩阵中或从矩阵中移除选定对象。
初始化目标偏移(Initialize Target Offset) 计算 offsetMatrix,以便当目标成为唯一的影响因素时(目标的权重为 1.0,而所有其他对象的权重为 0.0),对象与 inputMatrix 保持在同一位置。
捕捉目标偏移(Snap Target Offset) 计算 offsetMatrix,以便当目标成为唯一的影响因素时(目标的权重为 1.0,而所有其他对象的权重为 0.0),对象不会移离当前位置。
启用(Enable)
激活“封套”(Envelope)滑块,使您可以指定矩阵中目标对象的偏移强度。
封套(Envelope)
指定矩阵中目标对象的偏移强度的比例因子。
passMatrix
将矩阵乘以一个常量,而不缓存任何内容。
pickMatrix
用于选择要在输入矩阵中使用的输出矩阵组件,例如,可以仅选择平移和旋转。未使用的组件设置为单位矩阵。
proximityPin
注: 从技术上讲,proximityPin 是一个矩阵节点。
proximityPin 节点返回几何体(由“deformedGeometry”属性给定)上每个点(由“coordinateU”和“coordinateV”属性给定)的矩阵。
它用于跟踪变形曲面上的位置。它从输入变换中曲面上的最近点派生位置。相反,uvPin 节点从指定的 UV 坐标派生位置。
如果要使用相关控件以重新定位输入或不存在干净 UV,请使用 proximityPin 节点将对象附加到几何体。
有关详细信息,请参见接近度固定(Proximity Pin)创建接近度固定接近度固定选项(Proximity Pin Options)
rotationFromMatrix
rotationFromMatrix 节点从 4x4 变换矩阵提取 Euler 旋转。这些节点要求给定矩阵是格式正确的变换(旋转、缩放、平移)矩阵。要求的旋转顺序为 XYZ。
rowFromMatrix
rowFromMatrix 节点从 4x4 矩阵返回指定行。可以使用此节点并选择 4x4 变换矩阵的第 4 行以从该矩阵提取平移。
scaleFromMatrix
scaleFromMatrix 节点从 4x4 变换矩阵提取 X、Y、Z 比例。这些节点要求给定矩阵是格式正确的变换(旋转、缩放、平移)矩阵。
translationFromMatrix
translationFromMatrix 节点从 4x4 变换矩阵提取 X、Y、Z 平移。这些节点要求给定矩阵是格式正确的变换(旋转、缩放、平移)矩阵。
transposeMatrix
transposeMatrix 节点转置给定矩阵。矩阵的转置矩阵是指矩阵元素沿对角线翻转后的矩阵。位于(行 i,列 j)的值在转置后将位于位置(行 j,列 i)。
uvPin
注: 从技术上讲,uvPin 是一个矩阵节点。
使用此节点可直接按其矩阵输出驱动变换。
返回几何体(由“deformedGeometry”属性给定)上每个点(由“coordinateU”和“coordinateV”属性给定)的矩阵。
请参见 UV 固定(UV Pin)创建 uvPin
wtAddMatrix
将矩阵的加权列表加在一起。