Tramado, anti-aliasing y color
Tramado
El tramado mezcla dos colores con un patrón de píxeles para simular un tercer color o un gradiente.
Cuándo usarlo:
- Áreas grandes y planas a partir de 48 px, como cielos, sombras grandes y fondos.
- Paletas ajustadas de 4–16 colores que necesitan más tonos.
- Texturas: piedra, arena, tela.
Cuándo no:
- Sprites de menos de 32 px. Se lee como ruido.
- Caras de personajes o cualquier cosa que se mueva. Produce parpadeo entre fotogramas.
- Cuando un tercer color de la paleta haría un mejor trabajo. Prefiere un paso de rampa sobre el tramado.
Herramientas:
| Necesidad | Herramienta |
|---|---|
| Gradiente entre dos colores | apply_dither_gradient(..., color_start, color_end, horizontal). Es Bayer 4×4 ordenado. |
| Textura uniforme o mezcla | apply_dither_pattern(..., color_a, color_b, density). Densidad 0.5 es un tablero de ajedrez; 0.25 y 0.75 son puntos dispersos. |
| Patrón colocado a mano | draw_rows con el patrón escrito. Consulta la referencia de patrones. |
Reglas:
- Trama solo entre colores vecinos de la rampa. Dos colores distantes parecen una rejilla, no una mezcla.
- Mantén la banda de transición estrecha, de 2 a 6 px. Las áreas sólidas definen la forma.
- Nunca trames a través de un contorno o borde de silueta.
Anti-aliasing (AA)
El AA coloca colores intermedios donde una curva o diagonal da pasos, para suavizar los escalones.
- Úsalo solo en líneas internas y curvas grandes, a partir de 32 px. Deja la silueta exterior contra un fondo transparente dura. Los bordes con AA muestran halos sobre otros fondos.
- Coloca un píxel de AA en la esquina interior de cada paso, de color entre la línea y el relleno. Para pasos largos, usa 2 px: uno más claro y otro más oscuro.
- Verifica el resultado con
view_sprite(zoom de región). Si el AA hace que la línea parezca más gruesa, está mal; retíralo.
Sombreado con color
- Construye la rampa de cada material con
generate_color_ramp(base, steps=3-5, hue_shift_degrees=15-30). Las sombras se inclinan hacia azul o púrpura, y las iluminaciones hacia amarillo o naranja. - Aumenta el contraste entre materiales con luminosidad, no solo con tono. Una comprobación rápida:
adjust_hsl(saturation_shift=-1)en una copia muestra si el arte se lee en escala de grises. - Para cambios de ambiente (noche, veneno, destello de golpe), usa
adjust_hslen una capa, oreplace_color/remap_colors_in_cel_rangeentre fotogramas. - Ajuste a una paleta retro: aplícala con
apply_palette_preset, luegoquantize_to_palette. Corrige manualmente las zonas que quedaron embarradas usando colores de la misma rampa.
Materiales
| Material | Cómo se lee |
|---|---|
| Metal | Alto contraste. Un brillo duro y marcado junto a una sombra profunda. Luz reflejada en el borde de la sombra. |
| Piedra | Bajo contraste. Textura agrupada, tramado disperso o grupos de 2–3 px, bordes astillados. |
| Madera | Líneas de veta a lo largo del tablón, en un tono más oscuro. Nudos pequeños en forma de elipse. |
| Tela | Gradientes suaves, pliegues como bandas curvas más oscuras, textura de líneas verticales para la trama. |
| Vidrio / agua | El fondo se ve a través en su mayor parte. Puntos especulares brillantes, iluminaciones en los bordes, un poco de tinte. |
| Piel | Una rampa cálida de 3–4 pasos con sombras rojizas. Sin tramado. |
Después de cualquier pasada de pulido, llama a get_color_stats para mantener la paleta ajustada, y lint_sprite para detectar píxeles sueltos.