用途:指导在 Speckle 与 Blender 之间收发 BIM/几何数据,使用 Speckle Blender 连接器或 SpecklePy 脚本完成发送、接收与版本提交。
主要能力:Speckle 使用基于哈希的不可变 Base 对象图,Blender 使用 bpy.data 的 ID 块。连接器可在 Mesh、Bezier/NURBS 曲线、Empty/Collection、Principled BSDF 材质与 RenderMaterial 之间双向转换。发送时从 bpy.data 提取几何、把材质降为 RenderMaterial、集合映射为 Speckle Collection;接收时把 Base 转为 bpy.data 网格/曲线并重建材质与集合。collection 必须构成有向树,不能有环。v3 中层级与材质分配以 proxy collection 形式存于根级,按 applicationId 两步查找。
使用方式:连接器 UI 中打开侧栏面板、认证账号、选择 project 与 model(branch)、选择发送对象并 Send;接收时选择版本并 Receive,对象进入以模型命名的新集合。程序化方式用 SpeckleClient 认证后,经 ServerTransport 与 operations.send/receive 收发,并用 client.commit.create 创建版本。资料提供了 vertices/faces 组织与 from_pydata 转换的代码示例。
适用场景:需要几何加基础材质做可视化评审的跨工具流转;Bonsai/IFC 到 Speckle 的发送可携带几何与基础属性。
限制:切勿期望完整 IFC 保真度。Speckle 传几何与基础属性,不传参数化定义与 IFC 关系;IfcRelAggregates、IfcRelContainedInSpatialStructure 等语义丢失,Bonsai 接收后无法作为 IFC 元素编辑,该路径是单向的。RenderMaterial 仅支持 diffuse、opacity、metalness、roughness,纹理、法线、自发光、次表面等通道不保留。修改器、形态键、粒子、物理、约束与驱动、自定义属性均会丢失,发送前应应用修改器。收发前必须核对单位(m、mm、cm),单位不一致会导致缩放错误;更新既有模型应使用 applicationId 跟踪以避免重复对象。未提供的细节暂未说明。