您需要 登录 才可以下载或查看,没有账号?注册
x
今天我们分享houdini中的变量,也是学习houdini必须要掌握的一个知识点,实际变量和组差不多。在使用中用的还算比较多,其实很多功能属性也是可以实现的
但组合变量有一些不可替代的地方,所以还是要熟练去掌握变量的使用。我们在刚开始学习的时候也是经常接触像:$F;$T;$PT 这些都属于变量,变量在houdini中主要分全局变量和局部变量
VEX中:临时变量
全局变量这个整个houdini中各个模块都可以使用;局部变量只在某个局部范围内使用;
临时变量定义当前节点使用下一个节点无法使用
变量测试
$HIP,当前文件所在的路径
$JOB ,指的是你的工程路径
自定义变量
局部变量;较为常用局部变量
AREA | The surface area of the primitive (created by the Measure SOP).基本体的表面积(由测量SOP创建) | BBX, BBY, BBZ | The point’s relative position in the bounding box点在边界框中的相对位置 | CA | Point or vertex alpha value点或顶点alpha值 | NPT | The total number of points in the template geometry模板几何图形中的点总数 | NX, NY, NZ | Normal vector法线向量 | PR, NPR | Primitive number & total number of primitives.面数量&面总数 | PT | The point number of the currently processed point.当前处理的点的点号 | TX, TY, TZ | Point position.点位置 | CEX, CEY, CEZ | The centroid of the geometry.几何体中心 | CR, CG, CB‍ | Diffuse point or vertex color漫反射点或顶点颜色 | UPX, UPY, UPZ | The vector pointed in the up direction.指向上方向的矢量 |
变量使用
随机删除60%:rand($PT)<0.6
$PT使用:点数返回
如果Cs小于0.5 Cd=绿色
BBY使用:在Y轴删除小于0.5模型
我们做一个属性随机创建这个节点将这个随机的属性的名称写成法线,我们这边将这个方式改成inside这种方式那么这个时候这个法线的分布呢其实就比较乱了,我们就可以借助到了NX,NY,NZ对他的法线做这个处理,创建一个属性创建节点修改名字N;然后这个是一个vector;修改法线方向乘以0只保留一个方向
我们利用这个法线对它的这个点在这个Y轴上面根据法线的方向的大小,进行一个移动,添加一个属性乘以一个系数修正下
波形+移动效果
通过Alpha删除小于0.2面
Pscale
创建模型-->Transform-->$F模型中心旋转
当我们再次添加Transform后旋转就不再中心了需要重新设置中心
轴心位置设置$CEX\$CEY\$CEZ
模型最高点移动到(0,0)点;模型最低点移动到(0,0)点
#attribwrangle属性
Attribblur | 属性模糊节点 | Attribcombine | 属性合并节点 | Attribcopy | 属性拷贝节点 | Attribexpression | 属性表达式节点 | Attribdelete | 属性删除节点 | Attribute Create | 属性创建节点 | Attribute Randomize | 属性随机节点 | Attribnoise | 属性噪波节点 | Attribpaint | 属性绘制节点 | Attribpromote | 属性转化节点‍ | Attribtransfer | 属性传递节点 | Solver | 节点 |
属性创建与删除
我们先查看模型上面是带有UV的,然后我们删除UV属性再次查看就会发现UV被删除了
创建属性
命名-->创建在哪里-->创建的类型
Y轴取值
attribwrangle(属性)常用:点、顶点、面
添加属性,X大于0.5
属性模糊
模糊那个属性?-->模糊强度
属性噪波
对谁进行噪波?-->类型-->强度
属性绘制
填写绘制名字-->视图内回车用笔刷绘制
属性转化节点
原始属性在点-->转化到primitive
属性拷贝
动态面颜色传递到静态上
注意:传递来源方式和目标方式
通过模型上选择的点创建属性;选择开始点-->转换点到面-->从选择点开始删除
【Houdini】常用变量&函数汇总引用地址:
https://www.newvfx.com/forums/topic/33239
()括号 括号的使用是为了列举出所有的将要包含在函数中的参返回标记当HScript表达式中已经输入了一个字符串类型的参数,它必须包含在返回标记内,以便作为一个表达式的计算。例如,如果您正试图使用在一个文件路径表达式功能,您需要在您的函数结束包含一个返回标记数。每当使用一个函数,必须有一个开放的括号和一个封闭的括号。最简单的错误之一就是当你创建表达式时,意外的有多个数目不正确的括号
“”引号 当一个字符串必须被用作在一个函数的参数,它必须包含在引号内。这可以包括参数名,和文件路径
‘’单引号 文本中的单引号不是大写的。可能有必要在有的时候字符串内使用这些字符,以防止一个变量被承认为一个变量
浮点Float:浮点数单一数值可能包含小数,即:15.5。很可能打破这种进一步下降为整数,不包含小数。一个Alpha属性/通道是一个很好的float值的例子
矢量(向量)Vectors::三浮点值。这些值可以用来代表的位
本期笔记分享就到这里,我们下期见!
笔记内容部分引用B站视频教程【推荐大家看完整版作者讲的很好】
https://www.bilibili.com/video/BV1Mu41117Fa?t=1811.4&p=5
|