发新话题
打印

如何建立Poser中的Figure初探(1)

如何建立Poser中的Figure初探(1)

作者:广州小肥

  可能不少使用了POSER一段时间的朋友都有同感就是POSER人物仓库中的人物、衣服的模型较少,其实POSER除了能输入其它三维软件建立的模型外,还能用其建立一些可以很好地配合人体运动的衣服等模型。在这里我通过建立一个能运动的坦克模型来示范一下如何在POSER中建立可运动的FIGURE的原理,希望大家一同研究一下POSER中人体模型的建立技巧。

  首先,先介绍一下3D MAX的两个插件,由于POSER是使用OBJ文件作为它的模型的存储文件,在3D MAX中要输入OBJ文件需要安装有关的OBJ输入(OBJ2MAX)、输出插件(MAX2OBJ)。大家到以下地址能找到有关的插件http://www.habware.at/或http://www.chez.com/stephdesign/free_frame.htm。下载解压后把有关的文件拷贝到MAX的PLUGIN目录下就可以了,其附带有详细的使用说明,在下面我配合示例把有用的说明一下。

好了,开始我们的建模吧:

第一步、首先是在三维软件中建立好有关的模型,我使用的是3D MAX;

第二步、把建好的模型合理地分组合并——以后FIGURE的可运动部分的命名(也就是以后“人体”的各个部位)就靠这一步。为方便以后在POSER设置材质,在MAX把所有使用的材质命名好。

TOP

第三步、把建好的模型的比例调整到适合POSER人体的比例、调整模型的中心点位置:

  POSER的模型的比例相对3D MAX来说可以说是很小。1.6~1.7米高的标准成年妇女的模型输入MAX后大概只有0.6~0.7CM高(MAX中的单位)。使用MAX中的缩放工具、移动工具调整好模型的大小和模型的位置。为了更方便地调整模型的比例和位置,我采取输入一个用POSER输出的标准的人体到MAX中作参考的方法。如下图,该图中的网格的大小我设置为0.1CM,由此可见人体的高度只有0.7CM。





  上图是使用OBJ2MAX输入参考人体时的对话框,其中Vertex scale中输入1.0,是为了得到人体在MAX中的实际高度。如果输入是为了建立Morph Target的话可以把该选项设为较大的值,以便于调整,只需要在输出时把相关的选项设置成相应的缩小比例即可。另外,还要注意的是不要选择Rotate model和Center pivot选项,否则的话,输入的参考人体会依据Y、Z轴旋转或调整到MAX默认的中心轴点上,而依据该参考人体调整好的模型在输入到POSER后会翻过来或跑到一边去了。

其实在建好模型后,不一定要输入参考模型来对比,进入POSER后也可以调整模型的大小,但由于MAX默认的坐标轴的中心点与POSER有所不同,所以,如果不调整后再输出,在导入到POSER后要调整模型的位置,在POSER中调整模型的位置比MAX难得多。用对比的方法是我走了一大段弯路后想到的笨办法,如果哪位大虾想到更好的方法,欢迎交流。

TOP

第四步:当然是输出OBJ文件了,点选MAX的文件菜单下的EXPORT命令,选择文件类型为OBJ,输出OBJ模型文件,但记得先把参考人体删掉哦!

MAX2OBJ的界面如下图,由于其关系到输出的模型能否正确地输入到POSER,所以我详细地介绍一下,如果大家想了解更多的情况可阅读其的帮助文件。由于我的英文水平有限,如果说的不对的请大家指出。



该对话框分为三部分,我用紫色的数子表示,第一部分(Group and Material),是确定输出的模型的分组和材质。Group by是指输出时使用什么来分组,其中Object是以建模时所建物体的名称分组,Material是按材质分组,Defaul是把整个模型当做一个组。本选项关系到输出模型在POSER中的各个部位的名称和分组,要根据您建模时使用的分组形式,我使用的是Group by Object。第二部分(Geometry),是确定输出几何体的有关参数,Rotate model与OBJ2MAX的一样;Faces:是确定输出的几何体的各个面的构成,可以选择三角面(Trianles)、四方面(Quads)、多边形面(Polygons),可根据您建模时使用什么建模方式来确定;Texture coordinates是确定是否建立贴图坐标;Normals确定是否建立法线;Smooth groups确定是否光滑组;Vertex scale与输入时的值相对应,如果改变了输入的值,输出时要调整相对的比例。第三部分(File),最重要的是“#of Digits”(箭头所指的地方),它确定了输出文件中模型的精度,它是如何运作我都不是很清楚,经过调试,输出时该项输入为“12”时才行。如果使用默认的“1”,输出到POSER中的不知是何物,大家一定要注意。

第五步:把建好的OBJ文件拷贝到POSER目录中(X:\Program Files\MetaCreations\Poser 4\Runtime\Geometries\……);

当然也可以放到其它的目录,但如果在下一步中使用PHIBUILDER的话,还是放到上面提到的目录中为好,PHIBUILDER使用该目录为默认目录,如果不是很熟识该软件的使用的话,会出现OBJ文件连接错误的。还有就是如果建立好了POSER中的FIGURE后,不要随便把OBJ文件移到别的地方,除非您知道如何修改POSER建立好的CR2文件,不然的话,将无法正确地调用模型(在WIN98中会出错,WIN2000中将无法显示该模型)。

TOP

第六步:使用PHIBUILDER把模型中各个部位的关系确定下来并生成PHI文件。

  PHIBUILDER是国外一位朋友编写的一个建立PHI文件的好工具,通过它能很方便地建立PHI文件。而PHI文件是POSER建立FIGURE的途径。PHIBUILDER的工作环境如下:



  很多朋友可能是第一次使用PHIBUILDER,故我先简要介绍一下它的工作界面,如果朋友们想详细了解其功能,可翻看其帮助文件。顶部的标题栏、菜单栏估计不用我多说了。我讲讲其它的三部分,我用蓝色的数字表示有关的栏目。

第1是工具行:

第一、二个按钮,估计也不用我多说了。

OBJ按钮是用以引入OBJ文件,从弹出的文件选择对话框中选择您刚建好的OBJ模型文件,PHIBUILDER把读取到的各个分组(也就是以后人体或物体的各个部位)显示在第二部分的主工作窗里。

TEST按钮是测试所建的PHI是否有问题,如果有问题将会显示在第三部分的显示信息栏中。

TEXT、TREE按钮是两种显示形式的按钮,TEXT显示为文本状态,可以人工输入新的文字,如:IK CHAIN等。当该按钮按下时右边会多出两个按钮(如:上图),它们功能分别是把组的级别降低一级、升高一级,也只有该状态下才能把一个分组提升到第一级。

TREE是以树状显示有关的各个组,这样能比较方便地建立、调整各种关系。

TOP

第2是主工作窗口,在这里能通过鼠标拖动各个组把它们连接起来(Tree按钮按下时),还可以双击各个组,弹出组的编辑对话框,为组改名、改变旋转轴向等等。至于具体的内容,下面再详细分析。

第3是PHI状态栏,显示出错信息等。

以下是建好关系后的图示,此时为Tree显示状态,可对比上图看看有什么不同:



  由于我不记得POSER4是否就附有PHIBUILDER(PHIBUILDER是在POSER3时就有了的),加上我已没法找到其下载的地址,故没提供下载连接(如果朋友们想要可来信)。如果有些朋友没有该软件那该怎么办了,不用焦急,请等我慢慢道来。其实PHI文件是个文本文件,可以用所有的文本编辑器编写,只要遵循有关的规定就可以了。现把PHI的结构说明一下,PHI的结构如下:

objFile :Runtime:Geometries:John:M12k01a.obj
1 TankBody xyz
2 FDoor01 xyz
2 Turret xyz
3 TDoor01 xyz
3 TDoor02 xyz
3 BigGun xyz

objFile行说明了OBJ文件的存储目录,它与普通的目录表示不同,以“:”代替了“\”(MAC系统的目录表示方式),“:Runtime:Geometries”为POSER默认的模型的存储目录;“:John”为我自己的模型的目录;“:M12k01a.obj”为我刚建的坦克的模型。objFile行的路径一定要准确,否则POSER无法转换模型。

“1 TankBody xyz”、“2 FDoor01 xyz”为各个组(部件)的关系、名字、旋转轴向。数字代表级别,1为父物体,2为子物体,如此类推。XYZ为旋转的轴向。POSER中人体部位的弯曲、扭曲、旋转等动作看起来很深奥,其实就是围绕三个轴向的旋转。本来XYZ的排序要根据不同的部位有所不同(在建人体的模型时较重要,因为POSER默认是TWIST——SIDE BY SIDE——BEND这个顺序,如果轴向不对,就会出现不是按要求TWIST等现象),但由于进入POSER中还可以调整,故在这里我有意使用了默认值,到了后面我会说明如何调整。

好了,至此PHI文件已建好,保存为PHI文件以便POSER转换,可以进入下一步了。

TOP

发新话题