# Color y paletas

Elige colores, crea y edita la paleta del sprite, usa paletas de tu biblioteca y trabaja en color indexado.

_Los atajos están escritos para Windows y Linux. En un Mac, usa ⌘ Cmd donde dice Ctrl y ⌥ Option donde dice Alt._

Pintas con dos colores a la vez, el **primer plano** y el **fondo**, y guardas los colores que usa
un sprite en su **paleta**. Las paletas que te gustan se pueden guardar en tu biblioteca y usar en
cualquier sprite.

## Primer plano y fondo

El botón izquierdo del mouse pinta con el color de primer plano y el botón derecho con el color de
fondo. Empiezan siendo negro y blanco.

- **Haz clic** en una muestra de la paleta para convertirla en el color de primer plano; **haz clic
  derecho** para el fondo. Con el teclado, `Enter` elige el primer plano y `Shift+Enter` el
  fondo. En una pantalla táctil, toca la muestra y luego el botón de **fondo** de la paleta (abajo).
- Pulsa `X` para intercambiar los dos.
- Mantén `Alt` sobre el lienzo, o usa el Cuentagotas, para tomar un color del sprite.
- El panel **Colores** muestra ambos. Haz clic en uno para elegir cuál edita el selector de color; el
  encabezado del selector dice **Editando primer plano** o **Editando fondo**. Un color que coincide
  con una entrada de la paleta muestra su índice (`Idx-3`); si no, dice **Personalizado**.
- **Arrastra** un color de primer plano o de fondo en el panel Colores para ajustarlo sin abrir el
  selector: a la derecha cambia el tono, arriba aclara y abajo oscurece. Mantén `Shift` para
  cambiar la saturación en lugar del tono.
- **Recientes** guarda los últimos diez colores de primer plano que elegiste. Haz clic en uno para
  usarlo otra vez.

Las selecciones siguen el modo de color del sprite: en un sprite en escala de grises un color se
convierte en su gris, y en un sprite indexado se ajusta al color más cercano de la paleta.

## El selector de color

El panel **Selector de color** elige cualquier color. Sus pestañas muestran distintas formas de
elegir:

| Pestaña | Muestra |
| - | - |
| **Tonos** | un cuadrado de saturación y brillo, con un control deslizante de tono |
| **Espectro** | el tono a lo ancho, la luminosidad hacia abajo, con un control deslizante de saturación |
| **Rueda** | una rueda de tono y saturación, con un control deslizante de brillo |
| **Controles deslizantes** | deslizadores de canal y campos numéricos, en RGB, HSV, HSL u OKLCH |
| **Mapa de normales** | colores para mapas de normales (actívalo en los ajustes) |

- **Opacidad** establece la transparencia del color.
- El campo de texto acepta cualquier color que escribas o pegues (`#ff8800`, `rgb(...)`,
  `oklch(...)`); el botón junto a él cambia entre HEX, RGB, HSL y OKLCH.
- El botón del cuentagotas toma un color de cualquier parte de tu pantalla, en los navegadores que lo
  permiten.
- Los **ajustes** (la rueda dentada) eligen qué pestañas se muestran, el espacio de color (HSV, una
  rueda RYB de pintor, u OKLCH, donde pasos iguales se ven igual de brillantes), una **armonía**
  (complementaria, triádica y más) que se muestra como chips de color, y si el selector se ajusta a
  pasos.

En un sprite en escala de grises el selector es un único control deslizante de brillo.

## La paleta

El panel **Paleta** contiene los colores del sprite.

| Botón | Qué hace |
| - | - |
| **+** | Añade el color de primer plano (si no está ya). |
| **Intercambiar** | Intercambia los colores de primer plano y de fondo. |
| **Ordenar** | Ordena la paleta, o el rango seleccionado, por tono, saturación, brillo, luminancia, un canal o alfa, de forma ascendente o descendente, en el mismo orden que Aseprite. Los colores totalmente transparentes van siempre primero, y al ordenar por tono los grises van primero (de oscuro a claro) en orden ascendente y al final en orden descendente. |
| **Crear rampa** | Con un rango seleccionado: rellena los colores entre sus dos extremos con un degradado uniforme, o inserta colores intermedios nuevos. |
| **Rampa de sombreado** | Con un rango seleccionado: lo convierte en la lista de Tonos de la tinta Sombreado. Con la herramienta Degradado, convierte el rango en los Puntos del degradado. |
| **Bloqueo de paleta** (el candado, sprites RGBA) | Activa o desactiva el [Bloqueo de paleta](https://pxstud.io/es/docs/manual/guides/color.md#palette-lock). |
| **Herramientas de paleta** (**...**) | [Auditoría de paleta](https://pxstud.io/es/docs/manual/guides/color.md#palette-audit), [Limpiar paleta](https://pxstud.io/es/docs/manual/guides/color.md#cleaning-up-the-palette), Bloqueo de paleta y los [grupos de paleta](https://pxstud.io/es/docs/manual/guides/color.md#palette-groups). |
| **Biblioteca** | Abre la Biblioteca de paletas. |

Debajo, la muestra seleccionada se puede **editar**, usar como color de **fondo**, **reemplazar**
por el color de primer plano o **quitar**.

Trabajar con muestras:

- **Shift+clic** (o `Shift` y las teclas de flecha) selecciona un rango.
- **Arrastra** una muestra, o pulsa `Alt` y una tecla de flecha, para reordenar.
- **Doble clic** o pulsa `F2` para editar un color.
- `Del` quita el color seleccionado.

Los cambios en la paleta forman parte del sprite, así que se pueden deshacer.

Las mismas herramientas de paleta están en Sprite > Paleta > Auditoría de paleta..., Sprite > Paleta > Limpiar paleta... y
Sprite > Paleta > Bloqueo de paleta.

### Grupos de paleta

Un grupo da nombre a una tanda de entradas de la paleta, como "Piel" o "Follaje". Su nombre se
muestra como un chip sobre las muestras.

- Para crear uno, selecciona una muestra o haz **Shift+clic** en un rango, luego elige **Nuevo grupo
  desde el rango...** en el menú **...** y ponle un nombre. Un grupo nuevo recorta cualquier grupo con
  el que se solape.
- **Haz clic** en un chip para seleccionar los colores del grupo como un rango, listo para ordenar,
  crear una rampa a partir de él o usarlo como Tonos.
- **Haz doble clic** en un chip (o elige **Editar grupo...** con una de sus muestras seleccionada)
  para renombrarlo o quitarlo. **Quitar todos los grupos** los borra.

Los grupos nombran posiciones de la paleta, no colores: mover, ordenar o quitar colores no mueve un
grupo. Los grupos se guardan con el sprite y se aplican a todas las paletas cuando la paleta cambia
con el tiempo.

### Auditoría de paleta

Sprite > Paleta > Auditoría de paleta... lista todos los colores que usa la obra y que no están en la paleta, empezando
por los más usados, con su cantidad de píxeles y el color de la paleta al que más se acerca. Para
cada uno puedes:

- **Añadirlo** a la paleta.
- **Reasignarlo**: sus píxeles pasan a ser el color de la paleta de la derecha. Es el color más
  cercano, a menos que elijas otro de la lista.

**Añadir todo a la paleta** y **Reasignar todo** hacen todos los colores a la vez. La lista se
actualiza sobre la marcha e indica cuándo todos los colores están en la paleta. Reasignar cambia las
celdas de todas las capas que puedes editar (las capas bloqueadas y ocultas se omiten) en los
fotogramas que comparten la paleta del fotograma activo. Es un solo paso de deshacer.

La auditoría es para sprites RGBA; un sprite indexado solo usa colores de la paleta.

### Limpiar la paleta

Sprite > Paleta > Limpiar paleta... ordena la paleta vigente en el fotograma activo:

- **Fusionar colores duplicados** conserva el primero de cada conjunto de colores idénticos.
- **Fusionar colores parecidos** también fusiona los colores más cercanos que la **Distancia** a uno
  anterior (alrededor de 2 apenas se nota, 10 es claramente distinto).
- **Quitar colores sin usar** quita los colores que ningún píxel usa.

El diálogo muestra la paleta que quedará antes de aplicar. En un sprite indexado los píxeles siguen
a sus colores hasta sus nuevas posiciones, los píxeles de un color parecido fusionado toman el color
que se conservó, y la entrada transparente nunca se quita. En sprites RGBA y en escala de grises
solo cambian las muestras.

### Bloqueo de paleta

Con el **Bloqueo de paleta** activado (el candado del panel Paleta, o Sprite > Paleta > Bloqueo de paleta), un sprite
RGBA se comporta como uno indexado mientras dibujas: cada píxel que pinta una herramienta se ajusta
al color más cercano de la paleta, incluidos los bordes suaves del pincel, las tintas con mezcla y
los degradados. Los colores de primer plano y de fondo también se ajustan a la paleta. Los píxeles
sobre los que no pintas conservan sus colores; usa la [Auditoría de paleta](https://pxstud.io/es/docs/manual/guides/color.md#palette-audit) para
llevar la obra existente a la paleta.

El Bloqueo de paleta se guarda con el sprite. Pegar, mover y transformar píxeles, y los ajustes del
menú Filtro, no se ajustan.

## La Biblioteca de paletas

El botón **Biblioteca** abre la Biblioteca de paletas, con dos pestañas.

**Integradas** lista las paletas que vienen con el editor: consolas y computadoras clásicas, y
paletas populares de Lospec, cada una con el crédito de su autor. Funcionan sin conexión y sin haber
iniciado sesión. Busca por nombre o etiqueta y luego:

- **Usar** reemplaza la paleta del sprite por ella; **Añadir al final** añade sus colores.
- El botón de guardar guarda una copia en Mis paletas, conservando el crédito.
- **Encuentra más en Lospec** abre la [lista de paletas de Lospec](https://lospec.com/palette-list);
  importa una desde Mis paletas.

**Mis paletas** contiene las paletas que has guardado. Son solo tuyas; con Sync también se guardan en
tu cuenta.

- **Guardar en Mis paletas** guarda la paleta actual del sprite con un nombre.
- **Cargar** reemplaza la paleta del sprite por una guardada; **Añadir al final** añade solo los
  colores que aún no tiene.
- **Importar...** lee `.gpl` (GIMP), `.pal` (JASC), `.hex`, `.txt` (Paint.NET), `.act`, `.aco` y
  `.ase` (Adobe Photoshop y Swatch Exchange; las muestras CMYK y Lab se convierten sin perfil de
  color), archivos de Aseprite e imágenes (cada color distinto, en orden de lectura).
- **Importar desde Lospec** toma el nombre o la dirección de una paleta en lospec.com, por ejemplo
  `endesga-32`. **Encuentra más en Lospec**, junto a él, abre la lista de paletas de Lospec.
- **Exportar** guarda la paleta como `.gpl`, `.pal`, `.hex`, `.act`, `.aco`, `.ase` o una tira
  `.png` con un píxel por color. `.hex`, `.png`, `.gpl` y `.pal` conservan la transparencia (`.gpl` y
  `.pal` como la escribe Aseprite); `.act` conserva solo un color transparente, y `.aco` y `.ase`
  ninguno.

Cargar una paleta de la biblioteca copia sus colores al sprite: cambiar después la paleta de la
biblioteca no cambia los sprites que ya la usan. En un sprite indexado, cargar reemplaza los colores
ranura por ranura y cada píxel conserva su número de entrada, así que el arte muestra los colores
nuevos (un cambio de paleta). Si la paleta cargada es más corta que las entradas que usan los
píxeles, esas entradas conservan sus colores anteriores.

## Modos de color

El modo de color de un sprite decide cómo almacenan el color sus píxeles. Elígelo al crear el
sprite, o conviértelo después con Sprite > Convertir a color RGB, Sprite > Convertir a escala de grises o
Sprite > Convertir a color indexado... (también en Archivo > Renombrar sprite...).

- **RGBA** almacena un color completo, con transparencia, en cada píxel. La paleta es un conjunto de
  muestras entre las que elegir.
- **Escala de grises** almacena un tono de gris y su transparencia.
- **Indexado** almacena, en cada píxel, el número de una entrada de la paleta (hasta 256). Cambia una
  entrada y todos los píxeles que la usan cambian de color; reordena u ordena la paleta y los
  píxeles siguen a sus colores; quita una entrada y sus píxeles se vuelven transparentes.

Sprite > Convertir a color indexado... abre un diálogo con una vista previa en vivo de la celda activa:

- **Paleta:** **Mantener la paleta actual** (prepárala antes; si su entrada transparente, la primera
  por defecto, es un color visible, el primer color totalmente transparente de la paleta pasa a ser
  la entrada transparente, o, si no hay ninguno, se inserta una entrada transparente antes de ella
  para que ese color se conserve; solo se conservan los primeros 256 colores), o **Generar a partir
  del sprite** con hasta **Colores** (de 2 a 256) elegidos de los propios píxeles del sprite. Una
  paleta generada reemplaza a la actual, incluidas las paletas que cambian con el tiempo; su primera
  entrada es transparente, salvo que el Fondo sea la única capa.
- **Tramado:** **Ninguno** ajusta cada píxel a su color más cercano de la paleta. Los patrones
  ordenados (**Bayer 2x2**, **4x4**, **8x8**) mezclan los dos colores más cercanos en una cuadrícula
  regular que se mantiene fija de un fotograma a otro, lo que va bien para animación.
  **Floyd-Steinberg** y **Atkinson** reparten el error de cada píxel entre sus vecinos para un
  aspecto más suave y granulado; Atkinson mantiene más limpias las luces y las sombras. La difusión
  de error puede parpadear en una animación, porque un cambio pequeño mueve el grano.
- **Cantidad** (de 0 a 100): cuánto tramado aplicar.

Los píxeles casi totalmente transparentes (alfa menor que 8 de 255) pasan a ser transparentes, y un
píxel visible nunca cae en un color de la paleta totalmente transparente. Convertir a escala de
grises elimina el color: cada píxel conserva su brillo como lo mide Aseprite (los pesos de Rec. 709,
así que el rojo puro pasa a 54, el verde a 182 y el azul a 18 de 255). También reemplaza la paleta
por 256 grises, de negro a blanco, y elimina las paletas que cambian con el tiempo y los grupos de
paleta, de modo que al convertir después a indexado los grises se asignan a grises. Ambas
conversiones se pueden deshacer; convertir de indexado a RGBA no pierde nada.

En un sprite indexado, una entrada de la paleta representa lo **transparente**: la primera, a menos
que cambies **Color transparente** en Archivo > Renombrar sprite.... Se mueve con su entrada cuando
añades, quitas, reordenas u ordenas colores. Si quitas la propia entrada transparente, sus píxeles
siguen siendo transparentes: otro color totalmente transparente toma su lugar o, si no hay ninguno,
la ranura justo después del último color.

## Profundidad de color

Sprite > Profundidad de color... fija el sprite a un perfil de color de hardware, igual que una Mega Drive
solo podía mostrar 8 niveles de rojo, verde y azul. Elige un ajuste (profundidades genéricas como
RGB565, consolas por fabricante, ordenadores domésticos) o **Personalizada** para indicar tus propios
**bits** o **niveles** por canal, en color o en escala de grises. El diálogo muestra una vista previa
por bandas de lo que admite el perfil, cuántos colores son y, con 16 niveles o menos, los valores
exactos.

Al aplicarlo, cada píxel de cada capa y fotograma, los tiles, la paleta (y las paletas que cambian
con el tiempo) y los colores de primer plano y de fondo se ajustan al perfil, en un solo paso de
deshacer. En un sprite indexado solo cambia la paleta: los píxeles conservan sus entradas. Un perfil
de escala de grises convierte cada color en un gris; un sprite en escala de grises solo admite
perfiles de grises.

A partir de ahí el sprite se queda en su perfil: todo lo que dibujes, rellenes, pegues, transformes,
ajustes, importes o ejecutes desde un script cae en un color permitido, y lo mismo pasa con las
ediciones de la paleta, el selector de color (sus deslizadores muestran los pasos como bandas), el
cuentagotas y Reemplazar color. Los efectos de capa y las capas de ajuste también muestran solo
colores permitidos, así que aplicarlos de forma permanente no cambia nada en pantalla. El perfil
activo aparece sobre el selector de color y en Archivo > Renombrar sprite....

**Ninguna (8 bits)** quita el perfil. Los colores se quedan como están: la precisión que se perdió
no vuelve (para eso usa Deshacer). Las capas de referencia no se tocan, y mezclar píxeles
translúcidos o capas con opacidad y modos de fusión todavía puede dar en pantalla colores entre los
pasos, como en un sprite indexado.

Elegir una consola en la pestaña **Consolas** de Archivo > Nuevo sprite... ofrece su profundidad de color y,
en los sistemas con una paleta fija como la NES o PICO-8, su paleta. El perfil se guarda en los
archivos `.pxstudio`; una exportación a Aseprite escribe los píxeles tal cual, y al abrirla aquí el
sprite vuelve a quedar fijado. Los niveles de un canal de n bits están repartidos por igual entre 0
y 255 (3 bits: 0, 36, 73, 109, 146, 182, 219, 255). Parte del hardware no es del todo lineal; las
notas dicen dónde el perfil lo aproxima.

| Perfil | Grupo | Profundidad de color | Colores | Notas |
| - | - | - | - | - |
| **RGB565** | Genéricos | 5-6-5 bits | 65536 | Color de 16 bits (high color): 5 bits de rojo y azul, 6 de verde. |
| **RGB444** | Genéricos | 4-4-4 bits | 4096 | Color de 12 bits, 4 bits por canal (el del Amiga). |
| **RGB332** | Genéricos | 3-3-2 bits | 256 | Color de 8 bits: 3 bits de rojo y verde, 2 de azul. |
| **Escala de grises de 8 bits** | Genéricos | gris de 8 bits | 256 | 256 grises. |
| **Escala de grises de 4 bits** | Genéricos | gris de 4 bits | 16 | 16 grises. |
| **Escala de grises de 2 bits** | Genéricos | gris de 2 bits | 4 | 4 grises. |
| **Escala de grises de 1 bits** | Genéricos | gris de 1 bits | 2 | Blanco y negro. |
| **Game Boy** | Nintendo | gris de 2 bits | 4 | 4 tonos de verde LCD: escala de grises de 2 bits o la paleta verde. |
| **Game Boy Color** | Nintendo | 5-5-5 bits | 32768 | Color de 15 bits, 5 bits por canal. |
| **Game Boy Advance** | Nintendo | 5-5-5 bits | 32768 | Color de 15 bits, 5 bits por canal. |
| **NES** | Nintendo | Paleta fija | | Una paleta fija de unos 54 colores. |
| **SNES** | Nintendo | 5-5-5 bits | 32768 | Color de 15 bits, 5 bits por canal. |
| **Nintendo DS** | Nintendo | 5-5-5 bits | 32768 | Color de 15 bits para gráficos 2D, 5 bits por canal. |
| **Master System** | Sega | 2-2-2 bits | 64 | Color de 6 bits, 2 bits por canal: 64 colores. |
| **Mega Drive / Genesis** | Sega | 3-3-3 bits | 512 | Color de 9 bits, 3 bits por canal: 512 colores. Niveles equidistantes; la rampa real se curva un poco. |
| **Game Gear** | Sega | 4-4-4 bits | 4096 | Color de 12 bits, 4 bits por canal. |
| **PlayStation** | Sony | 5-5-5 bits | 32768 | Color de 15 bits, 5 bits por canal (24 bits solo para vídeo). |
| **Atari Lynx** | Atari | 4-4-4 bits | 4096 | Color de 12 bits, 4 bits por canal. |
| **Neo Geo Pocket Color** | Otras portátiles | 4-4-4 bits | 4096 | Color de 12 bits, 4 bits por canal. |
| **WonderSwan Color** | Otras portátiles | 4-4-4 bits | 4096 | Color de 12 bits, 4 bits por canal. |
| **Playdate** | Otras portátiles | gris de 1 bits | 2 | Blanco y negro. |
| **PC Engine / TurboGrafx-16** | Otras consolas | 3-3-3 bits | 512 | Color de 9 bits, 3 bits por canal: 512 colores. |
| **Neo Geo** | Otras consolas | 5-5-5 bits | 32768 | Aproximado como color de 15 bits: el hardware añade un bit de oscuridad compartido. |
| **Commodore 64** | Ordenadores domésticos | Paleta fija | | Una paleta fija de 16 colores. |
| **Amiga OCS/ECS** | Ordenadores domésticos | 4-4-4 bits | 4096 | Color de 12 bits, 4 bits por canal: 4096 colores. |
| **Atari ST** | Ordenadores domésticos | 3-3-3 bits | 512 | Color de 9 bits, 3 bits por canal: 512 colores. |
| **Atari STE** | Ordenadores domésticos | 4-4-4 bits | 4096 | Color de 12 bits, 4 bits por canal. |
| **Amstrad CPC** | Ordenadores domésticos | 3-3-3 niveles | 27 | 27 colores: cada cañón apagado, a media o a plena intensidad. |
| **IBM CGA** | Ordenadores domésticos | Paleta fija | | Una paleta fija de 16 colores (4 a la vez a 320x200). |
| **PC VGA (Mode 13h)** | Ordenadores domésticos | 6-6-6 bits | 262144 | Color de 18 bits, 6 bits por canal (256 a la vez). |
| **PICO-8** | Consolas de fantasía | Paleta fija | | Una paleta fija de 16 colores. |
| **TIC-80** | Consolas de fantasía | Paleta fija | | 16 colores, Sweetie 16 de forma predeterminada. |

## Paletas que cambian con el tiempo

En un sprite con más de un fotograma, el panel de paleta puede iniciar una **nueva paleta desde este
fotograma**: una copia de la actual que se aplica desde ese fotograma hasta el siguiente cambio. Las
ediciones solo cambian entonces ese tramo de la animación. **Quitar** vuelve a la paleta anterior.

El **ciclo de colores** (sprites indexados) rota un rango de colores de la paleta mientras se
reproduce la animación, para agua, fuego y luces intermitentes, sin tocar ningún píxel. Añade un
ciclo, elige su primer y último índice de la paleta, su dirección y cuántos fotogramas dura cada
paso, y pulsa Reproducir para verlo. Los ciclos se guardan solo en archivos `.pxstudio`; **Fijar en
fotogramas** los convierte en paletas por fotograma (añadiendo fotogramas si hace falta) para que
aparezcan en los GIF y videos exportados.

## Tonos para la tinta Sombreado

La tinta Sombreado mueve los píxeles a lo largo de una lista de colores, sus **Tonos**. Con la tinta
en Sombreado, las opciones de herramienta muestran la lista: arrastra colores de la paleta a ella,
pulsa **+ Primer plano** para añadir el color de primer plano, arrastra para reordenar y haz clic en
un color para quitarlo. Seleccionar un rango en la paleta mientras la lista está vacía la rellena,
igual que el botón **Rampa de sombreado** de la paleta. El botón izquierdo desplaza los píxeles hacia
delante en la lista y el derecho hacia atrás.
