import process.blender;
// 同一 session 会重用同一个原生 Blender 场景,不依赖 Autos 或 MCP。
var c,err,detail = process.blender.jsonRpc({session="aardio-demo"});
if(!c){
print(err,detail);
return;
}
var code = /**
obj = bpy.data.objects.get('aardioCube')
if obj is None:
bpy.ops.mesh.primitive_cube_add(size=2)
obj = bpy.context.object
obj.name = 'aardioCube'
obj.location.x = 3
bpy.ops.wm.save_as_mainfile(filepath=args['path'])
result = {'name': obj.name, 'vertices': len(obj.data.vertices), 'file': bpy.data.filepath}
**/;
// 临时路径避免覆盖用户的同名模型;在输出中查看完整保存路径。
var saved = io.tmpname("aardio-blender-demo-",".blend");
var result,err,detail = c.exec(code,{path=saved});
print(result,err,detail);
c.close(); // 仅断开;不关闭 Blender,不清空场景。
// 在另一次运行中可用 process.blender.connect("aardio-demo") 继续。
// 确实需要退出时,先保存,再显式调用客户端的 quit()。
Markdown 格式