Houdini 命令手册.docx
- 文档编号:30712148
- 上传时间:2023-08-19
- 格式:DOCX
- 页数:25
- 大小:42.66KB
Houdini 命令手册.docx
《Houdini 命令手册.docx》由会员分享,可在线阅读,更多相关《Houdini 命令手册.docx(25页珍藏版)》请在冰豆网上搜索。
Houdini命令手册
Houdini命令手册
2011-05-0417:
48:
49|分类:
Houdini|标签:
|字号大中小订阅
L-SYSTEM
关于lsystem的介绍
在houdini内提供了一系列强大特别的工具,来帮助用户实现各种先进的特效,他们中的一个就是lsystemsop。
这个lsystemsop提供了一种生成复杂有机生长动画的手段,我们可以使用他来模拟诸如树木,闪电以及其它一些包含有分支的结构。
建立在self-similarity的基础上
有多个因素联合发挥作用来表现出来了有机生物比如植物的复杂结构,从而表现出来他们的特色,这些因素包括了:
对称symmetry;
自我相似性self-similarity;
发育法则developmentalalgorithms
在lsystem内,我们主要关注的是第二条法则。
Self-similarity描述出来了包含在植物内部的分形结构特点。
关于self-similarity的准确描述参看BenoitMandlebrot的定义:
如果某一个形状的一个部分类似与其自身形状,则这个形状以及这个部分的特性被称为self-similar。
obj
ambientobject
这个ambientobject在给出的一个场景中,控制环境灯光的颜色和强度。
blendobject
这个blendobject是一个多输入的object。
她允许可动画的输入,融合输入跟部分继承的变换。
boneobject
这个boneobject是一个可以用于关节链的object。
cameraobject
cameraobject是一个扮演摄像机角色的object。
你通过他来查看你的场景,然后从他的视角来渲染场景。
fetchobject通过拷贝另一个object的变换信息来获得自己的变换信息。
这表示通过他可以很容易的获得包含在一个subnet里面得一个object得变换信息,然后可以在object层级里面,把获得得信息做为父来来连接一个object。
atmosphereobject
这个object在渲染得时候生成雾的效果。
forceobject
forceobject被用来在object――level中表现对某几个pops(包括force,fan,还有rbdconstrainpops)的作用效果。
这个object提供在world――level中对这些pops的可视化表现,同时允许你在world――level的角度中控制这些pops的参数。
geometryobject
geometryobject是一个被用来渲染的object。
handleobject
handleobject被设计以通过几个末端操纵器来对各个成组的骨骼实行操控。
他被用来跟chop的handle进行联合应用。
如果有多个bones,那么会有对应的handle附属到他们身上。
lightobject
lightobject是一个发射光到其他物体上的object。
你也可以从他的视角看,或者渲染。
macrophoneobject
macrophoneobject是在使用spatialaudiochop的时候,定义一个听点。
一个spatialaudiochop可以使用多个macrophones,这样子可以生成立体声或者环绕声效果,同时还能生长各种音效,包括多普勒效应,随着距离表现出来的音量损失,干涉,大气过滤,定位发声。
要设定一个spatialaudio场景,要有一个或者多个soundobject被用来发射声波。
至少需要一个macrophone被用来捕捉声波。
然后需要一个spatialaudiochop来渲染音波。
如果场景中有障碍物或者滤波器,那么至少还需要一个acousticchop被用来设计频率的过滤。
移动sound和microphoneobject会在音量和音调上产生各种变化,特别是如果有任意一个object是具有方向性的时候,效果更明显。
设定一个方向性的macrophone或者soundobject非常类似于设定一个方向性的灯。
nullobject
nullobject扮演的是一个在场景中空间占位的角色。
他可以被用来表示一个空间坐标位置。
这样子可以被用来当作目标物体,或者可以做为ik链的末端效果器。
nullobject的变换被用来在rib或者ifd渲染中定义坐标系统。
soundobject
soundobject被用来为spatialaudiochop定义一个声波发射点。
多个音源可以通过一个spatialaudiochop来产生立体声或者环绕声效果,还包括各种特别音效,比如多普勒效应,随着距离表现出来的音量损失,干涉,大气过滤,定位发声。
要设定一个spatialaudio场景,要有一个或者多个soundobject被用来发射声波。
至少需要一个macrophone被用来捕捉声波。
然后需要一个spatialaudiochop来渲染音波。
如果场景中有障碍物或者滤波器,那么至少还需要一个acousticchop被用来设计频率的过滤。
移动sound和microphoneobject会在音量和音调上产生各种变化,特别是如果有任意一个object是具有方向性的时候,效果更明显。
设定一个方向性的macrophone或者soundobject非常类似于设定一个方向性的灯。
subnetobject
subnetobject被用来对复杂的节点网进行简化。
他可以把几个object放到一个节点里面。
这个object提供了四个input,以用来把subnet里面的object跟上游的object进行连接。
switcherobject
switcherobject允许你在需要观察或者渲染你的场景的时候,在不同的摄像机之间切换。
可以给switcher设定关键帧来获得类似转场镜头切换的效果。
sop
clipsop
clipsop使用一个无限的平面剪切,折叠多边形几何体。
capsop
capsop被用来使用flat或者rounded面来对开放区域进行封口。
meshes通过在uv方向扩展,或者通过增加面来实现cap。
faces通过扩展face或者一个空cap来实现cap。
boundsop
boundsop通过计算,然后给输入的几何体生成一个包围的体积体。
这个体积体可以是box或者sphere。
如果是box的话,那么就可以应用到了lattice操作上。
combsop
combsop是被设计用来允许你在视图中直观的调整曲面点的法线。
正如他的名字所暗示的,他常常被用来初始化毛发生长的依据法线。
在视图中,通过在曲面点法线上拖动笔刷,法线就随着拖动的方向倾斜。
copysop
copysop允许你对其他操作中的geo进行拷贝,然后把变换信息赋予拷贝物体。
他也允许你在template时候在copydata中,拷贝geo然后然后赋予template的点。
creasesop
creasesop的作用是当你进行subdivide操作的时候,用来增加polygon边的“creaseweight”属性。
dividesop
dividesop分割或者光滑输入的多边形。
duplicatesop
duplicatesop允许你拷贝输入的原型,然后施加变换给这些拷贝。
duplicate跟copy不同的地方在于:
在template上拷贝是不支持的;duplicate是依附于上游source的,不可以提取出来;因为duplicate做的工作比较少,所以比较快。
editsop
editsop允许你互动的编辑源几何体。
sop支持transform,softtransform,peaks和softpeaks。
softtransform/peak只应用于point。
edit的作用取决于你的建模任务中的特定需要。
认真的把editsop跟其他op联合使用能够给你提供最大的建模能力跟弹性。
edit是一个可堆积的op,这意味着多个edit任务可以在一个op里面实现。
因此,多次重复使用edit并不会在节点网络里面产生多个editsop。
edit是不可动画的。
要对变换进行动画,需要使用point,transform,softtransform,peak,softpeak跟其他那些ops。
metaball
metaballops允许你来生成mataballs和meta-superquadric曲面。
lsystemsop
lsystemop被用来生成有机的物体,比如树,植物,花。
他们可以随着时间生长。
boxops
boxops用来生成可以当作geometry的立方体,也可以在latticeops里面被分割。
circleops
circleops被用来生成开放的或者封闭的各种各样的圆线段。
curvesop
curveops被用来生成polygon的,nurbs的或者bezier的曲线。
也有一个可选择的输入项,允许你指定某个geometry使得curve去捕捉。
gridsop
gridops允许你以polygon,mesh,bezier或者nurbs的形式来生成栅格或者矩形,同时你也可以在polygon的参数里面使用openpolygon或者individualpoints来生成一根或者多个polyline。
isosurfacesopisosurfaceop使用精确的公式来生成参数化的曲面。
linesop
lineops被用来生成polygon,beziers或者nurbs的line。
nullsop
空ops。
platnicsolidssop
platonicsolidops生成各种理想的实体。
可以生成的实体包括tetrahedron四面体,cube六面体,octahedron八面体,icosahedron二十面体,dodecahedron十二面体,soccerball足球体,utahteapot。
attributesopattributeops可以对point/primitive的属性进行rename,并且允许进行renderman属性的映射。
clayops
clayops可以对任何face或者hull上面用户定义的point施加变形。
在primitive上面,点是在[0,1]之间参数化定义的。
与其他,比如point,ops不同,他们都是操纵cvs,而clayops则是在primitive自己的contours上面施加作用。
在参数里面,uvsharpness这个参数是非连续的。
虽然他们的区域在[0,1]之间,但是他们的取值是跟primitive的uvdegrees有关的。
滑杆的数值越接近1,增加的knots越多。
在参数里面有四个不相关的方法来指定变形的方向跟强度。
通过这四种方法,primitive上的point通过指定的uv处的点的image来变形,这导致在那个区域里面,primitive进行了变形。
bulgeops
bulgeops通过在第二输入端的一个或者多个影响物来对第一输入端的points进行变形。
影响物“磁力场”的作用范围是通过一个metaball的场来定义的。
这个ops可以说是Magnetops的简化版本。
bulgeop可以对多种geo施加效果。
如果deformgroup没有被特别指定,那么不管grouptype是指定的哪种,所有的points都会被变形。
curveclayop
curveclayop通过轮廓外形曲线或者3d曲线来对一个或者多个nurbs或者bezier曲面进行变形。
他有一个,两个或者三个输入端。
第一个输入端包含的是被变形的物体,这个物体一定要指定。
如果只有一个输入端,那么curveclay就会在输入的曲面上寻找轮廓外形曲线,然后沿着轮廓外形曲线进行变形。
这种行为就通过displacementtab来控制。
如果轮廓曲线是封闭的(或者说多个轮廓曲线相交形成了封闭),那么curveclay一样可以对环中进行变形。
如果第三个输入端,deformedfaces被指定了,而第二个却没有,那么第一输入端就会开始扮演restface的角色,同时第三输入端就开始扮演变形目标物体的角色。
如果两个deformedface和restfaces都被定义了,那么restfaces首先被映射到曲面上,曲面上的任何轮廓曲线都被忽略。
然后,最后的结果轮廓曲线将向着第三输入端的目标faces变形。
smoothop
smoothop来光滑polygons,meshes和curves,同时并不增加点。
他通过对已有点的重新布置来消除粗糙。
smoothop同时也可以对浮点属性,包括1,2,3,来光滑,这意味着包括颜色还有纹理坐标都可以施加效果。
如果在使用vertex属性或者point属性之间产生模糊,那么就采用point属性。
peaksop
peakop对primitivespointsedges或者breakpoints沿着他们各自的法线进行移动。
如果没有指定组,那么所有的点都被沿着法线进行变换。
当使用primitives的时候,点被沿着他们的primitives的平均法线进行变换。
这与沿着点的法线进行变换的不同之处在于,只有在指定的group之内的primitives被考虑,而点的法线属性将被忽略。
softpeaksop
softpeakop对源点沿着他们的法线进行移动旋转等等。
与Peakop不同,softpeakop引入了rolloff参数跟radiusofinfluence。
在选择的组之内,在radiusdistance之内的点,将被根据同比的距离进行移置。
fitsop
fitop面对一系列的点,用一条spline来适配,或者是面对一个m*n的mesh,用一个spline曲面来适配。
在第一种情况下,那些点必须扮演的角色就是描述一个faceprimitive(polygon或者curve)上的cvs。
在第二种情况中,那些点必须扮演的角色是一个hull(外壳)
primitive上的cvs。
approximation适配将采用比源data少的cvs来生成spline,于是生成的spline并不是一定通过源points的。
interpolation适配将产生一个最精简的通过所有points的spline。
sweepsop
sweepop通过cross(截面)-section输入端的input,沿着backbone输入端的input,来形成sweepprimitives,这产生一种丝带或者管装的物体。
输入的截面primitives在backbone上面的每个点上面按照切线方向放置。
如果给出了referencepoint,那么每一个primitive就会旋转以指向他对应的参考点。
这个sop的作用总的来说类似于nurbs的沿着路径进行挤压,不过比挤压具有更大的灵活性,在输出栏中可以设定skin选项,也就是相当于把skin节点集成了进去。
skinsop
skinop使用不限数的面,然后通过他们来生成一个skin曲面。
如果给出了两个或者更多的曲面,不管怎么样,这个op会生成四个skins,每个有各自的边界曲线。
pointops
pointops操控source里面的位置,颜色法线,纹理坐标等等还有其他很多属性。
这些属性可以被增加,移除,或者pass。
他支持两个输入端,默认情况下采用第一个输入端。
objectmergesop
objectmergeop允许你把把不同类型得geo物体合入到一个sop网络中。
alignsop
alignop把一组primitives相互对齐,或者如果在有附加得输入端得时候,通过在输入得primitive上面参数化得分配,来获得变动或者旋转效果。
align类似于参数化得捕捉。
在这个节点中,左或者右得概念取决于上下输入输出。
如果有了一个附加得输入,那么他总是右,而主输入端就是左。
如果只有一个输入端,那么在
对齐得每一对当中,有左有右。
这就是意味着相对于不同的primitives,一个primitive可能又是左又是右。
一般来说,alignsop是采用两个输入端的几何体的uv数值来进行对齐操作的。
primitivesop
primitiveop可以使得所有的primitive开放或者封闭,反转所有的面的vertex顺序,设定primitive颜色和变换,旋转和放缩。
他也可以对外形轮廓进行操作,也可以混和primitives。
他可以同时变换一个spline曲面和他的剖面。
剖面只可以在x和y上面放缩,沿着z旋转(这是取决曲面所在的域。
sortsop
sort允许你通过很多种方法给point,vertices和primitives分类。
有时候primitives是按照需要的顺序排列的,而point却不是,这时候就用到了sort。
op之内有很多种组合方式。
blendop
blendsop在具有同样的拓扑结构的形状之间计算出来变形效果。
他可以在16个输入端之间运用各个输入端的通道的平均weight来进行blend。
它在不同的形状之间插值计算pointcolor和或者纹理坐标。
joinops
joinop连接faces或者hulls,然后把他们转化成为一个primitive。
这些faces或者hulls不需要是同一类型,同一顺序或者相同得vertices数目。
他们的连接方式可以是rounded或者straight,可以允许或者不需要融合endpoints。
uvtexturesop
uvtextureop赋予源geo纹理uv坐标,使得被用于纹理和凸凹贴图。
springsop
springop通过力对源geo进行变形和移动,来模拟物理定律。
facetsop
facet允许你控制一个给定物体的面的光滑程度。
同时他也允许你巩固给定的点或者面的法线。
grouppop
grouppop根据各种标准来生成粒子组。
Profilesop
这个sop可以获取被某个trim的曲面表明的减切轮廓,然后就可以进行trim轮廓的操作。
Trimsop
Trimsop根据映射在曲面上的减切曲线来对曲面进行减切操作,可以设定是保留减切曲线的内部曲面还是外部曲面。
Reversesop
Reversesop可以在U,或者V上面翻转法线。
Raysop
Raysop可以将一个曲面映射附着在另一个曲面上。
比如说将a曲面雕刻为丘陵的形态,b曲面在a曲面上方,则ray操作就将b曲面附着到a曲面上,于是b曲面也成了丘陵的形态。
Subdividesop
就像名字所描述的,这个sop是对上游节点进行细分操作,可以设定细分度,depth
Polyextrudesop
这是在多边形建模中最常使用到的面挤压操作。
Dissolvesop
类似与deletesop,不过他可以将指定的边,点融解掉,尽量保持原来的几何结构。
Blastsop
Blastsop可以删除不需要的点,边,primatives和breakpoints。
Carvesop
Carve是切开的意思。
这个sop允许你对nurbs曲面或者曲线依照UV数值来进行减切,然后获得减切后的曲面或者曲线,还可以在参数面板中设定是获得cut后的曲面还是获得3d的参数线。
Polyknitsop
这个polyknitsop就是编织多边形的操作。
对于两个多边形,可以使用这个操作来将两个多边形连接起来。
比如说a多边形有两个连续顶点1,4,而b多边形有两个连续顶点2,3,则可以采用顺时针或者逆时针的顺序采用1234或者4321将这四个点连接,于是新生成了一个多边形。
如果1,4,或者2,3不是连续的顶点,则仍然可以新生成多边形,不过将不是一个多边形,houdini自动在中间添加新的边。
对于新生成的多边形面,可以在操作的参数面板中设定其法线指向。
Fractalsop
这个是分形变形节点,他可以将一个曲面变形成为一个类似山区的形状,你可以设定变形的种子,方向,细分度。
Boundsop
Boundsop可以根据参数中的box或者sphere设定来计算出来输入几何体的一个包围box或者包围sphere。
他的作用也可以使用单独的boxsop或者spheresop来实现。
Facetsop
Facet,雕琢面的意思。
这个sop允许你控制输入几何体的面,法线细节,便于在下面的光滑操作获得更好的结果。
Houdini系列之导出模型
2009年06月27日星期六01:
48A.M.
Houdini是SideEffects的三维制作工具包,它在电影工业中使用较多,可能会用的人不是特别多。
但是它的流水线非常完整而且清晰,学习起来并不难,odorce有一个系列视频教程蛮不错的,可以从这里获得:
odforcetutorial。
注意,这个视频应该是针对Houdini6.x的,如果打算看就个视频学习的话,不要下载目前(2007-8)Houdini最新版本9Beta,新界面相对8.x及更早的版本有很大的变化。
8.x的界面与6.x相差不是特别大,但材质贴图流程相对6也有大变化。
最重要的是,相对MayaPSE对MEL的限制而言,HoudiniApprentice对学习者来说要友好得多,除了不能用于商业用途之外,几乎没有任何限制,这个协议同样适用于其SDK(HDK)。
这一点特别重要,你可以心安理得挠盟囱啊⒆龅愣魍妫还蛞荒奶炷阈枰龀隼吹亩鞅涑汕琀oudini的价格可能是个负担,目前(2007-8)一个单点授权HoudiniEscape报$1799,HoudiniMaster报$7995,不过可以用1/3的价钱租用一个月。
我曾经特别喜欢Maya,也曾经特别仰慕SGI,可惜SGI衰落了,Maya卖给了曾经出过3DStudio及3DSMax的Autodesk,很不幸后两个软件包我也都学过却怎么也学不会,可能是思维方式对不上。
对于有Maya基础的使用者来说,Houdini建模的过程非常类似,可以近似的理解成Houdini还编辑的历史记录成操作网络(OPNetwork),并且你可以直接在这个网络上修改任意一步或增册操作。
Houdini导出模型的方法非常简单,在OPNetwork里找到适当的节点,通常会是建模的最终节点,击右键,SaveGeometry即可。
Houdini会根据提供的文件扩展名找到适当的导出器将三维物体的数据写到文件里。
要新增一种导出器也非常简单,用HDK写一个小程序,真的非常小,跟标准的consolec++应用差不多,注册到filtertable里即可。
Houdini自带有多种导出器,其中就有Lightwave.obj格式。
这个文件格式非常简单并且是公开(objspec,mtlspec)的。
对于仅仅是导出个别物体来说,这个文件格式非常实用,能够记录有复杂纹理材质的物体,不过不支持多重纹理贴图。
而为之写一个解析器也非常简单。
在sourceforge上甚至有一个obj查看器,不过那家伙把事情搞大了,用c++boost里的spirit库写了一个正而八经的文法分析器,而对material的支持却又非常有限,不妨拿来学习学习,用嘛还是自己重写一个比较爽。
老实说fl
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Houdini 命令手册 命令 手册