CommunityImagengithub.com

minhdv-zz/tb-hoidz

Texturiza modelos de juego existentes en Blender con mapeo UV gradiente de paleta a partir de una imagen conceptual. Activar solo cuando el usuario invoque explícitamente /tb-hoidz, $tb-hoidz o tb-hoidz.

¿Qué es tb-hoidz?

Esta habilidad permite aplicar texturas a modelos 3D de Blender existentes utilizando un enfoque de mapeo UV basado en paletas de colores y gradientes, derivados de una imagen conceptual. Está diseñada para equipos de desarrollo de juegos donde varios miembros trabajan en texturizado, y su activación está restringida a comandos explícitos (/tb-hoidz, $tb-hoidz o tb-hoidz) para evitar interferencias con otras habilidades de texturizado del equipo. La habilidad se integra con Blender mediante MCP y utiliza un script central (gm_core.py) que implementa un algoritmo de mapeo preservado. El flujo de trabajo es altamente estructurado: primero se prepara el modelo y se identifican los materiales, luego se planifica la asignación de zonas de color, se realiza el mapeo base y se compara con la imagen conceptual, y finalmente se ejecuta un aseguramiento de calidad (QA) antes de guardar. La comunicación con el usuario es minimalista, priorizando informes concisos y capturas de imagen solo cuando son necesarias para resolver dudas o verificar correcciones. La habilidad maneja la preservación de geometría, la gestión de UVs y la verificación de normales y topología, y permite guardar archivos de recuperación antes de operaciones de edición geométrica.

Compatible con~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/minhdv-zz/team-skills/tree/HEAD/plugins/tb-hoidz/skills/tb-hoidz

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

Mapeo de Gradientes para Blender

Revisión del flujo de trabajo 15. Responde en el idioma del usuario. Utiliza el Blender MCP conectado y el script mantenido scripts/gm_core.py (versión 8+); preserva su algoritmo de mapeo.

Lee solo lo que esta fase necesita

Para el mapeo base, lee references/base-api.md y references/reference-quality.md una vez por contexto disponible. No cargues fuentes auxiliares ni el flujo de trabajo completo solo para descubrir APIs. Inspecciona una firma/docstring específica para argumentos no documentados; lee solo la función fuente relevante si es necesario.

references/workflow.md es la referencia extendida para preajustes, claves de plan opcionales, explicaciones de QA y ejemplos históricos: lee las secciones relevantes bajo demanda. SKILL_DIR es la carpeta de este punto de entrada. Lee references/detail.md solo después de la aprobación base. Reutiliza documentos que ya están en contexto a menos que hayan cambiado o se hayan perdido después de la compactación.

Alcance y salvaguardas

  • /tb-hoidz autoriza la preparación, planificación, zonas, mapeo base, comparación y QA. Combina un plan conciso y un aviso de asignación de paleta en la breve actualización de apertura, luego continúa sin confirmación intermedia; sigue las reglas de comunicación a continuación. Detente después de la base completada para la aprobación del usuario antes del mapeo de detalle. Las adiciones de geometría requieren la elección del usuario sobre detalle, método de corte y costo de triángulos; las aprobaciones existentes persisten.
  • Reutiliza el concepto y objetivo proporcionados, de lo contrario las mallas seleccionadas si no son ambiguas. Pregunta solo por entradas faltantes. Nunca inventes un concepto, reemplaces el activo o importes duplicados por defecto.
  • Registra bpy.data.filepath al inicio de la ejecución como el destino de guardado de trabajo. Edita los objetos en vivo. Un archivo cambiado inicia un nuevo contexto; un archivo sin guardar requiere la primera ubicación de guardado del usuario.
  • Cada cara pertenece a una zona; una banda por zona, U colapsada en su centro, al menos 2 píxeles de márgenes U/V. Combina normales de luz superior y altura, no solo altura por defecto. Utiliza normales duras/suaves apropiadas y respuesta de material. Preserva la geometría durante el mapeo base.
  • Almacena el plan, membresías/evidencia privadas, triángulos de referencia, firmas, QA y excepciones de forma local en la escena. Los archivos JSON persistentes, las exportaciones de imágenes y los informes de referencia son opcionales, no entregables por defecto. save_plan por defecto guarda en la carpeta de la habilidad: utiliza almacenamiento explícito y escribible en su lugar.

Comunicación y vista previa

Por defecto, narración mínima en el chat: realiza el trabajo autorizado y las comprobaciones internas, luego informa el resultado completado. Combina el plan, la asignación de paleta prevista y cualquier alternativa conocida en una breve actualización de apertura. Durante el trabajo, evita mensajes de hito rutinarios, tablas de colores, volcados de QA y explicaciones repetidas de vista previa. Proporciona solo breves actualizaciones de progreso requeridas por instrucciones de ejecución de mayor prioridad, o informa de inmediato un bloqueo, una decisión del usuario necesaria o un cambio en el alcance del material.

Mantén toda la evidencia, candidatos e informes de forma local en la escena; devuelve resúmenes compactos de herramientas para las decisiones. Prefiere la inspección visual interna cuando la herramienta lo soporta explícitamente. Si una herramienta muestra automáticamente imágenes en el chat, acepta esa limitación, utiliza solo las capturas necesarias y no incrustes esas imágenes nuevamente en comentarios o en la respuesta final. Nunca inventes un modo de vista previa oculta ni omitas la QA visual requerida para mantener el chat en silencio. Utiliza una vista general mapeada por defecto; las capturas adicionales deben resolver una incertidumbre o verificar una corrección significativa.

Termina con un informe conciso que cubra el archivo guardado y el estado sucio, el resultado de QA, las limitaciones del material y los detalles pendientes. Solicita la aprobación de la base en el punto de control existente. Si falla el guardado o una comprobación requerida, informa el estado real incompleto. La narración mínima por sí sola no establece un ahorro de velocidad o tokens.

Mapeo base

  1. Conectar y preparar. Llama a get_addon_status una vez y obtén datos compactos de la escena: ruta de trabajo, mallas, límites del mundo, conteos de caras/triángulos y materiales. Agrupa las lecturas independientes. Importa los ayudantes desde el directorio de scripts absoluto de esta habilidad en cada llamada a Blender que los utilice. En la primera importación, coloca ese directorio primero en sys.path, elimina los módulos gm de otras rutas, recarga gm_core, e imprime su ruta/versión verificada una vez (base-api.md). Las llamadas posteriores importan sin recargar. Ejecuta ensure_palette; incluye la alternativa, la reasignación o la creación de material en el informe final a menos que necesite una decisión del usuario ahora. Pregunta antes de actualizar una copia de habilidad de paleta de equipo diferente. La actualización de apertura cubre la asignación de paleta antes de prepare_model(..., assign_material=True); evita un anuncio de rutina separado.
  2. Identificar materiales antes del mapeo. En un lote de descubrimiento inicial cuando sea práctico, recopila partes, límites, grupos UV originales y resúmenes de normales en espacio mundial para los objetos objetivo. Almacena membresías y evidencia de forma privada; resume solo las partes relevantes para la decisión. Enfoca las comprobaciones más profundas de PCA/profundidad/adyacencia en partes ambiguas o mixtas y familias representativas, luego reutiliza la evidencia verificada. Se permite descubrimiento adicional para límites no resueltos. Combina pistas geométricas con posición conceptual; el descubrimiento precede a la asignación semántica. Audita las partes dominantes inciertas antes de asignarlas. Un cuadro delimitador delgado puede describir una lámina ancha o una cuerda diagonal: inspecciona las dimensiones principales y la extensión de la superficie más la posición semántica. Las pistas de forma son evidencia, nunca etiquetas de material. Captura surface_groups(..., uv_seams=True) antes de sobrescribir UVs en superficies mixtas. Verifica un representante y la estructura coincidente antes de reutilizar una regla para repeticiones. Resuelve los límites de panel/borde, cavidad/superficie y envoltura/mástil durante la base. Completa la compuerta de material de partes pequeñas en reference-quality.md para cada parte o familia estructuralmente verificada; el tamaño pequeño no exime a una parte. Las asignaciones inciertas requieren descubrimiento enfocado antes del mapeo.
  3. Planificar y asignar. Utiliza reference-quality.md para colores medidos o estimados explícitamente del concepto, jerarquía de materiales y valores. Realiza búsquedas por lotes completas seguras en V con suggest_zone_colors; conserva 2 o 3 candidatos y colores elegidos de forma privada; emite solo un resumen compacto de la herramienta y los problemas que necesitan una decisión. Asigna zonas a partir de la auditoría de material verificada y verifica las caras no asignadas y los límites inciertos antes del mapeo. No utilices un material predeterminado genérico para lograr cobertura; las asignaciones temporales permanecen explícitamente inciertas hasta que se verifiquen. Preserva las membresías verificadas. Enumera emblemas/tableros faltantes como detalles futuros.
  4. Mapear y comparar. Aplica el plan, luego show_texture(light="FLAT"). Valida la paleta y el material de vista previa antes de inspeccionar el color; evita una captura de pantalla inicial completamente rosa. Una imagen previa al mapeo debe responder una pregunta geométrica específica: utiliza colores sólidos planos verificados o colores de zona temporales. Inspecciona una vista general comparable de 512 a 640 px después del mapeo. Completa una revisión de límites semánticos de las familias auditadas, incluyendo accesorios pequeños e interfaces ocultas o ilegibles en la vista general. Utiliza vistas específicas solo donde sea necesario. Corrige solo los objetos/zonas afectados y verifica los vecinos. El ajuste de iluminación real opcional es para una discrepancia concreta no resuelta, no un pase general de todo el activo. Otra captura debe resolver un problema o verificar una corrección significativa.
  5. QA final y guardado. Finaliza las correcciones de color y límites planificadas antes de la QA final. Durante el mapeo, utiliza comprobaciones compactas de cobertura, límites y zonas afectadas en lugar de la QA final de todo el activo. Después del último cambio, ejecuta qa y qa_faces en cada objetivo una vez. Una reparación solicitada por QA invalida los resultados afectados: vuelve a ejecutar los ayudantes de objeto completo en los objetivos afectados y amplía a todos los usuarios para cambios de dependencia compartidos; nunca guardes utilizando QA obsoleto. Corrige fallos; inspecciona y documenta advertencias/excepciones intencionales. Verifica cobertura, márgenes, UV activo/renderizado, enlaces reales de sombreador de paleta, normales/luz y topología base sin cambios. Registra la comparación de referencia y el resultado de la compuerta de material por separado: la QA de datos no demuestra una asignación correcta de material o similitud visual. No marques una base como completamente verificada mientras queden asignaciones inciertas; registra cualquier limitación genuina de referencia/topología explícitamente. Finaliza las vistas previas temporales, empaqueta la paleta, deja la textura visible y ejecuta el guardado protegido en base-api.md. Informa la ruta guardada/estado sucio, detalles pendientes y solicita la aprobación de la base.

Disciplina de caché y salida

  • Ejecuta state_signature + compare_state una vez por lote dependiente antes de reutilizar la caché. Las firmas faltantes no están verificadas. Los cambios de geometría invalidan las membresías; los cambios de UV invalidan la evidencia de UV original. Los cambios compartidos de normal/paleta/material/transformación/luz amplían el alcance. Actualiza las firmas después de ediciones aceptadas. No repitas firmas entre lecturas independientes en un lote sin cambios.
  • Mantén todas las partes, membresías de cara, datos de paleta, candidatos y QA en la escena. Devuelve conteos agregados más un máximo de 12 filas de partes relevantes para la decisión por defecto; amplía solo para una región nombrada no resuelta o una solicitud del usuario. Nunca imprimas el mapa de paleta completo/catálogo de bandas, lista de candidatos, catálogo de caras/vértices o caché de escena. Filtra zonas vacías de apply_plan; devuelve totales de caras mapeadas y bandas cambiadas, no informes brutos de ayudantes. La salida final de QA cubre cada objetivo con conteos de fallos/problemas y advertencias procesables; conserva informes detallados de aprobación de forma privada.
  • Emite una representación de resultado de MCP: structuredContent cuando esté disponible, de lo contrario contenido de texto. Reenvía bloques de imagen por separado. No conviertas a cadena representaciones duplicadas o datos de imagen.
  • Agrupa lecturas independientes y operaciones de objetos compatibles; mantén las comprobaciones/ediciones dependientes secuenciales. Evita capturas de pantalla sin cambios, volcados de escena y sondeos de conexión. No hagas afirmaciones de ahorro de tokens/tiempo sin mediciones comparables.

Eficiencia de ejecución

  • Carga el mapa de paleta una vez por lote de ejecución. Almacena en caché part_evidence por membresía de cara verificada; no recalcules PCA por separado para centro y tamaño. Agrupa lecturas y correcciones compatibles mientras mantienes las decisiones revisables. Preserva el algoritmo de mapeo mantenido.
  • Antes de la captura, establece juntos la validez de imagen/sombreador, sombreado, luz y encuadre. Recopila discrepancias concretas de la vista general y corrige por lotes las correcciones independientes antes de la verificación. Para ediciones locales, preserva y verifica los datos de UV/zona fuera del alcance y verifica los límites vecinos; amplía el alcance para dependencias compartidas.
  • Almacena métricas de ejecución ligeras de forma local en la escena: identidad objetivo/línea base, segundos por etapa, conteos reales de llamadas a herramientas/capturas y estado final de QA. Utiliza time.perf_counter() alrededor del descubrimiento, mapeo/correcciones y trabajo de QA/guardado existentes; cuenta las llamadas reales a herramientas en la orquestación. No agregues llamadas solo para medir. Marca métricas no disponibles y distingue el tiempo de ejecución de Blender del tiempo transcurrido de extremo a extremo. Realiza evaluaciones comparativas solo cuando se solicite en el mismo concepto/modelo/estado inicial, comparando calidad y tiempo. No equipares los bytes de salida con ahorros de tokens.

Guardado y recuperación

Para ediciones de color/UV, utiliza Deshacer de sesión y la política de copia de seguridad existente de Blender; no hay archivo de recuperación separado. La actualización del archivo de trabajo está autorizada, pero los límites del sistema de archivos aún se aplican. Resuelve la ruta de guardado permitida una vez y reutilízala. Prefiere la herramienta Blender conectada cuando esté permitida. Si se requiere elevación, solicítala solo para el guardado protegido concreto después de QA. No redescubras el código fuente del servidor ni implementes TCP sin formato por ejecución. Una alternativa aprobada debe usar un host/puerto en vivo configurado, nunca un puerto adivinado ni una ruta que eluda la denegación.

Antes de ediciones de geometría, guarda una copia de recuperación en el directorio hermano _backup/<nombre_base_trabajo>_gm_recovery.blend con copy=True; reutiliza solo esta ranura propiedad de la habilidad. Para ese guardado de recuperación solo, registra preferences.filepaths.save_version, establécelo temporalmente en 0 y restáuralo en finally. No persistas preferencias, cambies la política de guardado de trabajo ni elimines copias de seguridad del usuario. Verifica la autorización y el guardado de recuperación exitoso antes de cortar; detén el trabajo de geometría si falla.

Las ediciones directas de bpy pueden dejar is_dirty=False: requiere un operador de guardado explícito exitoso, que coincida con la ruta de archivo resultante y una comprobación de suciedad posterior al guardado. Preserva el estado de reversión en caso de fallo. Si la captura visual no está disponible, completa la QA de datos, marca la fidelidad visual como no verificada e identifica la región para revisión en vivo.

Skills relacionados