Redimensionar, recortar e efeitos

Redimensione, recorte, apare, gire e espelhe o sprite inteiro, aplique efeitos e ajustes de cor e volte pelo histórico de desfazer.

O menu Sprite altera o sprite como um todo: seu tamanho, sua tela, sua orientação. Os efeitos e ajustes do menu Filtro recolorem e filtram os pixels de um cel ou de vários. Cada um deles é uma única etapa de desfazer.

Tamanho do sprite e da tela

  • Sprite > Tamanho do sprite... (Ctrl+Alt+I) escala o sprite para uma nova Largura e Altura (de 1 a 4096 pixels). Todos os cels são redimensionados com escala por vizinho mais próximo, então os pixels continuam nítidos e nenhuma cor nova aparece; slices, tilesets e a seleção são escalados junto. Largura e altura são independentes: calcule o outro lado você mesmo para manter as proporções.
  • Sprite > Tamanho da tela... (Alt+C) muda o tamanho da tela sem escalar a arte. Escolha uma Âncora na grade 3×3: onde a arte existente fica na nova tela (o meio a mantém centralizada, o canto superior esquerdo aumenta ou diminui a tela para a direita e para baixo). Com a âncora no meio, uma diferença ímpar coloca a coluna extra à direita e a linha extra em cima, de modo que reduzir de volta desfaz exatamente. A arte que fica fora de uma tela menor não se perde: ela é mantida além da borda, fora de vista, e volta se a tela crescer de novo (como no Aseprite). A camada Plano de fundo é cortada pela tela e preenchida com a cor de fundo quando ela cresce.

Recortar e aparar

  • Sprite > Recortar na seleção faz da tela a caixa delimitadora da seleção. Precisa de uma seleção (Selecionar e transformar). Uma seleção que passa da tela a faz crescer daquele lado.
  • Sprite > Recortar corta a tela até o menor retângulo que contém o que foi desenhado, em todos os quadros. Ele olha o sprite como é exibido: camadas ocultas não contam, e uma cor sólida de borda (como um Plano de fundo opaco) é aparada como se fosse transparência. Quando duas bordas opostas são sólidas em cores diferentes, ou nada foi desenhado, o sprite fica como está.

Como Tamanho da tela, recortar e aparar mantêm a arte fora da nova tela em vez de excluí-la.

Girar e espelhar a tela

Sprite > Girar 90° para a direita e Sprite > Girar 90° para a esquerda giram o sprite inteiro em um quarto de volta (largura e altura se trocam), e Sprite > Espelhar tela horizontalmente e Sprite > Espelhar tela verticalmente o espelham. Eles agem sobre todas as camadas e quadros, inclusive as camadas bloqueadas, e levam junto os slices e a seleção. A arte além da borda da tela gira e se espelha com o resto, então girar de volta a restaura.

Para girar ou espelhar apenas a seleção ou um cel, use Editar > Transformar ou os espelhamentos do menu Camada (Selecionar e transformar).

Propriedades do sprite e proporção do pixel

Arquivo > Renomear sprite... mostra o nome e o tamanho do sprite e sua contagem de camadas e quadros, e tem:

  • Modo de cor: RGB, Tons de cinza ou Indexado (Cor e paletas);
  • Cor transparente, o índice da paleta que representa transparente (sprites indexados);
  • Proporção do pixel: 1:1, 2:1, 1:2 ou Personalizada (cada lado de 1 a 255);
  • dados do usuário: uma cor, uma nota e propriedades personalizadas do sprite (abaixo).

Nada muda até você escolher Salvar, que aplica tudo de uma vez; uma única etapa de desfazer reverte juntos o modo de cor, a cor transparente, a proporção do pixel e os dados do usuário. Cancelar deixa o sprite como estava.

A proporção do pixel torna os pixels não quadrados, como alguns consoles e computadores antigos os exibiam: em 2:1, cada pixel tem o dobro de largura que de altura. A tela mostra o sprite esticado; os pixels em si não mudam. As exportações continuam com um pixel de arquivo por pixel do sprite, a menos que você ative Aplicar proporção do pixel na caixa de diálogo Exportar (Abrir, importar e exportar). Você também pode definir a proporção do pixel ao criar um sprite.

Dados do usuário e propriedades personalizadas

Tudo o que pode receber anotações tem uma seção Dados do usuário na sua caixa de diálogo de propriedades: o sprite, uma camada ou grupo, um cel, uma tag, um slice e um tileset (Propriedades do tileset). Ela guarda uma cor (não nas tags, que têm a sua), uma nota e propriedades personalizadas: valores nomeados que um jogo ou ferramenta lê nos dados exportados. Os slices exportam as suas no JSON da sprite sheet, e os arquivos .aseprite guardam todas elas, então elas voltam quando o arquivo é reaberto.

As propriedades são agrupadas por namespace. Seus é a lista simples; Adicionar namespace de extensão cria uma lista que pertence a uma extensão com nome, como fazem as extensões do Aseprite. Em cada lista:

  • Adicionar propriedade adiciona uma linha com nome, tipo e valor; Adicionar item faz o mesmo dentro de um vetor. As setas movem uma linha para cima ou para baixo e a lixeira a remove.
  • Escolha o tipo de um valor: Boolean, Null, String, UUID, um número inteiro de um tamanho dado (Int8 a UInt64), Fixed, Float ou Double, Point (X, Y), Size (W, H), Rect (X, Y, W, H), ou um Vector (uma lista) ou Map (propriedades nomeadas) que guarda mais linhas. Mudar o tipo de uma linha mantém o valor onde o novo tipo permitir.
  • Um valor que não cabe no seu tipo (um UInt8 de 300, um UUID com formato errado, um nome repetido) é marcado na linha, e Salvar espera até que seja corrigido. Os números inteiros são verificados contra o intervalo do tipo.

Editar como JSON mostra as mesmas propriedades como texto, para copiar e colar. Tudo, exceto texto, verdadeiro/falso e números simples, é escrito como { "$type": "uint8", "value": 7 }; os scripts usam a mesma forma com app.setUserData. Voltar para as linhas exige que o JSON seja válido.

Duplicar um sprite

Sprite > Duplicar sprite copia o sprite, com todas as suas camadas, quadros e slices, para um novo sprite chamado "nome cópia" no mesmo projeto.

Efeitos e ajustes

O menu Filtro tem os mesmos filtros do menu Editar do Aseprite (Brilho/Contraste, Matiz/Saturação e Curva de cor calculam suas cores à própria maneira; veja cada um abaixo):

Cada um abre uma caixa de diálogo. Enquanto ela está aberta, a tela mostra uma prévia ao vivo do cel ativo; desative Prévia para comparar. OK aplica o efeito como uma única etapa de desfazer, Cancelar deixa o sprite em paz.

O que eles alteram. Com uma seleção, um efeito só altera os pixels dentro dela; sem uma, altera o cel inteiro. A caixa de diálogo diz qual dos dois. Aplicar a escolhe os cels:

Aplicar aCels
Cel ativoO cel em que você está (o padrão, quando a camada dele pode ser editada).
Cels selecionados na linha do tempoOs cels selecionados na linha do tempo.
Todos os quadros desta camadaO cel da camada ativa em cada quadro.
Todas as camadas neste quadroO cel de cada camada no quadro atual.
TudoTodos os cels do sprite.

Os efeitos funcionam em camadas de imagem. Brilho/Contraste, Matiz/Saturação, Curva de cor, Inverter cor, Substituir cor e Posterizar também funcionam em camadas de tilemap: eles editam os tiles que o cel coloca, então todas as colocações desses tiles mudam. As três últimas opções ignoram camadas bloqueadas ou ocultas e camadas que o efeito não aceita, e avisam quantos cels deixaram de fora. Os itens de menu só ficam esmaecidos quando nenhuma camada aceita o efeito. Quando a camada ativa não aceita o efeito (está bloqueada, oculta, é um grupo ou, para os outros efeitos, um tilemap), a caixa de diálogo começa em Tudo.

Na camada Plano de fundo, os efeitos nunca alteram o alfa, porque ela não tem transparência: as opções de alfa são ignoradas ali, e Substituir cor altera apenas a cor.

Sprites indexados

Em um sprite indexado, os ajustes de cor (tudo, exceto Remover manchas, Matriz de convolução, Reduzir cores, Sombra projetada, Antisserrilhado e Sombreamento automático, que sempre remapeiam) têm uma opção Indexado:

  • Remapear para o mais próximo (o padrão) altera os pixels e depois ajusta cada um à cor mais próxima da paleta. A paleta fica como está.
  • Modificar paleta altera as entradas da paleta que os cels escolhidos usam, em vez dos pixels. Todo pixel que usa essas entradas muda, em qualquer cel, e a seleção é ignorada. Em um sprite cuja paleta muda ao longo do tempo, a paleta de cada quadro é editada.

Os efeitos

Contorno

Desenha um contorno em volta das formas, delimitando-as contra os pixels transparentes.

A caixa de diálogo Contorno: uma cor, Posição definida como Fora, Aplicar a definido como Cel ativo, uma matriz 3 por 3 com os quatro vizinhos laterais ativados, as predefinições Círculo e Quadrado e as caixas de seleção Tratar uma cor também como fundo e PréviaA caixa de diálogo Contorno: uma cor, Posição definida como Fora, Aplicar a definido como Cel ativo, uma matriz 3 por 3 com os quatro vizinhos laterais ativados, as predefinições Círculo e Quadrado e as caixas de seleção Tratar uma cor também como fundo e Prévia
A caixa de diálogo Contorno
  • Cor: a cor do contorno; começa como a cor de primeiro plano. Em um sprite indexado, escolha uma entrada da paleta.
  • Posição: Fora pinta os pixels transparentes que tocam a forma, então a forma cresce; Dentro repinta os pixels da própria borda da forma, que mantém o tamanho. A borda da tela não conta como transparente, então uma forma que sai da tela não é contornada ao longo dela.
  • Matriz: quais dos oito vizinhos contam como encostando. Círculo usa os quatro de cima, de baixo e dos lados (sem cantos); Quadrado usa os oito. Clique em uma célula para alterná-la.
  • Tratar uma cor também como fundo: uma Cor de fundo que conta como vazia, como a transparência, para contornar arte desenhada sobre uma cor sólida.

Posterizar

Níveis (de 2 a 32, padrão 4): quantos degraus cada canal de cor mantém. Menos níveis dão uma cor mais chapada e marcante.

Remover manchas

Remove pixels isolados com um filtro de mediana: cada pixel assume o valor do meio dos pixels ao redor. Janela define a área, de 1 × 1 a 9 × 9 (padrão 3 × 3); janelas maiores suavizam mais.

Matriz de convolução

Executa um filtro de kernel sobre os pixels.

  • Predefinição: Identidade, Desfoque gaussiano 3x3 (o padrão, igual ao Blur 3x3 do Aseprite), Desfoque de caixa 3x3, Desfoque gaussiano 5x5, Desfoque de caixa 5x5, Nitidez, Detecção de bordas, Relevo, Sobel horizontal e Sobel vertical. Um desfoque gaussiano dá mais peso aos pixels do meio, então é mais suave que um desfoque de caixa, que pesa todos os pixels igualmente. Editar um peso a torna Personalizada.
  • Tamanho: de 1 × 1 a 9 × 9, e a grade de pesos para editar.
  • Divisor: por quanto a soma ponderada é dividida; Auto (soma do kernel) calcula sozinho.
  • Deslocamento: somado a cada resultado (-255 a 255).
  • Vermelho, Verde, Azul, Alfa: quais canais ela altera (o alfa vem desativado).
  • Bordas: na margem do cel, Estendidas repete os pixels da borda, Em mosaico dá a volta até o outro lado.

Reduzir cores

Mapeia a arte para poucas cores, opcionalmente com dithering, sem mudar o modo de cor: uma forma rápida de dar uma paleta limitada a uma arte pintada ou importada, ou de ver prévia de como ela ficaria em cor indexada. A transparência é mantida.

  • Cores: Gerar a partir dos cels escolhe as melhores Cores (de 2 a 256) de todos os cels que Aplicar a abrange, mostradas como amostras; Paleta do sprite usa a paleta (sem a entrada transparente).
  • Dithering e Quantidade: as mesmas opções de converter para indexado (Modos de cor). Escolha um padrão ordenado para animação.

Brilho/Contraste

Brilho e Contraste, cada um de -100 a 100. O brilho soma a mesma quantidade a todos os canais (em 100, 255 níveis: o preto vira branco), e depois o contraste afasta os canais do cinza médio ou os aproxima dele (em -100 tudo é cinza médio, em 100 quase todo canal é 0 ou 255). A versão do Aseprite é diferente: ela escala o brilho, então o preto continua preto.

Matiz/Saturação

  • Modo: HSV, HSL ou OKLCH. No HSV, o terceiro controle deslizante é Valor, que move o canal mais claro para o máximo ou para zero; no HSL e no OKLCH ele é Luminosidade, que move para o branco ou para o preto.
  • O OKLCH é perceptual: girar o matiz mantém a luminosidade percebida de cada cor, então os amarelos não ficam mais claros nem os azuis mais escuros como acontece no HSV ou no HSL, e a Saturação escala o croma. Uma cor empurrada além do que a tela consegue mostrar perde saturação em vez de mudar o matiz ou a luminosidade. Use-o para recolorir um sprite inteiro mantendo o sombreamento legível.
  • Matiz (-180 a 180), Saturação, Valor ou Luminosidade, e Alfa (cada um de -100 a 100). Luminosidade, Valor e Alfa positivos movem essa parcela do caminho restante até o máximo: +50 leva o preto ao cinza médio e pixels meio transparentes a três quartos de opacidade. Os negativos escalam para baixo, então -100 chega ao preto ou ao transparente. O do Aseprite multiplica, então lá o preto continua preto.

Níveis

Define onde ficam o preto, o branco e os meios-tons, por canal: Preto de entrada e Branco de entrada (0 a 255) são os valores que se tornam o mais escuro e o mais claro; Meios-tons (gama, 0,10 a 5) clareia (acima de 1) ou escurece (abaixo de 1) o que está entre eles; Preto de saída e Branco de saída limitam o intervalo que o resultado pode usar, e um branco de saída abaixo do preto inverte o canal. Escolha RGB para alterar os três canais juntos, ou Vermelho, Verde ou Azul para alterar um depois disso (não em sprites em tons de cinza, que têm um único canal de cinza).

Limiar

Transforma cada pixel em uma de duas cores conforme o brilho: Nível (0 a 255) é o brilho de que um pixel precisa para virar a cor Igual ou acima em vez da cor Abaixo (preto e branco por padrão). O brilho é a mesma luma que o Aseprite usa para tons de cinza. Os pixels mantêm o próprio alfa.

Mapa de gradiente

Recolore a arte pelo brilho por meio de um gradiente: os pixels mais escuros assumem a cor da primeira parada, os mais claros a da última, e os demais o que fica entre elas. Adicione paradas, defina a Posição e a cor delas e escolha o espaço em que elas se Misturam: RGB, OKLab (degraus de aparência uniforme, o padrão) ou OKLCH. Inverter percorre o gradiente do claro para o escuro. Os pixels mantêm o próprio alfa.

Balanço de cores

Desloca a cor de uma faixa tonal: escolha Sombras, Meios-tons ou Realces e mova os controles Ciano - Vermelho, Magenta - Verde e Amarelo - Azul (-100 a 100). Cada pixel é deslocado conforme o quanto é escuro ou claro, então as sombras se misturam aos meios-tons e os meios-tons aos realces. Preservar luminosidade (ativado por padrão) devolve a luminosidade que o deslocamento alterou, para que só a cor se mova. Em sprites em tons de cinza há um único controle Luminosidade.

Sombra projetada

Escreve uma sombra nos cels. Estilo é Sombra projetada (deslocamento Na horizontal e Na vertical, até 10 pixels em cada sentido), Brilho (sem deslocamento) ou Sombra interna (sobre a arte, ao longo da borda oposta ao deslocamento). Propagação a faz crescer até 10 pixels, em um formato Redonda, Quadrada ou Losango, e a Opacidade da cor define o quanto ela aparece. Suavidade (até 8 pixels) esmaece a borda; em 0 a borda é dura. Bordas define como uma borda suave é desenhada: Com dithering (o padrão: um padrão de dithering da única cor da sombra, que fica parado quando a arte se move), Nítidas (cortada na metade da intensidade) ou Suaves (pixels semitransparentes). Com dithering e Nítidas não adicionam cores intermediárias. Uma sombra fora da arte faz o cel crescer (até a borda da tela) e fica por baixo dela. Em um sprite indexado, o resultado se ajusta à paleta.

Adicionar como efeito de camada nesta caixa de diálogo e nos outros ajustes mantém as mesmas configurações ativas em vez de gravá-las: veja Efeitos de camada.

Antisserrilhado

Suaviza os degraus onde uma cor encontra outra, do jeito que artistas de pixel art fazem à mão: não é um desfoque, mas algumas cores intermediárias colocadas ao lado de cada degrau. Escolha Cor A e Cor B (elas começam como as cores de primeiro plano e de fundo; as amostras abaixo de cada uma são as cores mais usadas da camada). Bordas retas, cantos e diagonais de 45 graus continuam nítidos. Quanto mais longo o trecho reto antes de um degrau, mais pixels recebem uma cor intermediária, até Cores intermediárias (de 1 a 4, misturadas de A até B em OKLCH). Suavizar em escolhe o lado que é repintado: Cor B (o padrão: ao redor da forma, o melhor para uma linha sobre um fundo conhecido), Cor A (dentro da forma, para a silhueta não crescer; uma linha de um pixel fica como está) ou Ambos. Intensidade define até onde a suavização vai ao longo de cada trecho (100: até a metade do trecho). Com Cores em Apenas paleta, são usadas as cores da paleta mais próximas; sprites indexados sempre fazem isso.

Para suavizar um contorno sobre um fundo transparente, ponha a Opacidade da Cor B em 0 (qualquer pixel transparente) e marque Qualquer cor visível é A: as intermediárias são as próprias cores da borda esmaecendo. Cores da paleta não podem esmaecer, então com Apenas paleta (e em sprites indexados) elas ficam sólidas ou somem. Adicionar como efeito de camada o mantém ao vivo; num sprite com profundidade de cor o resultado fica nessa profundidade.

Sombreamento automático

Sombreia cores chapadas de uma vez, do jeito que artistas de pixel art adicionam realces e sombras à mão. Sombrear é Apenas a cor base (os pixels da Cor base; as amostras em Cores mais comuns são as cores mais usadas do cel) ou Cada cor chapada (cada cor recebe uma rampa própria). A luz vem do Ângulo da luz, em graus no sentido anti-horário a partir da direita: 90 é em cima, 135 em cima à esquerda (o padrão). Pixels perto da borda voltada para a luz recebem até Realces passos mais claros (de 0 a 5) e pixels perto da borda oposta até Sombras passos mais escuros, a própria borda o mais forte; cada passo tem Largura do passo pixels de profundidade (de 1 a 4). Uma parte com 1 pixel de espessura mantém a cor e uma com 2 pixels recebe um realce e uma sombra, então partes finas nunca ficam totalmente escuras.

Os passos são calculados a partir da cor em OKLCH. Deslocamento de matiz vira os realces para um amarelo quente e as sombras para um azul frio, como artistas de pixel art fazem, e Croma por passo deixa cada passo mais (ou menos) colorido. Luz de contorno adiciona um realce fino ao longo da borda externa do lado em sombra; Contorno mais escuro pinta a borda externa da forma um passo mais escuro que a sombra mais profunda. Cores em Apenas paleta usa as cores mais próximas da paleta; sprites indexados sempre fazem isso.

As amostras em Passos (do escuro ao claro) mostram o resultado. Editar estas cores as copia para Rampa, onde você pode mudar qualquer uma: uma rampa é percorrida para cada cor que contém, em qualquer sentido. Usar os tons da tinta Sombreamento copia a rampa da tinta Sombreamento (um Sombreamento automático novo começa por ela quando ela contém a cor base). Adicionar como efeito de camada o mantém ao vivo, então a arte redesenhada é sombreada de novo; o ângulo da luz pode ser animado para girar a luz ao longo de uma animação. Em um sprite com profundidade de cor, o resultado fica nessa profundidade.

Curva de cor

Remapeia valores por meio de uma curva que você desenha. Escolha um Canal: Valor (vermelho, verde e azul por igual), Vermelho, Verde, Azul ou Alfa. Cada canal tem a própria curva, suave, que passa pelos pontos sem ultrapassá-los (o Aseprite une seus pontos com linhas retas). Em um sprite em tons de cinza, os canais são Valor e Alfa.

No editor de curvas, clique para adicionar um ponto, arraste um ponto para movê-lo e clique duas vezes em um para removê-lo. Abaixo dele, a lista Pontos tem a entrada e a saída de cada ponto como campos numéricos, com botões Remover e Adicionar ponto (no meio do maior intervalo), para que a curva também possa ser editada pelo teclado. Redefinir canal endireita a curva do canal atual. A curva Valor é aplicada primeiro, depois as de um único canal.

Inverter cor

Inverte os canais que você marcar: Vermelho, Verde e Azul vêm ativados, Alfa vem desativado. Pixels totalmente transparentes continuam transparentes. Em um sprite em tons de cinza há um único canal Cinza no lugar das três cores (a Matriz de convolução também).

Substituir cor

Troca cores por outras.

  • De e Para: as cores (entradas da paleta em um sprite indexado). Ou marque Substituir por transparente. Adicionar linha adiciona outro par De e Para; Remover linha tira um. Todas as linhas se aplicam de uma vez, um pixel assume a primeira linha com que combina, e uma cor substituída nunca é substituída de novo por uma linha seguinte, então as linhas podem trocar duas cores entre si.
  • Tolerância (0 a 255): quão longe um pixel pode estar da cor De e ainda ser substituído; 0 pega apenas aquela cor exata.

Histórico de desfazer

O botão de histórico abaixo de Desfazer e Refazer na barra de ferramentas (ou Editar > Histórico de desfazer) abre o painel Histórico de desfazer ao lado da barra de ferramentas: à esquerda dela quando a barra está à direita, senão do lado que tiver espaço. Ele lista todas as etapas que você pode desfazer, da mais antiga para a mais nova, com Original (o sprite antes da etapa mais antiga) no topo. A etapa atual é destacada com um ponto cheio, e as etapas que você desfez (que refazer traria de volta) ficam esmaecidas. Cada etapa mostra a hora em que foi feita (e a data, se não foi hoje); passe o mouse sobre ela para ver data e hora completas. Clique em qualquer linha para levar o sprite àquele ponto. Clique no botão de novo, ou pressione Esc no painel, para fechar.

Desfazer nunca joga trabalho fora. Se você desfaz algumas etapas e depois faz uma nova alteração, as etapas desfeitas continuam na árvore como um ramo, desenhado a partir da etapa em que você seguiu por outro caminho. Cada nível de ramificação tem a sua cor. Uma etapa com ramos tem uma seta ao lado: clique nela para recolhê-los (a etapa então mostra quantas etapas estão ocultas) ou expandi-los. Os ramos começam expandidos até três níveis de profundidade; os mais profundos começam recolhidos. Clique em qualquer linha de um ramo para voltar a ele. Refazer segue o ramo que você visitou mais recentemente. O histórico é mantido com o sprite e vai junto nos arquivos .pxstudio que você baixa: abra um deles e o histórico volta.

Dê um nome a uma etapa para encontrá-la depois: passe o ponteiro sobre ela e clique no botão ... dela, ou clique nela com o botão direito (pelo teclado, pressione a tecla Menu ou Shift+F10 sobre ela) e escolha Nomear etapa.... Uma etapa nomeada mostra o nome na frente do rótulo de sempre, com uma etiqueta e uma borda colorida, para se destacar em um histórico longo. Dar nome a uma etapa não altera o sprite e não acrescenta nada ao desfazer. Os nomes são guardados com o histórico: depois de recarregar, nos seus outros dispositivos com o Sync e nos arquivos .pxstudio que você baixa. O mesmo menu tem Renomear etapa... e Remover nome.

Dar nome a uma etapa também guarda o sprite como estava nessa etapa como uma versão nomeada, com o mesmo nome, em Sprite > Histórico de versões.... A etapa sai do histórico quando fica entre as mais antigas descartadas, mas a versão continua até você excluí-la. Renomear uma etapa ou remover o nome dela deixa a versão como está.

A linha de baixo mostra quanta memória o histórico usa e quantas etapas ele guarda em todos os ramos, de no máximo 1.000. Depois disso, as etapas mais antigas são descartadas primeiro. Como seu trabalho é organizado explica o que o desfazer cobre.

Em scripts

Os scripts também podem fazer tudo isso: veja Document e Adjustments na referência de scripts (o contorno está em Drawing).