导图社区 Houdini学习笔记
这是一篇关于Houdini学习笔记的思维导图。Houdini (电影特效魔术师) Side Effects Software的旗舰级产品,是创建高级视觉效果的有效工具,因为它有横跨公司的整个产品线的能力,Houdini Master为那些想让电脑动画更加精彩的动画制作家们提供了空前的能力和工作效率。
编辑于2021-05-01 22:06:23Houdini
Nodes
快捷键
shift+s直线曲线切换;style切换直角还是圆角曲线;
按键Y调出剪刀裁切连接线
shift+r切换多个输入端的线条,对换第一个端口和第二个端口的连接顺序
Tab调出节点菜单
U/I 退出进入
空格+g 最大化选择物体
sop层级节点链接
节点链接
链接代表的是数据传递;
一个端口
对于只有一个输入端和输出端的链接方式,线性链接在一起,只需要考虑节点连接顺序和数据类型是否匹配
多个端口
节点的输入端可以有1个或者无数个,输出端可以是一个也可以是无数个
端口上面有红色三角标志的是必须输入的端口,其余的端口根据需要进行设置
Merge节点多个输入端影响参数顺序
数据匹配
Primitive
Polygon
Polygon Mesh
Mesh
Nurbs
Bezier
Polygon Soup
线
sop中
实线代表数据传递
虚线代表模板参考,
vop中
实线代表数据类型匹配
虚线代表数据类型不匹配,houdini自动转化,尽量避免
Flags节点标签(节点上右键)
标签激活方式
鼠标右键使用命令/快捷方式
选择节点,点击对应的图标
按住快捷方式,戍边切换成旗子突变,然后直接点击节点方便批量操作
属性列表界面
快捷键shift+T
显示所有节点及标签选择显示方便查看所有节点及状态选择
Obj层级
常用选项
Display选项
快捷键R;显示和渲染
Selectable选项
快捷键E;关闭后视图中不可以选择,避免误操作,节点区域中可以选择
特殊选项
Display origin选项
显示出obj层级物体的中心坐标,常用于骨骼绑定
X-ray选项
x光半透明显示可以让物体半透明显示,常用于骨骼绑定
大师选项
Display Desrcriptive Parameter选项
在节点旁边显示出某个节点最重要的参数信息,可以快捷预览
Display Comment选项
显示节点注释,对某个节点做个特殊的备注,可以切换是否直接节点周围显示
Hide Node选项
隐藏节点
直接在节点面板中对节点进行隐藏
快捷键shift+e恢复显示
Sop层级
常用选项
Display选项
快捷键R或alt+鼠标左键点击;蓝色显示
Sop层级与Obj层级的差异
同一个sop只有唯一一个节点可以激活显示标签,不可以多个节点同时激活
在sop内部节点,显示和渲染是可以分开的,一个节点复制视图限制,一个节点用于最终渲染。这种做法通常把量比较大的物体比如流体,烟火和高模等不直接在视图显示,只作为最终渲染,视图中使用简单模型代替。也有一种是为了操作方便显示观看,但是最后不需要渲染,比如pyro的发射器
Render选项
快捷键T或ctrl+鼠标左键点击,不在视图显示,只是作用于渲染;紫色显示
Template选项
快捷键E或shift+鼠标左键点击
模板线框模板显示,可以同时对多个节点进行模板显示,不能进行元素选择和编辑操作
Lock/Unlock选项
锁定和解锁
按住ctrl点击标签进行激活,并且关闭的时候会弹出警告
作用
如果节点(包括上游节点)修改,每次刷新非常耗费时间,就可以进行锁定,锁定后,这个节点包括上游节点修改不会有任何变化,这样可以节省刷新时间,调整后再进行解锁
类似于删除历史的作用,可以直接断开上游节点,只用这个节点保留数据,方便文件外传防泄露等
Bypass选项
快捷键Q或B
可以直接忽略这个节点,数据从输入端直接到输出端
特殊选项
Highlight选项
对当前物体进行局部选择时,是否高亮选择所选择的区域
Selectable tempelate选项
快捷键W或ctrl+鼠标左键点击模板的标签
可选择的模板,可以进行元素选择的模板模式
Unload选项
不加载选项,不把本届点缓存到内存,这样可以节省内存空间,但是会让每次刷新变慢(因为没有了内存缓存);根据自己电脑配置进行选择
节点Nodes
节点的信息面板
访问节点信息
鼠标中键或点击info信息窗口
节点的基本信息
基本数据
Time Dependent是否基于时间变化;动画制作最好在最后进行添加,节省电脑性能和内存使用优化
其他信息 性能和节点的基本信息
报错/警告提示
badges各种徽章的含义及作用
快捷键D调整出界面,默认不需要修改,根据使用进行修改
节点徽章
节点默认拥有的徽章
参数徽章
当在节点参数中设置了特殊效果才会出现徽章提示
文字徽章
通过文字信息来展示
节点管理
逻辑和线的排布
节点的排列尽量避免交叉的线
shift+s对线的形式进行切换
善用objmerge节点将穿插的节点链接到objmerge节点上
Dot点创建方便布局
alt创建dot
alt+拖拽dot收集多个输出端进行控制
创建dot后按alt点击dot进行锁定和解锁
网格辅助
tools/Grid points或者Grid lines
激活snap to grid自动吸附到grid上
D打开视频面板,可以控制网格的距离
自动布局,对齐和分布
按键L 全部自动排布
按键shift+L 对选择的节点进行自动排布
长按按键a 左右滑动鼠标进行水平自然分布,上下滑动进行垂直分布
如果事先选择了节点,可以只对选择的节点进行操作;上游节点-向上或者想左滑动;下游节点-向下或者向右滑动
对齐和分布
shift+a 的操作分别可以是水平对齐垂直对齐
alt+a 针对三个或者三个以上的点进行分布
shift+alt+a
大写命名
OUT_
节点识别
节点的形状
按键Z 打开形态列表
赋予方法
选择节点然后点击形状;拖拽形状到指定节点
单独赋予 把形状拖给节点,选择一个或者多个节点然后点击形状
按键ctrl+鼠标拖拽 改变相同类型的节点
节点的颜色
按键C 打开颜色面板
赋予方式
选择节点然后点击颜色;拖拽颜色到指定节点
红色:输入节点;比如file/objmerge节点
蓝色:非程序化节点;比如edit,手动创建group和delete等
绿色:需要重点调整的节点
黑色:输出节点
这边的颜色根据自己的工作习惯进行调整
改变面板中的颜色设定,鼠标右键选择添加/编辑和删除颜色,如果需要保存为预设,那么选择save as default报错为默认
网格盒子Network box
对节点分组,可以用来做重点提示,也可以进行隐藏
按键shift+o 选择节点进行创建,点击左上进行输入注释
删除网络格子
按键shift+delete 完全删除
按键delete 对选择的box进行删除
自动适配 layout/resize network boxes to fit
网络盒子左上角的+/- 最大化和最小化、ctrl+点击 周围节点也会自动适配调整位置
封装
按键shift+c 进行封装
便签贴sticky notes
支持中文,节点的comment单独节点的评论
按键shift+p,鼠标右键进行编辑,改变文字的颜色
按住shift调整note的大小可以进行自动缩放文字
右键选择hide隐藏背景,可以作为标题使用
插入背景
插入背景
按键shift+l insert插入
编辑背景
tools/ Edit background images 编辑背景
按键ctrl+i 编辑背景,编辑完成后关闭命令
调整大小
删除背景
链接到节点
调整透明度/明亮度
其他面板功能
shift+z 节点分组
node group 分组
可以对节点进行分组管理
node bundle 捆扎
bundle list类似分组的功能,可用于灯光设置和渲染
斜杠或者ctrl+f 查找;ctrl+g 查找下一个;ctrl+shift+g查找上一个;
批量重命名
edit/rename selected nodes
alt+w 重命名面板
可以添加前缀或者后缀;删除前缀或者后缀
跳转
设置锚点 ctrl+1、2、3、4、5
跳转锚点 1、2、3、4、5
Geometry物体
Sop
level层级
注:没有edge边这个层级
四个层级
Primitive 面/几何体
注:不仅仅是面(如果polygon和nurbs物体才是面)
polygon face
packed primitive packed disk primitives;packed disk sequence primitive;packed disk sequence primitive;
polygon soup
volume/vdb/heightfield
tetrahedron
Bezier/nurbs surfaces
polygon/bezier/nurbs curves
metaballs
primitive数学算法几何体(null,circle,sphere,tube)
Point 点
最重要的一个层级,point和attribute属性是构建houdini的两大基石,在houdini中绝大部分的操作是针对point进行控制的
在数学上,point的定义是空间上的一个位置(p),没有大小也没有方向;定义点的最基本和必备的属性是p位置属性;没有位置属性,点就不存在
可以把任意属性赋予给point点
常用属性
P 位置
pscale 点的大小
N 点的法线
V 点的速度
ptnum 点的序号
id 点的身份
等......
任意自定义的属性如@myvar等;可以是任意数据类型(浮点,整数,字符,矢量,矩阵);在物理世界中是无限小的,但在houdini中是可以渲染出大小和有运动方向的;
创建/生成点的方法
直接生成点的方法
add
pointgenerate
wrangle
删除物体保留点的方法
注:保留模型上的点,本来在模型点上的属性是完全保留下来的
add
delete
基于物体生成点的方法
注:是基于模型重新生成的点,跟原来模型上的点是没有任何关系的,如果需要继承原来模型上的点需要将属性传递过去
scatter 在物体表面进行撒点,默认设置进行了点属性传递
pointfrom volume 基于物体创建点
pointgenerate
pointreplicate封装节点=point generate+noise
Vertices 顶点
Detail 整体
pointvertices点和顶点
point 点
vertices 顶点
注
注1:一个point牵动连接成point的vertices,从而带动面;由于使用起来point比vertices便捷,因此point成为最重要的一个层级
注2:point可以单独存在,但vertices不能单独存在
注3:vertices是point与primitive的桥梁,没有primitive就不会有vertices
wrangle节点创建point vertices和primitive
1、int addpoint(0,位置)
如: int pt0=addpoint(0,{0,0,0}); int pt1=addpoint(0,{1,0,0}); int pt2=addpoint(0,{0,0,1}); int pt3=addpoint(0,{1,0,1});
2、int addprim(0,prim类型)
如: int prim0=addprim(0,“poly”);
3、int addvertex(0,prim,point)
如: int vert0=addvertex(0,prim0,pt0); int vert1=addvertex(0,prim0,pt1); int vert3=addvertex(0,prim0,pt3); int vert2=addvertex(0,prim0,pt2);
promote属性转换层级
003-vop
004-vex