CommunityImagengithub.com

m4bwav/referencias-polywright

Genera o recopila vistas de referencia, texturas e imágenes de referencia para modelos 3D: frontales, laterales, traseras, vueltas completas, texturas sin costuras y mapas PBR rápidos.

¿Qué es referencias-polywright?

Esta habilidad es esencial para cualquier flujo de trabajo de modelado 3D, ya que proporciona un proceso completo para recopilar o generar las referencias visuales necesarias antes de comenzar a modelar. Define reglas claras para diferentes tipos de activos (objetos reales, vehículos, edificios, personajes, etc.), especificando qué referencias recolectar y cuáles generar. Incluye pasos detallados para generar vistas consistentes (ortográficas, vueltas completas, sets de múltiples vistas) mediante herramientas de imagen, así como técnicas para corregir inconsistencias utilizando blockouts renderizados y repintados. También cubre la generación de texturas sin costuras y mapas PBR (altura, normal, rugosidad) a partir de una foto o albedo, con soporte para las convenciones OpenGL (Blender, Unity, glTF) y DirectX (Unreal). La habilidad se integra con la herramienta de línea de comandos `pw.py` para manifestar, renderizar, texturizar y empaquetar referencias, y está diseñada para trabajar con la plataforma PolyWright, PolyHaven, ambientCG, PureRef, y Blender. Es multiplataforma y apta tanto para generación procedural como para flujos de trabajo manuales.

Compatible con✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/m4bwav/polywright/tree/HEAD/skills/polywright-references

Installed? Explore more Imagen skills: steipete/songsee, affaan-m/frontend-design, mattpocock/improve-codebase-architecture · View all 6 →

Preguntar en tu IA favorita

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

Documentación

polywright-referencias

Las referencias determinan la mayor parte del resultado 3D: un modelo de imagen a 3D copia la iluminación, la perspectiva y los errores de su entrada; un modelador o un script de bpy necesita dimensiones y vistas. Recopílalas o genéralas primero, colócalas en la carpeta refs/ del activo, registra cada una con pw.py manifest --add-source (las generadas nombran el modelo y la semilla).

De vuelta al centro: ../polywright/SKILL.md. Plantillas de prompts y comprobaciones: references/reference-kit.md.

Paso 1: qué necesita este modelo

ModeloRecopilar (real)Generar (imaginado o faltante)
Objeto realfotos de 6 lados con una regla en el plano, primeros planos, dimensiones reales (hoja del fabricante, Wikipedia, una cinta métrica)limpiezas ortográficas solo si las fotos son malas
Vehículo, producto, muebleplanos o dibujos CAD (verificar una dimensión conocida), dimensiones del fabricantealzados frontal, lateral, superior en estilo de dibujo técnico
Edificiohuella (OSM), altura o número de pisos, fotos de cada cara, forma del techoalzados por cara, plano del techo
Lugar realextracto de mapa, elevación, foto aérea, fotos terrestres de puntos de referencianinguno: los lugares provienen de datos (polywright-capture)
Accesorio imaginarioreferencias de estilouna imagen hero de tres cuartos, luego frontal/izquierda/trasera/derecha a la misma escala
Personaje o criaturareferencias de estilo y vestuariovuelta completa: frontal, lateral, trasera, tres cuartos, pose A, barra de altura, fondo liso
Superficies (paredes, suelo, terreno)foto del material, plana y uniformemente iluminadaalbedo sin costuras y tilable, luego mapas (Paso 4)

Siempre añade una referencia de escala: una dimensión conocida, una silueta humana de 1,8 m, una barra de altura en la hoja.

Un paquete de investigación histórica (una carpeta que contiene answer.md, refs/index.json y anachronism.md, creada por el plugin historywright) ya es una carpeta de activos válida: empieza desde ahí, no busques de nuevo. Lee refs/index.json: cada referencia tiene la fecha, el lugar, la institución, el número de acceso y la licencia del objeto. Usa solo referencias cuyo object_date encaje en el período del briefing. Mantén una referencia con nc: true fuera de un modelo comercial. Verifica cada vista generada con anachronism.md antes de mallarla.

Paso 2: generar las vistas (reglas que importan)

Pídele a la herramienta de imagen: un objeto, centrado, ocupando aproximadamente dos tercios del encuadre; fondo blanco o gris claro liso; luz plana, uniforme, sin sombras; sin perspectiva fuerte (teleobjetivo o aspecto ortográfico); 1024 px o más; sin texto. Los personajes se colocan en una pose A relajada (brazos 30 a 45 grados hacia abajo, piernas ligeramente separadas): las poses T distorsionan las proporciones y las poses de acción fallan en generadores y riggers. Las plantillas por tipo están en el kit.

Para vistas adicionales consistentes a partir de una imagen, un modelo de edición de imagen con un adaptador multiángulo (Qwen Image Edit con un LoRA de Múltiples Ángulos, 2025-2026) mantiene la identidad mejor que generar cada vista por separado; espera deriva de color y ajusta el color de cada vista para que coincida con la frontal. Verifica cada vista generada con la frontal: mismas proporciones, mismo número de brazos, mismos elementos, nada reubicado. Descarta una vista que no coincida; una vista trasera incorrecta es peor que ninguna. Nombra el color de un objeto real a partir de los píxeles de la foto (mediana de tono, saturación, valor), no de una palabra: el modelo de edición sigue la palabra sobre la imagen (L-003). Las vistas traseras tienden a copiar una marca frontal en la parte trasera.

Un flujo de trabajo listo para un host Z-Image Turbo: references/zimage-reference.api.json ({SUBJECT} placeholder; probado 2026-10-11).

Paso 2b: la hoja de un accesorio diseñado proviene del modelo

Cuando el accesorio está diseñado (un arma, una herramienta, una pieza de vehículo descrita en palabras o en una hoja de fan) y los prompts de texto siguen dando la mitad de la forma, deja de hacer prompts: constrúyelo con un script de bpy (receta de polywright-blender "Un accesorio diseñado a partir de una descripción escrita") y renderiza la hoja desde el modelo, ortográfica lateral y superior sobre gris medio plano, Cycles en la CPU cuando la GPU esté ocupada. Un modelo es exacto, se rerenderiza en segundos después de cada nota, y el mismo archivo luego compone el accesorio en imágenes (centro: "Componer un modelo en una imagen"). Eleva la cámara lateral 10 a 15 grados cuando las piezas vienen en pares de imagen especular, o una se esconde detrás de la otra.

Paso 3: vistas desde un blockout (cuando las vistas siguen discrepando)

Construye un blockout aproximado (primitivas, o una primera malla generada solo frontal), renderízalo con pw.py render <archivo> --out refs/blockout --views front,right,back,left --color clay, luego haz que un modelo de edición de imagen repinte cada render gris en los colores y detalles del sujeto (imagen a imagen con el render como primera referencia y la vista frontal como segunda). Solo la cámara se mueve, por lo que nada puede reubicarse ni crecer extremidades adicionales; la parte trasera solo puede mostrar lo que implica el blockout. Alimenta el conjunto repintado a la generación multivista.

Paso 4: texturas y materiales

  • Prefiere un material CC0 (Poly Haven, ambientCG) sobre uno generado.
  • Generado tilable: pide "sin costuras, tilable, cenital, luz plana uniforme" a una potencia de dos, luego pw.py texture <img> --out refs/tex --seamless (fusiona bordes con desplazamiento) y mira un mosaico 2x2.
  • Mapas rápidos a partir de una foto o albedo: pw.py texture <img> --out refs/tex [--convention opengl|directx] escribe mapas de altura, normal y rugosidad derivados de la luminancia. Adecuado para accesorios y terreno, incorrecto para materiales medidos. Mapas normales: OpenGL (Y+) para Blender, Unity, Godot, glTF, three.js, Roblox; DirectX (Y-) para Unreal.
  • La luz horneada en una foto se convierte en luz horneada en el albedo: corrige aguas arriba con luz plana, o añade --delight (divide los gradientes amplios; las sombras nítidas proyectadas permanecen, píntalas). Los mapas normales solo cambian el sombreado: las siluetas permanecen planas y las formas grandes se rompen en ángulos rasantes, así que modela formas grandes y mapea solo detalles pequeños.

Paso 5: ponlos a trabajar

  • En Blender: imágenes de referencia como empties en vistas frontal, derecha y superior, escaladas a una dimensión conocida (los renders ortográficos de pw.py render reportan metres_per_px); receta en polywright-blender.
  • Para imagen a 3D: cuadrada, con relleno, 1024 px; pw.py gen rellena y elimina fondos automáticamente. Juzga la imagen antes de la ejecución de la GPU, y qué corregir en ella en lugar de en la malla: references/images-for-3d.md.
  • En un tablero (PureRef 2.1) para un humano: agrupa por vista, anota dimensiones en el tablero.

Mantenimiento

Unidad perenne, nivel fast. Compañeros: RESEARCH.md, CHANGELOG.md, LEARNINGS.md, TESTS.md con evals/evals.json, MAINTENANCE.md, estado en evergreen.json. Lee evergreen.json en cada uso; actualiza cuando corresponda.

Individual skills in this repo

This repo contains 4 individual skills — each has its own dedicated page.

m4bwav/polywright

Start here whenever a task needs a 3D model and no sibling below clearly owns it: a model of a real or imagined thing for a game (Unity, Roblox, Unreal, three.js), a 3D print, AI video or AR, or another plugin asking for a mesh. Picks the route (find, capture, generate, code), scaffolds the asset folder and manifest other plugins read, and runs pw.py (inspect, render a sheet, convert, check a budget, bpy headless, match a picture's camera, army blockouts with depth and pose passes for AI...

m4bwav/polywright-blender

Use whenever Blender is scripted, automated or debugged, before writing any bpy code: headless runs that report errors (pw.py bpy), the bpy API traps models still write in Blender 5.x (removed importers, renamed sockets, EEVEE names), tested recipes (modifiers, booleans, remesh, UVs, bakes, turntables, depth passes, batch exports), Blender MCP servers and their risks, and other 3D tools per OS. Use on 'write a Blender script', 'automate Blender', 'batch export .blend', any bpy traceback or...

m4bwav/polywright-finish

Use whenever a mesh must be made ready for a game engine, the web or AR: is it game-ready, too many polygons, LODs, retopology, UVs, baking, PBR and normal-map conventions, collision, rigging, and axis, unit and format export for Roblox, Unity, Unreal, Godot, three.js (meshopt, KTX2), USDZ and video blockouts. Use on 'is this game-ready', 'make this work in Roblox/Unity', 'optimise for the web', 'reduce polygons', 'add LODs', 'retopologise', 'bake normals', 'imports sideways or tiny', 'flip...

m4bwav/polywright-generate

Use whenever an imagined or hypothetical 3D model must be made from a prompt, a drawing, concept art, photos or a blockout: image-to-3D through ComfyUI (TRELLIS.2, Pixal3D, Hunyuan3D-2 via pw.py gen) or hosted (Meshy, Tripo, Rodin), or code (bpy, build123d, CadQuery, OpenSCAD) when it has dimensions; then texturing and the licence record. Use on 'make me a 3D model of a dragon', 'turn this drawing or concept art into 3D', 'image to 3D', 'text to 3D', 'TRELLIS', 'Hunyuan3D', 'Meshy', 'model a...

Skills relacionados