À propos du projet
Sprite Fusion Pixel Snapper est un outil conçu pour aligner les pixels sur une grille parfaite, spécifiquement pour corriger l'art pixelisé désordonné et incohérent généré par l'IA. Il résout des problèmes tels que les tailles et positions de pixels incohérentes, la dérive de la résolution de grille, et les couleurs non liées à une palette stricte. L'outil garantit que les pixels sont alignés sur une grille parfaite, maintient une résolution de grille cohérente pouvant être mise à l'échelle, et quantifie les couleurs selon une palette stricte, avec prise en charge de palettes personnalisées.
Il est idéal pour l'art pixelisé généré par IA, l'art 2D procédural qui ne correspond pas à une grille (comme les tilemaps ou les cartes isométriques), et les ressources de jeux 2D ou textures 3D qui doivent être parfaitement redimensionnables. L'outil préserve autant de détails que possible, y compris le tramage.
## Fonctionnalités
- **Alignement sur grille** : Les pixels sont alignés sur une grille parfaite.
- **Résolution cohérente** : La résolution de grille est cohérente et peut être mise à l'échelle vers la résolution en pixels.
- **Quantification de palette** : Les couleurs sont liées à une palette stricte et quantifiée ; les palettes personnalisées sont prises en charge.
- **Traitement par lots** : Traitez des répertoires entiers d'images.
- **CLI et Web (WASM)** : Disponible en tant qu'outil en ligne de commande et en tant que module WebAssembly pour l'intégration dans des projets web.
- **Version bureau** : Également disponible en tant qu'application de bureau.
## Utilisation en CLI
Installation via Homebrew :
```bash
brew install Hugo-Dz/tap/spritefusion-pixel-snapper
```
Ou via Cargo (nécessite Rust) :
```bash
cargo install spritefusion-pixel-snapper
```
Utilisation :
```text
spritefusion-pixel-snapper <INPUT> <OUTPUT> [COLOR_COUNT] [OPTIONS]
```
- `<INPUT>` : Une image PNG/JPEG, ou un répertoire pour le traitement par lots.
- `<OUTPUT>` : Un PNG de sortie, ou un répertoire de sortie différent pour un lot.
- `[COLOR_COUNT]` : Nombre de couleurs de la palette. Par défaut `16`.
- `--pixel-size <PIXELS>` : Remplace la taille de pixel détectée automatiquement. Doit être comprise entre 1 et la moitié de la plus petite dimension de l'image.
- `--palette <HEX,...>` : Contraint la sortie à des couleurs hexadécimales à six chiffres séparées par des virgules.
Exemples :
```bash
# Quantifier l'image sur une palette de 16 couleurs
spritefusion-pixel-snapper input.png output.png 16
# Traiter un répertoire par lots
spritefusion-pixel-snapper sprites/batch_inputs sprites/batch_outputs 16
# Remplacer la taille de pixel détectée automatiquement
spritefusion-pixel-snapper input.png output.png --pixel-size 8
spritefusion-pixel-snapper sprites/batch_inputs sprites/batch_outputs 16 --pixel-size 8
# Utiliser une palette de couleurs fixe
spritefusion-pixel-snapper input.png output.png --palette "0d2b45,203c56,544e68,8d697a,d08159,ffaa5e,ffd4a3,ffecd6"
spritefusion-pixel-snapper sprites/batch_inputs sprites/batch_outputs --palette "0d2b45,203c56,544e68,8d697a"
```
Exécutez `spritefusion-pixel-snapper --help` pour voir toutes les options.
## Utilisation Web (WASM)
Construire le module WASM :
```bash
wasm-pack build --target web --out-dir pkg --release
```
Puis utilisez-le dans votre projet :
```js
import init, { process_image } from "./pkg/spritefusion_pixel_snapper.js";
await init();
// process_image(inputBytes, kColors?, pixelSizeOverride?, paletteHex?)
const outputBytes = process_image(inputBytes, 16);
// Avec une palette personnalisée
const recoloredBytes = process_image(inputBytes, null, null, "0f0f1b,ffecd6,ff4d6d,29adff");
```
Passez `null` pour tout argument optionnel afin d'utiliser le comportement par défaut.
## Compiler depuis les sources
```bash
git clone https://github.com/Hugo-Dz/spritefusion-pixel-snapper.git
cd spritefusion-pixel-snapper
cargo build --release
```
Le binaire se trouvera à `target/release/spritefusion-pixel-snapper`.
## Remerciements
Pixel Snapper est un projet Sprite Fusion. Sprite Fusion est un outil pour générer de VRAIS sprites et animations en art pixelisé pour le développement de jeux.
## Licence
Licence MIT (Hugo Duprez)
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.