ue4导出模型带材质贴图_houdini | 第一章 第三节 贴图与顶点动画

915a3778a5ba9e36bbc88b29c4a961e1.png

大家好,上篇文章介绍了houdini的建模思路与常用节点.本篇文章将介绍houdini材质贴图与顶点动画的设置,其中会用到game_dev模块的节点.若未安装,请查看第一节基础入门与实践中的介绍进行安装.

文末有我做的houdini与ue4的文件,有兴趣的可以下载当作参考.

1贴图材质

houdini中的材质导出有两种常用方式

  1. 将材质与模型导出为fbx格式.
  2. 将模型导出为hda格式,同时链接游戏引擎中已有的材质(本文以ue4为例).

1.导出为fbx格式


节点设置

hip文件中的节点构造,左侧一列6个节点为导出fbx格式的设置.

35c556c1e662e90b871c56092fd929d3.png

节点介绍

1.box 节点创建一个box立方体.

2.uvunwarp 节点展开uv.

3.sop_quickmaterial 节点是创建一个简单材质.

4.transform 节点将模型放大100倍,因为houdini与ue4的默认单位不同,houdini的单位是米,ue4的单位是厘米.可以根据个人喜好将单位设置为相同,我已经习惯这两种单位,所以就不改了.

5.out_fbx 此节点无意义,只是标识作用,提醒自己.

6.rop_fbx是houdini的fbx导出节点,file菜单也可以导出fbx格式文件,看个人习惯

fbx导入ue4的效果

6e1ff11a7f1cff06737fd2c383ff7712.png

2.导出为HDA格式

上图右侧的box_tex_test节点是一个hda节点,将hda导入ue4时只有一个hda文件,因为hda需要引用ue4的材质路径,所以我们要先在ue4手动创建一个材质球.

hda的内部结构如下:

35cbea57d1a18aba26dfd727e0233bea.png

节点介绍

box与 uvunwarp节点与上文作用相同.比较特殊的是unreal_material节点.节点内部的string一栏为Material'/Game/test/tex/hda/NewMaterial.NewMaterial',即为上文创建的材质路径,可以理解为给box赋予一个ue4的材质.

1915d23f8193ff20f8f097307dd413d6.png

材质路径的获取方法

先右键在ue4中设置好的材质球,然后点击复制引用,这时材质球的路径就复制到剪切板了.然后复制到unreal_material的string一栏即可.注意直接ctrl+v复制,不要右键复制,具体原因可以自己试试.

7143ceb89302907293d9157aca99d3b0.png

设置结果

b3296e2124c7e50ce433cf019e8ce05c.png

也可以在ue4中hda面板的generated meshes进行手动调整材质,在hda生成关系很复杂的时候,此法也很有用。

ac1e51bc4b2539eece47ebacf6547597.png

2顶点动画顶点动画的操作分为obj层级与out层级,当前的节点操作都在obj层级.

47da020d953ccfa1054a8c776542371b.png

节点介绍:

1,box 节点创建一个box立方体.

2.transform 节点将模型向上移动2米,方便后面的动力学解算.

3.uvunwarp 节点展开uv.

4.vdbfrompolygons 节点采用density模式,将polygon转为体积.

5.,scatter 节点是随机撒点,代表着破碎的块数.

6.sop_rbd_fracture 节点是将模型破碎成块.

7.simple_rbd 节点是是制作简单的动力学解算.

效果如下

58cfec663201e3020c42b157b6f499f7.gif

导出设置

导出设置在out层级,进入out层级后创建vertex_animation_textures节点,vertex_animation_textures是houdini导出顶点动画的专用节点,以下本例的设置:

b4776691673fa5dbb415acaf581c2e6f.png

参数设置介绍

1.先在method中选择rigid模型,因为本例是刚体破碎,所以选择rigid模式,可根据自己的需要选择其它的soft,fluid,sprite模式.

2.geometry path是导出模型的位置,position map path是导出的位置贴图的路径,rotation是导出的旋转贴图的路径.

3.frame settings是导出的解算范围,我只导出了1-100帧的解算结果.

设置完毕,点击render导出模型和贴图,然后导入ue4.

0c30e7efaf2f2767e30f2d9d97797ba2.png

创建一个材质球,回到houdini中,将rigid vertex animation中的内容复制到材质蓝图中,这是houdini为用户预置的材质节点.可以直接拿来使用.bounding max, bounding max1,bounding min,bounding min1四个值需复制到下文中的材质实例的相应参数栏.

f74456bb43663196488a546f77429537.png

注意要在细节面板中搜索uv,然后将num customized uvs设置为2.

080b64d00f88fa1823c47cc8347c9127.png

创建完材质之后创建材质实例,修改材质实例中的bounding max, bounding max1,bounding min,bounding min1为houdini中的值为上文houdini里相应的值,同时修改number of frames总帧数,替换pos图,rot图,下图是我做的修改.

f840457194b9e074e46120c8edce4725.png

最后效果

17be7e69f6547aafc38411181ab34311.gif

End -


版权声明:本文为weixin_39833469原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。