用途:为需要跨 Blender 3.x/4.x/5.x 运行的 Python 代码提供版本兼容参考,并指导脚本在版本间迁移。
主要能力:给出 Python 版本矩阵(如 3.x/4.0 用 Python 3.10,4.1–5.0 用 3.11,5.1 用 3.13);汇总关键破坏性变更及迁移方式,例如 4.0 起 bpy.ops 的上下文覆盖字典改为 context.temp_override()、NodeTree.inputs/outputs.new() 改为 interface.new_socket()、Python OBJ/PLY 导入导出改用 bpy.ops.wm.obj_import/export;4.1 移除 Mesh.use_auto_smooth;4.2 要求 blender_manifest.toml;4.3 重写 Grease Pencil API;4.4 子类 init 必须调用 super();5.0 用 gpu 模块替代 bgl、scene.node_tree 改为 compositing_node_group;5.1 涉及 VSE 时间属性重命名。还提供 3.x→4.0 至 5.0→5.1 的逐版本迁移清单。
使用方式:版本判断始终用 bpy.app.version 元组比较,不要解析 version_string;检测具体 API 时优先用 hasattr() 特性探测;上下文覆盖用 temp_override;节点组接口用 interface.new_socket();EEVEE 标识符按版本返回 BLENDER_EEVEE 或 BLENDER_EEVEE_NEXT;GPU 绘制迁移到 gpu 模块并在回调结束时恢复状态。
适用场景:编写需兼容多版本 Blender 的插件或脚本、升级旧脚本、排查版本相关报错。
限制:资料为版本变更参考,未提供收费、平台或效果信息;具体 API 行为以官方文档为准。