houdini引擎的C-API的面向对象python包装器
pyhapi的Python项目详细描述
皮哈皮
Houdini引擎的面向对象Python包装器
请注意,这是第三方约束力,不是官方的。在
文件
请访问pyhapi documentation。在
安装
您可以使用(a)pip或(b)克隆并安装。在
选项a.1设置路径
- 对于Windows,请运行
powershell ./sethoupath.ps1
它应该将houdini的dsolib和bin目录添加到PATH中。在 - 对于Linux
将/opt/hfs<version>/dsolib/
添加到LD_LIBRARY_PATH
示例:export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/opt/hfs17.5/dsolib/
选项a.2通过PyPI安装
$ pip install pyhapi
方案b
克隆此存储库并运行python setup.py install
支持的平台
- 窗口
- Linux系统
依赖关系
- Python:>;3.6
- 数量:>;=1.15
- 胡迪尼=17.5
- 支持的许可证:
- 胡迪尼FX
- 胡迪尼核心
- 胡迪尼发动机
- 不支持许可证:
- 胡迪尼独立引擎
- 胡迪尼独立学院
- 胡迪尼学徒
- 支持的许可证:
特点
- 实例化节点/HDA
- 节点连接操作
- 节点参数获取/设置
- 节点异步烹饪
- 马歇尔进/出曲线
- 马歇尔进出网
- 马歇尔进出海菲尔德
- 会话池和基于任务的处理
胡迪尼引擎中的以下功能尚不支持:
- 马歇尔输入/输出音量
- PDG执行
示例用法
有关详细教程,请参阅文档。****在
创建会话
import pyhapi as ph
session = ph.HSessionManager.get_or_create_default_session()
请参见
Example: node_networks_operations
实例化HDA
^{pr2}$设置节点参数
asset_node.set_param_value("seed", 1.0)
asset_node.set_param_value("foo_attrib", "foo_str")
asset_node.press_button("foo_execute")
请参见
Example: hda_params_getset
Example: hparms_getset
保存HIP文件
session.save_hip("debug.hip")
马歇尔数据
请参见
Example: curve_marshall_input
Example: curve_marshall_output
Example: mesh_marshall_input
Example: mesh_marshall_output
Example: heightfield_marshal_input
Example: heightfield_marshal_output
会话池
生产者/消费者
session_pool = ph.HSessionManager.get_or_create_session_pool()
session_pool.run_on_task_producer(producer)
Example: multisession_producer
批处理运行
session_pool = ph.HSessionManager.get_or_create_session_pool()
session_pool.enqueue_task(session_task, i, j)
session_pool.run_all_tasks()
线程任务生成器
session_pool = ph.HSessionManager.get_or_create_session_pool()
session_pool.run_task_consumer_on_background()
executor = ThreadPoolExecutor(max_workers=4)
for i in range(0,4):
executor.submit(producer, i)
Example: multisession_producer_threaded
Flask服务器演示
- 项目
标签: