我们一般使用poser6来为SL制作人物动作.因为这个软件相对3D max 和maya来说操作简单得多.无需建模.但最近跟群里朋友交流时,都谈到用poser6制作的人物动作无法导入进SL中. 除了群主提到的每帧0.1秒的问题之外,其实问题还出在poser6这个软件当中.因为我试过将在软件中导出的bvh文件再导入回poser6的新模时,会出现问题.表现在始终有一个原始模型间杂在动画当中,以致我们看到的动画都有两个人影在闪烁. 经过我在网上一段时间的搜索,得到这样一个答案是:在Poser 6 中,直接输出的bvh文件含有许多无用的数据信息,如果不经过过滤处理就将其再次导入Poser 里,人物模型的动作就会出错。这也是SL无法识别我们制作的bvh文件的原因吧.据说解决办法是要去下载一个高手编辑的BVH Cleanup.py文件.
BVH Cleanup.py使用方法:
我们可以添加一个脚本文件Python script,让它来完成剥去你从Poser中输出的bvh文件里所有的无关数据.下载并解压这个script文件,然后将它放到poser6的安装目录:Poser6/Runtime/Python/poserscripts/Utility文件夹下,再重新运行poser6.打开poser6的 Window菜单,选择Python,弹出Python 窗口,点击Utility Funcs 按钮,然后再点击下面其中一个空白按钮,弹出一个标准的开启对话框,在这里找到BVHCleanup.py 文件,选中它.把它添加到刚才那个空白按钮上.当你要输出 bvh文件时,你就可以点击BVHCleanup.py 按钮,出现提示你找到你准备输出的bvh文件的语句.例如,找到刚才你从poser6输出的命名为“running.BVH”的文件后,记住:在对话框的文件名只是“running”,后面没有".bvh",你必须添加这个文件后缀".bvh".即把文件变成“running.bvh”,这样poser的BVHCleanup.py才能精确地把你要输出的bvh清理干净(此时会弹出已清理干净的对话框的).这些工作你做完了,script自会把余下部分完成.经过这样处理过的bvh文件.是个纯度很高的动作捕捉文件.这个bvh应该能导入进SL中了.