如何从胡迪尼粒子数据创建Maya粒子光盘缓存(PDC)



我正在尝试将Houdini15粒子数据导出到Maya2015粒子。

所以基本思想是

  1. 在胡迪尼创建粒子
  2. 将粒子数据保存到光盘
  3. 在Maya中读取粒子数据

粒子数据应包括位置、particleId、年龄、速度和自定义属性。。。等

我想从胡迪尼粒子数据创建Maya PDC文件。

我认为这并不是那么简单,最好的方法是使用一些能够做到这一点的工具,索尼开源F3dhttps://github.com/imageworks/Field3D和https://github.com/gearslogy/GParticlesIO我认为也可以做到这一点。希望这能帮助

您可以尝试将Houdini粒子带到Maya。

  1. 将所有粒子数据写入.bgeo文件
  2. 在houdini中创建一个文件sop数字资产
  3. 通过胡迪尼引擎读取Maya中的.hda文件
  4. 选择.bgeo序列并重新加载数字资产

这将在maya中创建一个N粒子系统,您可以看到自定义属性。

有比Maya缓存更好的方法来存储点云(正如前面的答案所指出的),但如果您真的对此感兴趣,可以查看本文:http://100cells.com/downloads/MayaCacheDLL/MayaCacheBitstreamDocumentation.pdf

在那里,您可以找到Maya缓存文件格式的描述(通过反向工程获得),这样您就可以在Houdini中开发自己的Maya缓存导出器。我用Python做了一个原型,它很有效。您可以导出所需的任何自定义属性,但在Houdini中创建Maya始终需要的属性非常重要:

  • 位置
  • count(只有一个点大小的特殊Int通道,表示点计数)
  • id(不记得是否为必填项)

对于使用运动模糊的渲染,我认为如果没有速度通道,它会崩溃,但这可能取决于渲染器。您应该在十六进制编辑器中打开真正的Maya缓存文件,并查看在工作缓存文件中导出了哪些通道。如果您正在进行多文件缓存,还需要查看XML,因为您也需要创建它(至少这比二进制缓存文件更简单)。

你可以在这里找到C库:https://github.com/100cells/Maya-Cache-DLL-Project也许它不是在Houdini中使用的最佳实现,但可以作为参考。

相关内容

  • 没有找到相关文章

最新更新