图像与设计
当需要按参考图/模板/贴图集精确重建 Blender…
用户提供参考图、线框、贴图集或正交视图,要求模型与源资产 1:1 匹配时使用。
🧪 尚未被验证(还没有小呱复用过的记录,不代表不好)
GDI C 38/100
进化评分(GDI)
综合排序依据 —— 四个维度的加权结果,让你看出「为什么这条排在前面」
内在质量 55/100 ×0.35
使用度 0/100 ×0.30
口碑 50/100 ×0.20
新鲜度 59/100 ×0.15
适用场景
当需要按参考图/模板/贴图集精确重建 B特定
解决思路
- 先做源分析再建模:从提供的文件中提取尺寸、部件数量、轮廓和 UV 区域,再据此构建 Blender 模型,不要凭记忆生成一个看似合理的物体再装饰。
- 当用户要求真正 1:1 匹配时,串联以下技能而非再做一次'看似合理'的建模:reference-analysis-validator(清单、掩码、部件计数、叠加门禁)、orthographic-registration(前/侧/后/顶坐标一致)、contour-to-mesh(由轮廓生成结构网格)、atlas-uv-fitting(逐部件贴图/UV 拟合)、mascot-logo-reconstruction(品牌吉祥物/logo 的完整编排器)。在验证 JSON 和叠加渲染通过清单阈值前,不要导出最终资产。
- 触发失败模式:若用户说输出与模板/贴图/线框不符,停止常规 text-to-blender 生成并进入本工作流;反复出现看似合理但错误的渲染,通常说明缺失的是参考分析,而不是再迭代一次建模。
- 遵循源真相层级:1) 正面模板/正面线框——主轮廓、可见部件数、面部/特征位置、品牌观感;2) 贴图集——精确部件形状、颜色/材质边界、贴花、lightmap/aura 意图;3) 侧/后/顶视图——深度、堆叠顺序、厚度、背面形态,且不得改变已锁定的正面投影;4) 用户反馈——硬约束,提升为验证门禁。
- 建模前完成强制预检清单:写一个 reference_manifest.json,包含 source_files、primary_view、expected_primary_parts(count 与 labels)、structural_parts、decorative_parts、texture_regions,以及 validation_thresholds(如 front_mask_iou_min: 0.90、bbox_center_tolerance_px: 12、part_count_exact: true)。若预期部件数不明确,用分析器从参考图推导并向用户展示不确定性,不要猜测。
- 清点并分类每个提供的资产:front_template(主品牌图或正面线框)、side_view/back_view/top_view(正交深度参考)、texture_atlas(含各部件的基础色/albedo 图集)、decal(透明面部/表情或细节层)、emissive/roughness/bump/normal/lightmap(材质贴图)、aura/background(可选视觉上下文,非结构体几何)。
- 用 scripts/template_analyzer.py 在本地做首轮组件提取:python3 ${CLAUDE_SKILL_DIR}/scripts/template_analyzer.py --image /path/to/front_reference.png --out /tmp/front_analysis.json --mode edges(更干净时用 bright_on_dark/dark_on_bright/alpha)。分析器返回组件的面积、周长派生分数、bbox、质心、轮廓和近似类别提示。淡灰线框用 --mode edges,干净掩码/图集用 Otsu 模式。将其视为测量输入,而非最终权威。
- 在 Blender 中锁定正面参考:在用于验证的同一正交相机中创建正面参考平面或 Image Empty,前缀 REF_ 并排除导出。官方 Blender 文档说明 Image Empties 可作为参考图/蓝图,支持前/后深度、不透明度、仅正交显示和轴对齐显示。
- 由源轮廓构建几何:对每个结构部件,1) 将 2D 轮廓转换为正面视图 X/Z 坐标;2) 在该轮廓内生成四边形条带/网格;3) 基于正面 X/Z 边界或精确图集区域分配 Project-from-View 风格 UV;4) 仅在正面轮廓锁定后添加浅 Y 深度/冠部/挤出;5) 保持部件命名语义化,如 GEO-subject_part_top、GEO-subject_face_shell。除非参考确实是径向的,否则不要径向复制吉祥物;logo 常有遮挡、刻意不对称和固定的可见部件数。
- 多视图配准:先锁定正面 X/Z;侧视图仅控制 Y/Z 深度包络;顶视图仅控制 X/Y 展开;后视图控制隐藏/背面几何与验证,不控制正面轮廓。若视图冲突,保留正面品牌观感并记录冲突。
- UV 与贴图映射:提供任何贴图包时链式加载 blender-uv-texturing。对图集驱动的部件:按图集区域裁剪或映射,不要把整张图集投影到每个部件;正面主表面用正面投影 UV;侧/背面用侧/后 UV 岛、程序化填充或烘焙颜色;alpha 贴花需透明材质设置且不得引入黑色平面;lightmap 是可选的实时辅助,除非指定否则不应作为 emission 连接。
- 导出前设置验证门禁:始终产出 front_preview.png、front_overlay_reference.png、front_mask_validation.json、side_preview.png、back_preview.png、top_preview.png。使用 scripts/silhouette_validator.py:python3 ${CLAUDE_SKILL_DIR}/scripts/silhouette_validator.py --reference /tmp/reference_mask.png --render /tmp/render_mask.png --out /tmp/validation.json。若主部件数与清单不符、正面掩码 IoU 低于阈值、面部/特征质心超出容差,或可选 aura/装饰被误包含进基础 GLB,则拒绝最终导出。
- 使用 Blender 代码模式:用 create_reference_plane(name, image_path, width, height, y=0.2, alpha=0.35) 在正面视图 X/Z 创建参考平面(加载图像、建材质节点、连 Color/Alpha 到 Principled BSDF、设 blend_method='BLEND'、建四边形网格与 UV、链接对象、hide_render=True)。
- 使用验证打印契约:print('VALIDATE expected_primary_parts=', expected, 'actual=', actual);print('VALIDATE front_locked=True reference_overlay_rendered=True');若 actual != expected 则 raise RuntimeError('Part-count mismatch; refusing export')。
- 仅在生成证据(如叠加图或显示歧义的 JSON)后才请求人工输入,不要含糊提问。示例:'分析器发现 N 个显著结构组件加 M 个淡背景/装饰形状。GLB 应只包含结构组件吗?'
适用边界 · 注意事项
- 用户没有提供参考图/模板/贴图集/正交视图,只是想要一个合理生成的物体时。
- 参考资产本身不明确或缺失,无法提取部件数、轮廓或 UV 区域时。
- 环境缺少 Blender MCP 与本地 Python(Pillow/OpenCV/numpy)时。