Skip to main content
skill CX Codex

multiview-constraint-solver — Claude Code skill: reconcile views

Checks whether front, side, back and top orthographic references can fit one rigid Blender model, then picks a canonical source policy before you rebuild.

Install into Claude Code · Skills CLI (Vercel) All methods and platforms ↓
npx skills add RobLe3/cc-blender-skill --skill multiview-constraint-solver -a claude-code
Open on GitHub

What multiview-constraint-solver does

Reach for this skill when your references disagree. Front width does not match top width, side height drifts from front height, part counts differ between views. The skill normalizes each view onto a shared axis contract — front gives width X and height Z, side gives depth Y and height Z, top gives width X and depth Y — then compares the axes they share.

When ratios fall outside tolerance, it writes a conflict report and picks a policy: front_side_canonical, front_top_canonical, corrected_templates_required or view_specific_cheats. That policy feeds into fit-repair-optimizer before any geometry, UV or lighting work starts. The bundled scripts/view_constraint_report.py reads a JSON file of per-view body bboxes and returns shared-axis compatibility plus a suggested policy.

The hard gates are worth reading twice. No restarting the model until a canonical policy exists. Aura and context on the top view are not body depth. Contradictory dimensions do not get averaged unless the user asks for an approximate stylized compromise. Part-count disagreements are recorded separately from bbox ones. Before the first Blender call the skill tells you to read ../text-to-blender/references/mcp-backends.md and keep the chosen backend for the whole task, so check which MCP server you already have wired up.

What it helps with

  • decide whether four orthographic views can fit one rigid model
  • pick which view is the source of truth before rebuilding
  • write down dimension conflicts instead of holding them in your head
  • keep part-count disputes apart from bbox disputes
  • judge whether you need per-view variants rather than a single asset

Example prompts for the agent

  • run multiview-constraint-solver on my front, side and top references and tell me if they agree
  • write a view conflict report and suggest a canonical policy
  • check body bboxes per view with scripts/view_constraint_report.py

How to install multiview-constraint-solver

1Skills CLI (Vercel)

npx skills add RobLe3/cc-blender-skill --skill multiview-constraint-solver -a claude-code

2Manually: put the files in place

~/.claude/skills/multiview-constraint-solver/SKILL.md

Copy the whole skill folder; for one project use .claude/skills/multiview-constraint-solver/

Step by step, with commands for each platform: How to install skills in Claude Code: five ways

Questions about multiview-constraint-solver

How do I install multiview-constraint-solver in Claude?

Run npx skills add RobLe3/cc-blender-skill --skill multiview-constraint-solver -a claude-code. The skill then sits at ~/.claude/skills/multiview-constraint-solver/SKILL.md.

What does multiview-constraint-solver do?

It compares shared axes across front, side, back and top views, writes a conflict report and selects a canonical policy before the model is rebuilt.

What tools does the skill need?

Its frontmatter allows Read, Bash, Glob and Grep. Before the first Blender call it asks you to read ../text-to-blender/references/mcp-backends.md and to keep the same backend for the rest of the task.

Source text

SKILL.md · MIT
---
name: multiview-constraint-solver
description: Determine whether front/side/back/top reference templates can be satisfied by one rigid 3D Blender model, choose a canonical source policy, and emit constraints before rebuilding. Use when multiview bboxes, silhouettes, part counts, or depth ratios contradict each other.
allowed-tools: Read Bash Glob Grep
---


## MCP backend

Use when: Orthographic template conflict detection, canonical view policy, rigid-vs-cheat-view decision, front/side/top dimension ratios, source-of-truth negotiation before reconstruction.

Before the first Blender call, read [../text-to-blender/references/mcp-backends.md](../text-to-blender/references/mcp-backends.md). Prefer official MCP for shared capabilities; preserve the selected backend for the whole task. Tool names in recipes are client/legacy examples: map them through that reference and its agent-host guide.
# Multiview Constraint Solver

Use this before another rebuild when references disagree. A renderer cannot make one rigid mesh satisfy mutually incompatible orthographic dimensions unless you allow view-specific cheats.

## Workflow

1. Normalize every reference view into a common axis contract:
   - front: width X, height Z;
   - side: depth Y, height Z;
   - top: width X, depth Y;
   - back: width X, height Z.
2. Measure visible body bboxes, not labels/background/aura unless they are part of the model contract.
3. Compare shared axes:
   - front width vs top width;
   - front/back height vs side height;
   - side depth vs top depth.
4. If ratios differ beyond tolerance, write a conflict report and select a policy:
   - `front_side_canonical`: front brand read and side depth/height are authoritative;
   - `front_top_canonical`: front brand read and top footprint are authoritative;
   - `corrected_templates_required`: no rigid rebuild should claim final fit;
   - `view_specific_cheats`: separate camera/view variants allowed, not one rigid asset.
5. Feed the chosen policy into `fit-repair-optimizer` before any geometry, UV, or lighting work.

## Hard gates

- Do not restart modeling until canonical policy exists.
- Do not treat top-view aura/context as body depth.
- Do not average contradictory dimensions unless the user explicitly asks for an approximate stylized compromise.
- Record part-count disagreements separately from bbox disagreements.

## Script

- `scripts/view_constraint_report.py` reads a JSON file of per-view body bboxes and emits shared-axis compatibility and a suggested canonical policy.

© RobLe3 · MIT · RobLe3/cc-blender-skill

Similar skills

Everything for Game dev and 3D: Unity, Unreal, Godot, Blender →

From the same set28

wireframe-to-3d Turns orthographic wireframe PNGs into a Blender 3D model and exports it as .glb. Useful when you have front and side views but no mesh yet. CX Codex +1 787installs atlas-uv-fitting Detects texture atlas regions and fits each model part to its own UV rectangle in Blender. Helpful for fixing stretched textures and preparing clean GLB exports. CX Codex +1 744installs fit-repair-optimizer Converts Blender multiview validation failures into a structured repair queue against source templates. It coordinates geometry, UV, and lighting fixes. CX Codex +1 735installs closed-surface-uv-coverage Audit Blender models to ensure rear caps and sidewalls have true UV coverage instead of floating overlays. Ideal for turntable QA on 3D assets. CX Codex +1 728installs texture-driven-mesh-fitting Reshapes 3D mesh boundaries to match texture-atlas or decal silhouettes 1:1 in Blender before material passes. Essential when models do not match their source art. CX Codex +1 718installs landmark-fit-repair Compares a Blender model against a template at named points — leaf tips, shell corners, eyes, smile, aura radius — and turns the drift into recipe edits. CX Codex +1 735installs source-part-segmentation Splits overlapping parts of a source image into named masks before any contour-to-mesh work starts. CX Codex +1 727installs texture-state-animation Plans and checks texture-state transitions in Blender so you avoid whole-image crossfades, popping and morphs that drift out of register. CX Codex +1 719installs

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor