我希望能够在Eclipse中直接使用来自PyDev的blender代码,因此我可以利用blender模块创建3D对象,同时使用我自己的一些代码。我已经按照以下步骤在我的Windows机器中构建了搅拌机,因此我可以使用搅拌机作为模块。
https://wiki.blender.org/index.php/User:Ideasman42/BlenderAsPyModule
https://wiki.blender.org/index.php/User%3aIdeasman42/BlenderAsPyModule
现在我实际上是在尝试使用PyDev进行编码,但是我遇到了让它运行的问题。
我在PyDev中的代码如下。
import bpy
from bpy import context
from math import sin, cos, radians
x = -3
y = -5
z = 3
bpy.ops.mesh.primitive_plane_add(radius=1, view_align=False,
enter_editmode=False, location=(x, y, z), layers=(True, False, False, False,
False, False, False, False, False, False, False, False, False, False, False,
False, False, False, False, False))
当我在PyDev中运行int时出现以下错误:
'错误:未释放的内存块:8,未完全内存总量0.008392 MB AL lib:(EE)UpdateDeviceParams:无法设置44100hz,得到48000hz 代替'
如果我在blender本身内运行相同的代码,它会按预期创建一个平面。我的理解是,在将blender构建为py模块之后,我应该能够在pyDev本身中运行代码。
我想知道是否有人有他们在pyDev中使用的样本blender代码并且工作,只是为了我可以测试它pyDev并查看它是否在blender中创建了一些东西。从PyDev创建开口混合器或从PyDev本身创建一个平面可能很简单。我已经尝试过寻找样本了,但我发现的所有内容都是在blender中运行python,而我想做的就是在python中运行blender。
我对此很新,所以我很可能在代码中遗漏了一些内容。
答案 0 :(得分:1)
错误消息是两个连接在一起的消息,第一个关于不同内存更多是调试报告,而另一个来自openal audio settings。两者都可以忽略。在blender退出时打印内存错误消息,这意味着脚本已经运行并且运行脚本的python解释器已经关闭,这也意味着您创建的任何blender数据都已被释放。
要显示您确实创建了该平面,请在脚本末尾添加以下内容 -
for o in bpy.data.objects:
print(o.name, o.location)
您可以在blender here中找到有关使用pydev / pycharm的一些信息,其中显示了设置远程调试以便您可以在blender中运行脚本。您还可以在blender.stackexchange.com获取特定于blender的python帮助。