1、Houdini 命令手册 2011-05-04 17:48:49| 分类: Houdini | 标签: |字号大中小 订阅 L-SYSTEM关于 lsystem 的介绍在 houdini 内提供了一系列强大特别的工具,来帮助用户实现各种先进的特效,他们中的一个就是lsystem sop。这个 lsystem sop 提供了一种生成复杂有机生长动画的手段,我们可以使用他来模拟诸如树木,闪电以及其它一些包含有分支的结构。建立在 selfsimilarity 的基础上有多个因素联合发挥作用来表现出来了有机生物比如植物的复杂结构,从而表现出来他们的特色,这些因素包括了:对称 symmetry;自我相似
2、性 self similarity;发育法则 developmental algorithms在 lsystem 内,我们主要关注的是第二条法则。Selfsimilarity 描述出来了包含在植物内部的分形结构特点。关于 selfsimilarity 的准确描述参看 Benoit Mandlebrot 的定义:如果某一个形状的一个部分类似与其自身形状,则这个形状以及这个部分的特性被称为 selfsimilar。objambient object这个 ambient object 在给出的一个场景中,控制环境灯光的颜色和强度。blend object这个 blend object 是一个多输入的
3、 object。她允许可动画的输入,融合输入跟部分继承的变换。bone object这个 bone object 是一个可以用于关节链的 object。camera objectcamera object 是一个扮演摄像机角色的 object。你通过他来查看你的场景,然后从他的视角来渲染场景。fetch object 通过拷贝另一个 object 的变换信息来获得自己的变换信息。这表示通过他可以很容易的获得包含在一个 subnet 里面得一个 object 得变换信息,然后可以在 object 层级里面,把获得得信息做为父来来连接一个 object。atmosphere object这个 ob
4、ject 在渲染得时候生成雾的效果。force objectforce object 被用来在 objectlevel 中表现对某几个 pops(包括 force ,fan,还有 rbdconstrain pops)的作用效果。这个 object 提供在 worldlevel 中对这些 pops 的可视化表现,同时允许你在worldlevel 的角度中控 制这些 pops 的参数。geometry objectgeometry object 是一个被用来渲染的 object。handle objecthandle object 被设计以通过几个末端操纵器来对各个成组的骨骼实行操控。他被用来跟
5、chop 的 handle进行联合应用。如果有多个 bones,那么会有对应的 handle 附属到他们身上。light objectlight object 是一个发射光到其他物体上的 object。你也可以从他的视角看,或者渲染。macrophone objectmacrophone object 是在使用 spatialaudio chop 的时候,定义一个听点。一个 spatialaudio chop 可以使用多个 macrophones,这样子可以生成立体声或者环绕声效果,同时还能生长各种音效,包括多普勒效应,随着距离表现出来的音量损 失,干涉,大气过滤,定位发声。要设定一个 spa
6、tialaudio 场景,要有一个或者多个 sound object 被用来发射声波。至少需要一个macrophone 被用来捕捉声波。然后需要一个 spatialaudio chop 来渲染音波。如果场景中有障碍物或者滤波器,那么至少还需要一个 acoustic chop 被用来设计频率的过滤。移动 sound 和 microphone object 会在音量和音调上产生各种变化,特别是如果有任意一个 object 是具有方向性的时候,效果更明显。设定一个方向性的 macrophone 或者 sound object 非常类似于设定一个方向性的灯。null objectnull object
7、 扮演的是一个在场景中空间占位的角色。他可以被用来表示一个空间坐标位置。这样子可以被用来当作目标物体,或者可以做为 ik 链的末端效果器。null object 的变换被用来在 rib 或者 ifd 渲染中定义坐标系统。sound objectsound object 被用来为 spatialaudio chop 定义一个声波发射点。多个音源可以通过一个 spatialaudio chop 来产生立体声或者环绕声效果,还包括各种特别音效,比如多普勒效应,随着距离表现出来的音量损失,干涉,大气过滤,定位发声。要设定一个 spatialaudio 场景,要有一个或者多个 sound object
8、被用来发射声波。至少需要一个macrophone 被用来捕捉声波。然后需要一个 spatialaudio chop 来渲染音波。如果场景中有障碍物或者滤波器,那么至少还需要一个 acoustic chop 被用来设计频率的过滤。移动 sound 和 microphone object 会在音量和音调上产生各种变化,特别是如果有任意一个 object 是具有方向性的时候,效果更明显。设定一个方向性的 macrophone 或者 sound object 非常类似于设定一个方向性的灯。subnet objectsubnet object 被用来对复杂的节点网进行简化。他可以把几个 object 放
9、到一个节点里面。这个 object 提供了四个 input,以用来把 subnet 里面的 object 跟上游的 object 进行连接。switcher objectswitcher object 允许你在需要观察或者渲染你的场景的时候,在不同的摄像机之间切换。可以给 switcher 设定关键帧来获得类似转场镜头切换的效果。sopclip sopclip sop 使用一个无限的平面剪切,折叠多边形几何体。cap sopcap sop 被用来使用 flat 或者 rounded 面来对开放区域进行封口。meshes 通过在 uv 方向扩展,或者通过增加面来实现 cap。faces 通过扩展
10、 face 或者一个空 cap 来实现 cap。bound sopbound sop 通过计算,然后给输入的几何体生成一个包围的体积体。这个体积体可以是 box 或者sphere。如果是 box 的话,那么就可以应用到了 lattice 操作上。comb sop comb sop 是被设计用来允许你在视图中直观的调整曲面点的法线。正如他的名字所暗示的,他常常被用来初始化毛发生长的依据法线。在视图中,通过在曲面点法线上拖动笔刷,法线就随着拖动的方向倾斜。copy sop copy sop 允许你对其他操作中的 geo 进行拷贝,然后把变换信息赋予拷贝物体。他也允许你在 template时候在 c
11、opy data 中,拷贝 geo 然后然后赋予 template 的点。crease sop crease sop 的作用是当你进行 subdivide 操作的时候,用来增加 polygon 边的“creaseweight”属性。divide sopdivide sop 分割或者光滑输入的多边形。duplicate sopduplicate sop 允许你拷贝输入的原型,然后施加变换给这些拷贝。duplicate 跟 copy 不同的地方在于:在 template 上拷贝是不支持的;duplicate 是依附于上游 source 的,不可以提取出来;因为 duplicate 做的工作比较少,
12、所以比较快。edit sopedit sop 允许你互动的编辑源几何体。sop 支持 transform,soft transform ,peaks 和 soft peaks。soft transform/peak 只应用于 point。edit 的作用取决于你的建模任务中的特定需要。认真的把 edit sop 跟其他 op 联合使用能够给你提供最大的建模能力跟弹性。edit 是一个可堆积的 op,这意味着多个 edit 任务可以在一个 op 里面实现。因此,多次重复使用 edit 并不会在节点网络里面产生多个 edit sop。edit 是不可动画的。要对变换进行动画,需要使用 point,
13、transform,soft transform,peak,soft peak 跟其他那些 ops。metaballmetaball ops 允许你来生成 mataballs 和 metasuperquadric 曲面。lsystem soplsystemop 被用来生成有机的物体,比如树,植物,花。他们可以随着时间生长。box opsbox ops 用来生成可以当作 geometry 的立方体,也可以在 lattice ops 里面被分割。circle opscircle ops 被用来生成开放的或者封闭的各种各样的圆线段。curve sopcurve ops 被用来生成 polygon 的
14、,nurbs 的或者 bezier 的曲线。也有一个可选择的输入项,允许你指定某个 geometry 使得 curve 去捕捉。grid sopgrid ops 允许你以 polygon,mesh,bezier 或者 nurbs 的形式来生成栅格或者矩形,同时你也可以在polygon 的参数里面使用 open polygon 或者 individual points 来生成一根或者多个 polyline。isosurface sop isosurface op 使用精确的公式来生成参数化的曲面。line sopline ops 被用来生成 polygon,beziers 或者 nurbs 的
15、line。null sop空 ops。platnic solids sopplatonic solid ops 生成各种理想的实体。可以生成的实体包括 tetrahedron 四面体,cube 六面体,octahedron 八面体,icosahedron 二十 面体,dodecahedron 十二面体,soccer ball 足球体,utah teapot。attribute sop attribute ops 可以对 point/primitive 的属性进行 rename,并且允许进行 renderman属性的映射。clay opsclay ops 可以对任何 face 或者 hull 上
16、面用户定义的 point 施加变形。在 primitive 上面,点是在0,1之间参数化定义的。与其他,比如 point,ops 不同,他们都是操纵 cvs,而 clay ops 则是在 primitive 自己的contours 上面施加作用。在参数里面,uv sharpness 这个参数是非连续的。虽然他们的区域在0,1之间,但是他们的取值是跟primitive 的 uvdegrees 有关的。滑杆的数值越接近 1,增加的 knots 越多。在参数里面有四个不相关的方法来指定变形的方向跟强度。通过这四种方法,primitive 上的 point 通过指定的 uv 处的点的 image 来变
17、形,这导致在那个区域里面,primitive 进行了变形。bulge opsbulge ops 通过在第二输入端的一个或者多个影响物来对第一输入端的 points 进行变形。影响物“磁力场”的作用范围是通过一个 metaball 的场来定义的。这个 ops 可以说是 Magnet ops 的简化版本。bulge op 可以对多种 geo 施加效果。如果 deform group 没有被特别指定,那么不管 group type 是指定的哪种,所有的 points 都会被变形。curveclay opcurveclay op 通过轮廓外形曲线或者 3d 曲线来对一个或者多个 nurbs 或者 be
18、zier 曲面进行变形。他有一个,两个或者三个输入端。第一个输入端包含的是被变形 的物体,这个物体一定要指定。如果只有一个输入端,那么 curveclay 就会在输入的曲面上寻找轮廓外形曲线,然后沿着轮廓外形曲线进行变形。这种行为 就通过 displacementtab 来控制。如果轮廓曲线是封闭的(或者说多个轮廓曲线相交形成了封闭),那么 curveclay 一样可以对环中进行变 形。如果第三个输入端,deformed faces 被指定了,而第二个却没有,那么第一输入端就会开始扮演 rest face 的角色,同时第三输入端就开始扮演变形目标物体的角色。如果两个 deformed face
19、 和 rest faces 都被定义了,那么 rest faces 首先被映射到曲面上,曲面上的任何轮廓曲线都被忽略。然后,最后的结果轮廓曲线将向着第三输入端的目标 faces 变形。smooth opsmooth op 来光滑 polygons,meshes 和 curves,同时并不增加点。他通过对已有点的重新布置来消除粗糙。smooth op 同时也可以对浮点属性,包括 1,2,3 ,来光滑,这意味着包括颜色还有纹理坐标都可以施加效果。如果在使用 vertex 属性或者 point 属性之间产 生模糊,那么就采用 point 属性。peak soppeak op 对 primitives
20、 points edges 或者 breakpoints 沿着他们各自的法线进行移动。如果没有指定组,那么所有的点都被沿着法线进行变换。当使用 primitives 的时候,点被沿着他们的 primitives 的平均法线进行变换。这与沿着点的法线进行变换的不同之处在于,只有在指定的 group 之内的 primitives 被考虑,而点的法线属性将被忽略。soft peak sopsoft peak op 对源点沿着他们的法线进行移动旋转等等。与 Peak op 不同,soft peak op 引入了 rolloff 参数跟 radius of influence。在选择的组之内,在 rad
21、ius distance 之内的点,将被根据同比的距离进行移置。fit sopfit op 面对一系列的点,用一条 spline 来适配,或者是面对一个 m*n 的 mesh,用一个 spline 曲面来适配。在第一种情况下,那些点必须扮演的角色 就是描述一个 face primitive(polygon 或者 curve)上的 cvs。在第二种情况中,那些点必须扮演的角色是一个 hull(外壳) primitive 上的 cvs。approximation 适配将采用比源 data 少的 cvs 来生成 spline,于是生成的 spline 并不是一定通过源 points 的。interp
22、olation 适配将产生一个最精简的通过所有 points 的 spline。sweep sopsweep op 通过 cross(截面)section 输入端的 input,沿着 backbone 输入端的 input,来形成 sweep primitives,这产生一种丝带或者管装的物体。输入的截面 primitives 在 backbone 上面的每个点上面按照切线方向放置。如果给出了 reference point,那么每一个 primitive 就会旋转以指向他对应的参考点。这个 sop 的作用总的来说类似于 nurbs 的沿着路径进行挤压,不过比挤压具有更大的灵活性,在输出栏中可
23、以设定 skin 选项,也就是相当于把 skin 节点集成了进去。skin sopskin op 使用不限数的面,然后通过他们来生成一个 skin 曲面。如果给出了两个或者更多的曲面,不管怎么样,这个 op 会生成四个 skins,每个有各自的边界曲线。point opspoint ops 操控 source 里面的位置,颜色法线,纹理坐标等等还有其他很多属性。这些属性可以被增加,移除,或者 pass。他支持两个输入端,默认情况下采用第一个输入端。object merge sopobject merge op 允许你把把不同类型得 geo 物体合入到一个 sop 网络中。align sopal
24、ign op 把一组 primitives 相互对齐,或者如果在有附加得输入端得时候,通过在输入得 primitive 上面参数化得分配,来获得变动或者旋转效果。align 类似于参数化得捕捉。在这个节点中,左或者右得概念取决于上下输入输出。如果有了一个附加得输入,那么他总是右,而主输入端就是左。如果只有一个输入端,那么在对齐得每一对当中,有左有右。这就是意味着相对于不同的 primitives,一个 primitive 可能又是左又是右。一般来说,align sop 是采用两个输入端的几何体的 uv 数值来进行对齐操作的。primitive sopprimitive op 可以使得所有的 p
25、rimitive 开放或者封闭,反转所有的面的 vertex 顺序,设定 primitive 颜色和变换,旋转和放缩。他也可以对外形轮廓进行操作,也可以混和 primitives。他可以同时变换一个 spline 曲面和他的剖面。剖面只可以在 x 和 y 上面放缩,沿着 z 旋转(这是取决曲面所在的域。sort sopsort 允许你通过很多种方法给 point,vertices 和 primitives 分类。有时候 primitives 是按照需要的顺序排列的,而 point 却不是,这时候就用到了 sort。op 之内有很多种组合方式。blend opblend sop 在具有同样的拓扑
26、结构的形状之间计算出来变形效果。他可以在 16 个输入端之间运用各个输入端的通道的平均 weight 来进行 blend。它在不同的形状之间插值计算 point color 和或者纹理坐标。join opsjoin op 连接 faces 或者 hulls,然后把他们转化成为一个 primitive。这些 faces 或者 hulls 不需要是同一类型,同一顺序或者相同得 vertices 数目。他们的连接方式可以是 rounded 或者 straight,可以允许或者不需要融合 endpoints。uvtexture sopuvtexture op 赋予源 geo 纹理 uv 坐标,使得被用
27、于纹理和凸凹贴图。spring sopspring op 通过力对源 geo 进行变形和移动,来模拟物理定律。facet sopfacet 允许你控制一个给定物体的面的光滑程度。同时他也允许你巩固给定的点或者面的法线。group popgroup pop 根据各种标准来生成粒子组。Profile sop这个 sop 可以获取被某个 trim 的曲面表明的减切轮廓,然后就可以进行 trim 轮廓的操作。Trim sopTrim sop 根据映射在曲面上的减切曲线来对曲面进行减切操作,可以设定是保留减切曲线的内部曲面还是外部曲面。Reverse sopReverse sop 可以在 U,或者 V
28、上面翻转法线。Ray sopRay sop 可以将一个曲面映射附着在另一个曲面上。比如说将 a 曲面雕刻为丘陵的形态,b 曲面在 a 曲面上方,则 ray 操作就将 b 曲面附着到 a 曲面上,于是 b 曲面也成了丘陵的形态。Subdivide sop就像名字所描述的,这个 sop 是对上游节点进行细分操作,可以设定细分度,depthPolyextrude sop这是在多边形建模中最常使用到的面挤压操作。Dissolve sop类似与 delete sop,不过他可以将指定的边,点融解掉,尽量保持原来的几何结构。Blast sopBlast sop 可以删除不需要的点,边,primatives
29、 和 breakpoints。Carve sopCarve 是切开的意思。这个 sop 允许你对 nurbs 曲面或者曲线依照 UV 数值来进行减切,然后获得减切后的曲面或者曲线,还可以在参数面板中设定是获得 cut 后的曲面还是获得 3d 的参数线。Polyknit sop这 个 polyknit sop 就是编织多边形的操作。对于两个多边形,可以使用这个操作来将两个多边形连接起来。比如说 a 多边形有两个连续顶点 1,4,而 b 多边形有 两个连续顶点 2,3,则可以采用顺时针或者逆时针的顺序采用 1234 或者 4321 将这四个点连接,于是新生成了一个多边形。如果 1, 4,或者 2,
30、3 不是连续的顶点,则仍然可以新生成多边形,不过将不是一个多边形,houdini 自动在中间添加新的边。对于新生成的多边形面,可以在操作的参数面板中设定其法线指向。Fractal sop这个是分形变形节点,他可以将一个曲面变形成为一个类似山区的形状,你可以设定变形的种子,方向,细分度。Bound sopBound sop 可以根据参数中的 box 或者 sphere 设定来计算出来输入几何体的一个包围 box 或者包围sphere。他的作用也可以使用单独的 box sop 或者 sphere sop 来实现。Facet sopFacet,雕琢面的意思。这个 sop 允许你控制输入几何体的面,法
31、线细节,便于在下面的光滑操作获得更好的结果。Houdini 系列之导出模型2009 年 06 月 27 日 星期六 01:48 A.M.Houdini 是 SideEffects 的三维制作工具包,它在电影工业中使用较多,可能会用的人不是特别多。但是它的流水线非常完整而且清晰,学习起来并不难,odorce 有一个系列视频教程蛮不错的,可以从这里获得: odforce tutorial。注意,这个视频应该是针对 Houdini 6.x 的,如果打算看就个视频学习的话,不要下载目前(2007-8)Houdini 最新版本 9Beta,新界面相对 8.x 及更早的版本有很大的变化。 8.x 的界面与
32、6.x 相差不是特别大,但材质贴图流程相对 6 也有大变化。最重要的是,相对 Maya PSE 对 MEL 的限制而言,Houdini Apprentice 对学习者来说要友好得多,除了不能用于商业用途之外,几乎没有任何限制,这个协议同样适用于其 SDK(HDK)。这一点特别重要,你 可以心安理得挠盟 囱 啊龅愣 魍妫 还 蛞荒奶炷阈枰 龀隼吹亩 鞅涑汕 琀 oudini 的价格可能是个负担,目前(2007-8) 一个单点授权 Houdini Escape 报$1799 ,Houdini Master 报$7995 ,不过可以用 1/3的价钱租用一个月。我曾经特别喜欢 Maya,也曾经特别仰慕
33、 SGI,可惜 SGI 衰落了,Maya 卖给了曾经出过 3DStudio及 3DSMax 的 Autodesk,很不幸后两个软件包我也都学过却怎么也学不会,可能是思维方式对不上。对于有 Maya 基础的使用者来说,Houdini 建模的过程非常类似,可以近似的理解成 Houdini 还编辑的历史记录成操作网络(OP Network),并且你可以直接在这个网络上修改任意一步或增册操作。Houdini 导出模型的方法非常简单,在 OP Network 里找到适当的节点,通常会是建模的最终节点,击右键,Save Geometry 即可。Houdini 会根据提供的文件扩展名找到适当的导出器将三维物
34、体的数据写到文件里。要新增一种导出器也非常简单,用 HDK 写一个 小程序,真的非常小,跟标准的 console c+应用差不多,注册到 filter table 里即可。Houdini 自带有多种导出器,其中就有 Lightwave .obj 格式。这个文件格式非常简单并且是公开( obj spec, mtl spec)的。对于仅仅是导出个别物体来说,这个文件格式非常实用,能够记录有复杂纹理材质的物体,不过不支持多重纹理贴图。而为之写一个解析器也非常简单。在 sourceforge 上甚至有一个 obj 查看器,不过那家伙把事情搞大了,用 c+ boost 里的 spirit 库写了一个正而
35、八经的文法分析器,而对material 的支持却又非常有限,不妨拿来学习学习,用嘛还是自己重写一个比较爽。老实说 flex/bison 比boost spirit 看着舒服多了,当然最爽的还是 san-stone 的 Visual Parser +不过这个是商业软件要收很多钱的。唔,扯远了。另外 Nates Robins 早在 98 年就写过一个 obj 读取显示的例子。OBJ 文件的格式大体如下图所示:这个结构有几点跟 GLES 不匹配的地方:1、Facet 可能是多边形。每个 facet 由一个f行表示,一行可能会有多个顶点表示 是一个多边形。这个可以在导出模型时预先三角化,也可以取读模型
36、时即时三角化。将多边形分解成对应的一组三角形有两个思路,一个是取任一顶点与其它顶点形 成三角扇(TRIANGLE_FAN),另一个是按 TRIANGLE_STRIP 顺序分解。2、独立索引。f行每个顶点由三个索引组成,分别索引 vertex/texCoord /normal。这种索引的好处是大大减少了 texCoord 的数量,另外对于多个面的共享顶点也能方便的记录其在每个面上的 uv 及 n。但是,GLES 的 DrawElements 对每个顶点只接受一个索引,并用这个索引来查看所有的 Array。这需要一个转换,将 Mat 的所有顶点及相关数据复制成 GLES 所需要的 Array。3、
37、光照模型。Mat 里记录有光照模型,其中模型 2 跟 GLES 的硬件光照模型基本一致,其它模型需要软件模拟,有几个涉及光线追踪的会非常麻烦。4、多种贴图。DiffuseMap 可以直接用一般的贴图来实现,BumpMap 可以用 MultiTexture+ dot3RGB combine 实现,其它的也都可以模拟但较麻烦。上面已经提到,通常模型上会有一些四边形(QUAD)或多边形,而 OpenGL ES 不支持这种图元,所以得要先转换一下,另外建模时做的模型可能精度太高,需要缩减,这两都可以通过 PolyReduce SOP 完成,如果按默认的 reduce 成 100%则仅转换成三角面,就我
38、的经验这个 PolyReduce 在完成的复杂物体上消减面效果非常差,还是直接修 改网络节点更有效可控,或者在某些中间环节上插入可能也会比较实用。顺便提一下,Houdini 也能够读入 .obj 格式的模型,用一个 File SOP 指定一下文件名就可以了。Houdini 9.5 里,可以直接用 File SOP 设成 write mode 来导出文件了。下面是在 Houdini 9.5 里制作一个简单模型并导的示意图:唔,Houdini 自带的 .obj 导出程序只能导出顶点和面,不包含材质性息,另外生成文件 的格式也不太规范,有大量的“g“ 记录。这样的话,用处就非常有限了。还是 Righ
39、t Themisphere 的 Deep Exploration转得比较好,Okino 的 PolyTrans 也不错。不过既然要自己转的话,转成.obj 再分析使用实在是有够曲折的,不如直接转 成可直接被 GLES 加载的格式更爽。这样,可能得耍耍 HDK 了。9.5 里通过 Python 访问 HOM 还是比较简单的。houdini 中的重要节点 group,简直重要到死,你要说其他软件比如 maya 和 houdini 最根本的劣势是哪里?就是缺这个group,你可以通过 group 动态的得到你想要划分的数据。比如 particle,有了 group。我可以让$ID100 的parti
40、cle 绕着某和中心 Orie.$ID100 的 particle,两股particle 距离靠近到0.02 的粒子再发射粒子。而选择周围临界点的功能也是由 sop/group 完成的。point 9 以前的版本 geomtry 在没有给 point 前(还要 add),是没有 color,normal,textureUV 的,而在SOP 下对 pop 传下来的数据由 point 修改object merge很多人忽视这个节点。认为不过是从其他 tree 里得到物体,其实 object merge 是一个实体 copy 而不是instance。它会在某些时候的 merge 起关键作用(大家可以
41、去想想)CHOP / geomtry 和 SOP/channelgeomtry 可解析所有属性包括点的动画信息,这样就可以修改每个点的动画,然后再使用 SOP/channel 传回去就可以了,简直是人间神器:PAttributescreate创建自定义属性,在下层使用Attribute 又一个重要的属性修改工具,他不同于 Attributestransfer,Attribute 指向的是全局变量,换句话说,你可以通过 Attribute 来改变 global 数据,比如将表面颜色信息 Cd 去篡改 shadingcolor 信息 diff,这样就可以将自定义的属性渲染出来了bake VEX只要
42、没有使用 raytrace Attribute,所有的 shading 都可以通过 bake VEX 转换成表面颜色。CHOP/PHONME有一个变态方便工具,把 E 文 wav 用 PHONME 导入。你会发现什么?:)POP/ superRules变态啊。变态。SOP/trair主要用于修改 motionblur 采样速度 ,SOP/sort修改点的 PT 号SOP/matchpolygon根据 templete 的 PT 号来规定 source 的 PT 号HOUDINI 一般的工作流程部分2009 年 12 月 08 日 星期二 13:40一般的工作流程部分Q:我怎么选择几何体然后对其
43、进行建模?A:-在 houdini 中,你首先需要选择要进行的操作,创建对应的 OP,然后选择要施加这个操作的几何体。例如说,在视图中按 tab,选择要进行的操作,然后选择你的选择类型,再选择你的目标几何体,最后右键点击结束操作。当你在一个操作中的时候,你可以一直选择新的对象,然后右键点击来进行相同的操作。Q:如果我要删除一些东西怎么作?是否我可以像其他软件包里面的选择然后按 del 键一样进行操作?A:对于大部分的情况来说依照上面所述即可。Q:为什么相同的快捷键设定的效果却是不同的?A:houdini 的快捷键在不同的面板中的作用效果是不一样的。在任意一个面板中按 ctrl+右键来查看在这个
44、面板中所能使用的所有命令列表。Q:在 houdini 当中我看到好多的面板,请问我怎么将他们重置,有时候他们看着很混乱A:要重置所有的面板分布,一个快捷的方法就是在 desktops 菜单中选择各种预制的面板布局。建议用户体验各种内置的面板布局,来更好的熟悉 houdini 的工作环境。另外一点要注意到的就是每一个模块的各个面板的顶部条的颜色都不一样,这种颜色分别能够帮助你在各个模块之间区分。Houdini 还提供了向前和向后的导航键,所以如果你改变了某个面板,那么你可以点击 alt+左方向键来回到原来的面板。Q:我注意到在 houdini 的右上角部分有一个 always/never/cha
45、nges 按钮,不过不了解他们的具体含义A:这个按钮允许你设定不同等级的更新Always 模式下, houdini 对你所作的各种微小操作仍然进行 cook,所谓的微小操作指的是比如你在视图中移动操作手柄的时时刻刻。Changes 模式下,houdini 只有在你的操作完成了之后才进行更新Never 模式下,除非你点击这个按钮,不然 houdini 就不进行更新。Q:我已经从别的软件包中导出了一个模型,不过我不知道怎么将他导入到 houdini 当中A:首先你需要创建一个物体,也就是 geometry op,创建了他之后,你可以在里面创建一个 file sop,然后你就可以从磁盘上读入模型了。
46、Q:我怎么才能够改变视图的设定,比如说网格的尺寸A:在视图中点击 d,则当前视图的设定面板出现。里面的参数设定运行你改变比如说网格的尺寸,视图的背景颜色,比如说黑色或者灰色,还能够指定一张图片为视图的背景图片。Q:我怎么才能够改变快捷键设定?A:要改变一个操作的快捷键,则 alt+ctrl+shift 加点击这个操作,则快捷键设定管理器出现,你可以改变为任意的快捷键。Q:我如何最大化一个视图?A:缺省设定下的快捷键为 alt+,不过在每一个视图的右上角都有一个最大化当前视图的按钮。渲染部分Q:我已经制作了一段动画,那么我怎么将他们渲染出来呢?A:houdini 的渲染是通过 render ou
47、tput 节点来控制的。将某个面板切换到 output 面板,然后选择缺省的渲染节点中的一个。在参数设定面板中你可以看到一个 output picture 区域。一般可接受的图片序列输出格式为.$F.pic 。文件的名称可以自由设定,$F 是 houdini 中的变量,代表帧数,而 pic 则是图片的格式。Houdini 能够输出多种常用图片格式,比如 tiff,jpg ,tga,sgi 等等。Q:当我使用视图下面的 render 按钮渲染当前视图的时候,弹出来的总是一个 320*240 的小窗口,我怎么能够改变渲染的尺寸呢?A:有两种方法:第一种,你可以在摄像机的参数设定中设定分辨率尺寸。在
48、摄像机的参数面板中,切换到 view tab,然后在分辨率区域设定,当然你也可以手动设定自定义尺寸。第二种,你可以在渲染输出的时候设定。在渲染输出节点的参数面板中找到 override default res 栏,勾选他,然后就可以设定各种尺寸进行渲染。Q:我准备渲染我的场景,不过当我点击 render 按钮以后并没有出现渲染图像,怎么回事?A:请查看你是否给正确的曲面 op 设定的 render 标签 flag。在 houdini 中,你可以给几何体设定显示display 或者 render flag。Render flag 是紫色的,而 display flag 是蓝色的。Q:我是否能够通
49、过命令行使用 houdini 进行渲染?A:要进行命令行渲染,你需要使用 houdini master,而 houdini select 和 halo 并不支持这个特性。要进行命令行渲染,你首先需要在 houdini 内生成一个或者一序列 ifd,然后你就可以使用 mantra 命令进行命令行渲染。在命令行中输入 mantra -查看渲染设定。Q:什么是所谓的 ifd?A:所谓的 IFD 代表的是 instantaneous frame description 瞬时帧描述。所有的几何体,相机信息,灯光信息,shader 和纹理参考都包含在 IFD 内。Mantra Version: VMantra 7.0.192 compiled on 09/17/04Usage: mantra options outputimageWill read an IFD from standard input and render the image described.Rendering Options:-r Force mantra into ray tracing mode (no micro-polygon)-q Set render quality (0 to 10)Below 9 turns off mot