在使用houdini时经常会遇到一些属性操作,简单的浮点整数向量等操作相信大部分用户都非常熟悉了,该文章主要是记录一些特殊属性的使用方法,用于记录查找,不定时更新,如果你也有特殊的属性总结,欢迎留言。
bonecapture
bonecapture属性记录的是模型上点受哪个骨骼影响以及影响的权重值,通常在我们使用fbxskinimport节点导入fbx动画模型时持有。
你会发现他有两个不同的分量数据,分别是boneCapture regn 和 boneCapture w,如果我们想在vex使用其中的一个数据,我们需要先添加captureattribunpack节点把他们解包,attribute选项选择 captureattribunpack,然后你就可以用vex操作了,下面代码参考:
int boneCapture_deta[] = point(0, "boneCapture_index" , @ptnum);
int f = boneCapture_deta[0];
string a[] = detail(0,"capt_names");
string path = a[f];
s@path = path;
这段代码是我先创建一个字符串属性,获取到每个点的解包出的骨骼序号值。然后用这些值去匹配detaili属性里的骨骼名,再把这些名字存储为一个path字符串属性。
矩阵
1.Houdini中有三种矩阵类型:2×2矩阵(2D旋转)、3X3矩阵(3D旋转)、4X4矩阵(平移、旋转、缩放)。
2.可在类型为detail的AttributeWrangle节点输入以下代码,创建不同的矩阵
matrix2 mat2 = set(1,2,3,4);
matrix3 mat3 = set(1,2,3,4,5,6,7,8,9);
matrix mat4 = set(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16);
2@mat2 = mat2;
3@mat3 = mat3;
4@mat4 = mat4;
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END
暂无评论内容