SuperAPI AI 工具集

blender-core-api

编程与开发

查看项目

更新于 10-15 22:18

技能介绍

用途:在编写访问 bpy 模块结构、RNA 数据、上下文系统、依赖图或调用操作符的 Blender Python 脚本时使用,避免版本不兼容与常见错误。

主要能力:梳理 bpy 子模块职责,包括 bpy.data(blend 文件数据块)、bpy.context(当前状态)、bpy.ops(支持撤销的操作符)、bpy.types、bpy.props、bpy.utils、bpy.app、bpy.path、bpy.msgbus;列出 bpy.data 的 30 多种集合类型;给出关键警告与核心模式。

必要用法:直接数据操作优先用 bpy.data,需要撤销或面向用户时用 bpy.ops;4.0+ 用 bpy.context.temp_override() 替代字典式上下文覆盖;创建数据块后必须 link 到场景集合,必要时设 use_fake_user;依赖图用 bpy.context.evaluated_depsgraph_get() 获取求值数据,用完调用 to_mesh_clear();选择用 obj.select_set(True),激活用 bpy.context.view_layer.objects.active;用 bpy.app.version 做版本判断。

限制与警告:不得跨撤销缓存 bpy.data 引用;不得在后台线程调用 bpy.ops;4.0+ 不得使用字典上下文覆盖;Panel.draw() 内不得修改场景数据;编辑模式下不得访问 mesh.vertices,应改用 bmesh.from_edit_mesh()。受限上下文(Panel.draw、depsgraph_update_post、render_pre/post、后台模式)禁止部分操作。资料还给出 3.x 到 4.0+、4.x 到 5.0+ 的迁移对照,以及参考文件与官方文档链接。具体安装与调用方式暂未提供。