作为python模块支持CUDA的Blender

bpy-cuda的Python项目详细描述


搅拌机

Blender是一个python模块,易于安装

关于

用于安装到virtualenv或任何地方,用于编写Blender扩展的单元测试,或开发支持Blender 3d的Python应用程序。在

依赖于bpy-build模块来确保搅拌机bpy模块的环境是正确的。在

有关详细信息,请参阅:

bpy-build repository

入门

预构建的轮子是为流行的平台(MacOS、Windows和Ubuntu)提供的。预构建包括“正常”安装(bpy)、CUDA(bpy-cuda)和Optix(bpy-optix)。选择正确的版本取决于您的用例和硬件,但一般来说,bpy对于非渲染自动化任务应该是合适的,而{}的性能最好,但需要NVIDIA RTX卡和最新的驱动程序。在

安装

在这些平台上安装预构建的程序很简单。在

pip install bpy && bpy_post_install

自建

为您自己的平台构建Blender API可能很困难,但是这个repo应该可以让您轻松地手工创建自己的构建。在

从^{生成

您可以使用pip从源发行版构建。在

先决条件

sdist执行构建至少需要构建Blender的先决条件。请参见the list of prerequisite applications的wiki。在

Windows

py -3.7-64 -m pip install --upgrade pip wheel future-fstrings

Other

^{pr2}$
构建

Windows

py -3.7-64 -m pip install bpy --no-binary

Other

python3.7 -m pip install bpy --no-binary

从回购构建

您也可以在克隆存储库之后进行构建,这在开发过程中非常有用。在

先决条件
python3 -m pip install --upgrade pip wheel future-fstrings
git clone https://github.com/TylerGubala/blenderpy.git
构建

如果您想要bpy的特定版本,则必须更改bpy_<optional extra>_setup.py文件开头的VERSION字符串。在

要构建,请运行以下命令。在

Windowspy bpy_setup.py sdist bdist_wheelOtherpython3 bpy_setup.py sdist bdist_wheel

dist文件夹中的结果控制盘可以使用pip安装。在

把你的任何错误都作为问题发表。在

常见问题解答

Q、 我得到了failed to find 'bpy_types' module

A.请参见issue #13

Q、 我得到了ImportError: DLL load failed: The specified module could not be found

请看issue #15

Q、 如何导入加载项?

A.可以使用代码referenced here导入插件(Blender内部和第三方)。在

Q、 如何在multiprocessing中使用搅拌机?

A.混合器运行时的使用和与multiprocessing的兼容性受到限制,请参见the documentation。在

Q、 我选择的操作系统呢?

A.MacOS support is on its way。之后是Ubuntu。在

Q、 我选择的Python版本呢?

答:如果你有你想要的API的特定版本,你必须自己做一些构建。同样,如果您被限制使用特定的Python版本(尤其是那些未由python.org网站)那你就得努力培养自己。在

哥查斯

目前,除了windowspython3.6.x之外,我还没有在其他平台上进行测试。很快还会有更多。在

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
使用jaxrpc的Java eclipse WebService客户端   java编程方式在对象上写入名称   java Spring批处理:重试后跳过   java Android错误:错误:任务执行失败:应用程序:transformClassesWithDexForDebug'   带有清单文件nullPointerException的java Android元数据   spring Java Quartz调度作业停止运行   JavaMockito:如何在不调用实际方法的情况下,模拟带有参数和无效返回类型的静态方法?   java Tomcat连接池问题无法在关闭的连接上调用方法   java如何交换列表中的项目?   java如何停止线程并通过Toast在线程中正确显示文本?   java为什么连续写入OutputStream时偏移量0不会导致重复字节?   java我无法生成头文件   不兼容的返回类型错误java   修改值后键值对的java Jolt转换规范   java有自动更新Javadoc的工具吗?   java线程如何在ints自身实例类中共享变量   java继承一个非gwt模块   java Hibernate xml配置   使用netty4异步调用的java链接HTTP请求响应