codepawl/build-house-from-plan

Transforme uma planta baixa 2D em uma casa 3D fotorrealista no Blender Cycles, verificada sobrepondo a construção sobre o desenho. Gera imagens estáticas, filmes das paredes se erguendo da planta e ruas inteiras de casas.

O que é build-house-from-plan?

Esta skill permite que um agente de IA converta automaticamente uma planta baixa 2D (planta de casa, projeto arquitetônico ou blueprint) em um modelo 3D completo e fotorrealista de uma casa, renderizado no Blender Cycles. O processo inclui leitura da planta, interpretação de medidas e cômodos, construção com espessuras reais de paredes e caixilhos, aplicação de materiais escaneados e modelos PBR, e renderização final. A skill utiliza scripts Python e Blender para verificar automaticamente a precisão da construção sobrepondo o modelo 3D ao desenho original, garantindo que as paredes estejam dentro de uma tolerância de 7 cm da tinta. Suporta a criação de imagens estáticas, animações de montagem e até ruas inteiras com múltiplas casas. É baseada em uma pipeline rigorosa com verificações de qualidade (gate), uso exclusivo de materiais reais (Poly Haven, ambientCG) e modelos licenciados (CC0, CC BY).

Funciona com~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/codepawl/viz3d/tree/HEAD/plugins/build-house-from-plan/skills/build-house-from-plan

Installed? Explore more Programação e Desenvolvimento skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

Perguntar na sua IA favorita

Abre um novo chat com esta habilidade de agente já pré-carregada.

Documentação

Construa uma casa 3D fotorrealista a partir de uma planta 2D (Dựng nhà 3D siêu chân thật từ bản vẽ 2D)

Se references/local.md existir, leia-o primeiro: ele define as pastas e regras da máquina para esta máquina.

Um arquivo de planta é lido do desenho, verificado contra o desenho, construído com espessura real de parede e caixilhos reais, depois vestido com materiais e modelos escaneados e renderizado no Cycles. O desenho continua sendo o juiz: nada é enviado a menos que a planta baixa construída se alinhe sobre sua tinta.

Ordem de trabalho

  1. Encontre a prancha e suas fontes. Planta com licença clara, além de fotos do mesmo edifício ou de seu tipo e período. Leia references/read-plan.md na íntegra: fontes, calibração, ordem de leitura, tabela do que pode ser inferido.
  2. Escreva plan.json. references/plan-format.md contém todas as chaves. Leia as seções necessárias. Tudo que não foi lido do desenho vai em provenance.inferred, e o relatório final repete essa lista.
  3. Verifique antes de construir. Pare e corrija em qualquer falha:
    uv run --no-project --with pillow --with numpy --with scipy python scripts/plan_check.py check plan.json
    uv run --no-project --with pillow --with numpy --with scipy python scripts/plan_check.py overlay plan.json
    
  4. Construa. Um Blender de cada vez:
    blender -b --factory-startup -t 6 -P scripts/build_house.py -- plan.json out/house.blend
    
    Ele escreve a seção "as built" ao lado do blend. Avalie com plan_check.py asbuilt <section.json>.
  5. Pré-visualize pequeno. --samples 48 --scale 50, então olhe cada tomada ao lado das fotos de referência:
    blender -b out/house.blend -t 6 -P scripts/render_house.py -- plan.json out/preview --samples 48 --scale 50
    
  6. Caça o que parece falso. Leia references/realism-faults.md antes de julgar: os defeitos que esta pipeline realmente produziu, como cada um parecia e o que o corrigiu. Adicione cada novo defeito ali na mesma rodada.
  7. Final. 1920x1080 com cerca de 512 amostras, cada imagem estática em tamanho real ao lado de uma foto real. Olhe cada uma.
  8. Filmes. --film <nome>. Um filme build_up ergue as paredes da própria folha. Ruas: "Streets" em references/plan-format.md.

Regras rígidas

  • Portão: pelo menos 0,70 das faces das paredes dentro de 7 cm da tinta, deslocamento de melhor ajuste no máximo 16 cm, uma vitória clara sobre um controle deslocado em 50 cm, tanto na planta quanto na seção "as built". Uma falha significa que a planta ou a construção está errada. Nunca afrouxe.
  • As dimensões são medidas ou impressas, nunca adivinhadas a olho: espessura da parede, pé-direito, peitoril e verga. Uma altura que o desenho não fornece é inferida a partir do tipo e período e listada como inferida.
  • Telhado e fachada sem desenhos de elevação são inferidos. Diga isso no relatório.
  • Apenas materiais reais: varreduras do Poly Haven ou ambientCG com seu tamanho real de ladrilho. Nenhuma cor sólida em superfície visível.
  • Móveis vêm de modelos PBR reais colocados pelo uso do cômodo, mantendo espaço para caminhar e frentes voltadas para o cômodo. scripts/fetch_assets.py baixa as varreduras CC0, scripts/find_objaverse.py e scripts/fetch_objaverse.py encontram e baixam modelos CC BY.
  • Credite cada modelo CC BY e cada prancha de origem em CREDITS.md ao lado da planta.
  • Verifique a orientação em uma grade (scripts/preview_assets.py) antes de colocar um novo modelo. Verifique também o tamanho nativo, pois os modelos do Objaverse vêm em unidades estranhas.

Velocidade

Uma importação glTF é a etapa lenta, então build_house.py armazena em cache cada modelo como um .blend vinculado na biblioteca de ativos (HOUSE_ASSET_LIBRARY, padrão ~/house-assets). Evite pinheiros e abetos escaneados: seu importador leva muitos minutos. Grama e árvores demoram para sincronizar, então as renderizações mantêm dados persistentes entre as tomadas. Qualquer etapa acima de 5 minutos é perfilada e corrigida.

Pronto significa

As verificações de check, overlay e as-built passam e são citadas com seus números. As imagens estáticas internas e externas se sustentam em tamanho total ao lado de fotos reais. O relatório declara o que foi obtido, o que foi inferido e o que ainda parece fraco.

Habilidades Relacionadas