1

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

所以基本思想是

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

粒子数据应该包括位置,particleId,age,velocity和custom_attributes...等。

我想从 Houdini 粒子数据创建 Maya PDC 文件。

4

3 回答 3

1

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

于 2017-01-10T00:40:40.107 回答
1

你可以试试这个把你的 Houdini 粒子带到 Maya。

  1. 将所有粒子数据写入 .bgeo 文件。
  2. 在 houdini 中创建文件 sop数字资产
  3. 通过 Houdini Engine 在 Maya 中读取该 .hda 文件。
  4. 选择 .bgeo 序列并重新加载数字资产。

这将在 Maya 中创建一个 Nparticles 系统,您可以看到您的自定义属性。

于 2017-01-13T06:45:51.557 回答
1

有比 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 中使用的最佳实现,但可以作为参考。

于 2017-10-31T14:23:50.297 回答