CommunityProgramación y desarrollogithub.com

codepawl/build-house-from-plan

Convierte un plano 2D de una casa en una casa 3D fotorrealista en Blender Cycles, verificada superponiendo la construcción sobre el dibujo. Incluye imágenes fijas, una animación de las paredes elevándose desde el plano y calles enteras de casas. Útil para planos de planta, planos de casas o planos arquitectónicos que deben convertirse en una casa o calle 3D realista.

¿Qué es build-house-from-plan?

Esta skill permite a un agente de IA convertir un plano 2D de una casa en un modelo 3D fotorrealista completo, renderizado en Blender Cycles. La skill sigue un flujo de trabajo riguroso: primero lee y analiza el plano, genera un archivo JSON con la estructura, verifica la precisión superponiendo el modelo sobre el dibujo original, construye el modelo 3D con grosores de pared reales, materiales escaneados y muebles PBR, y finalmente renderiza imágenes fijas y animaciones. Está diseñada para plataformas que permiten ejecutar scripts de Python y Blender, como entornos de desarrollo o máquinas con Blender instalado. La skill asegura que cada paso sea verificado contra el plano original, manteniendo un control de calidad estricto con métricas de superposición (gate) para garantizar que la construcción coincida con el dibujo. Soporta la creación de calles enteras, animaciones de construcción y ofrece un pipeline completo desde el plano 2D hasta el render final.

Compatible con~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 Programación y desarrollo skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

Preguntar en tu IA favorita

Abre un nuevo chat con esta habilidad de agente ya precargada.

Documentación

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

Si references/local.md existe, léelo primero: establece las carpetas y reglas de la casa para esta máquina.

Un archivo de plano se lee del dibujo, se verifica contra el dibujo, se construye con grosor de pared real y marcos reales, luego se viste con materiales y modelos escaneados y se renderiza en Cycles. El dibujo sigue siendo el juez: nada se entrega a menos que el plano de planta construido coincida con su tinta.

Orden de trabajo

  1. Encuentra la lámina y sus fuentes. Plano con licencia clara, más fotos del mismo edificio o de su tipo y época. Lee references/read-plan.md en su totalidad: fuentes, calibración, orden de lectura, la tabla de lo que se puede inferir.
  2. Escribe plan.json. references/plan-format.md contiene cada clave. Lee las secciones que necesites. Todo lo que no se lea del dibujo va en provenance.inferred, y el informe final repite esa lista.
  3. Verifica antes de construir. Detente y corrige ante cualquier fallo:
    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. Construye. Un Blender a la vez:
    blender -b --factory-startup -t 6 -P scripts/build_house.py -- plan.json out/house.blend
    
    Escribe la sección construida junto al blend. Evalúala con plan_check.py asbuilt <section.json>.
  5. Previsualiza en pequeño. --samples 48 --scale 50, luego mira cada toma junto a las fotos de referencia:
    blender -b out/house.blend -t 6 -P scripts/render_house.py -- plan.json out/preview --samples 48 --scale 50
    
  6. Busca lo que parece falso. Lee references/realism-faults.md antes de juzgar: los fallos que este pipeline realmente ha producido, cómo se veía cada uno y qué lo solucionó. Añade cada nuevo fallo allí en la misma ronda.
  7. Final. 1920x1080 a aproximadamente 512 muestras, cada imagen fija a tamaño completo junto a una foto real. Míralas una por una.
  8. Películas. --film <nombre>. Una película build_up eleva las paredes desde la propia lámina. Calles: "Streets" en references/plan-format.md.

Reglas estrictas

  • Gate: al menos 0.70 de las caras de las paredes dentro de 7 cm de la tinta, desplazamiento de mejor ajuste como máximo 16 cm, una clara ventaja sobre un control desplazado 50 cm, tanto en el plano como en la sección construida. Un fallo significa que el plano o la construcción están mal. Nunca lo relajes.
  • Las dimensiones se miden o imprimen, nunca se adivinan a ojo: grosor de pared, altura de techo, alféizar y dintel. Una altura que el dibujo no proporciona se infiere del tipo y época y se lista como inferida.
  • Techo y fachada sin dibujos de alzado se infieren. Dilo en el informe.
  • Solo materiales reales: escaneos de Poly Haven o ambientCG con su tamaño real de mosaico. Sin color plano en una superficie visible.
  • Los muebles provienen de modelos PBR reales colocados según el uso de la habitación, manteniendo espacio para caminar y los frentes orientados hacia la habitación. scripts/fetch_assets.py descarga los escaneos CC0, scripts/find_objaverse.py y scripts/fetch_objaverse.py encuentran y obtienen modelos CC BY.
  • Acredita cada modelo CC BY y cada lámina fuente en CREDITS.md junto al plano.
  • Verifica la orientación en una cuadrícula (scripts/preview_assets.py) antes de colocar un modelo nuevo. Verifica también el tamaño nativo, ya que los modelos de Objaverse vienen en unidades extrañas.

Velocidad

Una importación glTF es el paso lento, por lo que build_house.py almacena en caché cada modelo como un .blend vinculado en la biblioteca de activos (HOUSE_ASSET_LIBRARY, por defecto ~/house-assets). Evita los pinos y abetos escaneados: su importador tarda muchos minutos. El césped y los árboles tardan mucho en sincronizarse, por lo que los renders mantienen datos persistentes entre tomas. Cualquier paso que supere los 5 minutos se perfila y corrige.

Hecho significa

Las compuertas de verificación, superposición y construcción pasan y se citan con sus números. Las imágenes fijas de interior y exterior se mantienen a tamaño completo junto a fotos reales. El informe indica qué se obtuvo, qué se infirió y qué aún parece débil.

Skills relacionados