Un générateur de multi-drawstat à partir d'une image. L'un des plus optimisés à ce jour.
選択できるのは25トピックまでです。 トピックは、先頭が英数字で、英数字とダッシュ('-')を使用した35文字以内のものにしてください。
Darks c73ea2f3cd Merge branch 'master' of Lephenixnoir/sprite-optimizer into master 1ヶ月前
.gitignore First commit, enjoy! 1年前
licence.txt Ajout des dépendances, d'un readme 1年前
readme.md Update readme.md 1年前
requirements.txt Ajout des dépendances, d'un readme 1年前
sprite-optimizer.py add a raw output mode that prints line coordinates 1ヶ月前

readme.md

Sprite Optimizer

Le Sprite Optimizer est un outil permettant de générer le code Multi DrawStat optimisé d’une image. La sortie est destinée à être copiée-collée dans un éditeur de programmes. Merci à Zezombye et Breizh pour l’idée originale.

La solution est optimisée et peut ne pas être optimale. En pratique, elle est très souvent utilisable telle quelle.

L’algorithme a une complexité quadratique : au delà de 150 pixels à traiter, l’exécution peut être très lente.

Options d’utilisation

Par défaut, le code est généré pour un origine (0, 0) en haut à gauche, ce qui correspond au ViewWindow 0, 126, 0, 62, 0, 0.

Inversion du ViewWindow

Pour inverser le ViewWindow et avoir une origine (0, 0) en bas à gauche, utilisez l’option --flip. Correspond au ViewWindow 0, 126, 0, 0, 62, 0.

Il est possible d’utiliser cette option en même temps que --offset.

Décalage du ViewWindow

Pour décaler l’origine du ViewWindow et avoir une origine (a, b) dans un coin, utiliser l’option --offset a, b. Correspond au ViewWindow a, 126+a, 0, 62+b, b, 0.

Il est possible d’utiliser cette option en même temps que --flip.

Affichage des statistiques et de la progression

Utilisez les options --info et --progress.

Export visuel du résulat

Pour exporter le résultat visuellement, utilisez les options --show pour afficher l’image et --draw pour l’enregistrer dans un fichier <nom>_gen.png. Cela permet de vérifier l’optimisation effectuée par l’outil.

Installation

Installez Python 3 ainsi que les dépendances citées dans le fichier requirements.txt.

Exemples d’utilisation

# Affiche le code uniquement
./sprite-optimizer image.png

# Affiche la progression, des infos (lignes, temps d'exécution), et le code
./sprite-optimizer -pi image.png

# Retourne le code de l'image pour un ViewWindow inversé (origine en bas à gauche)
./sprite-optimizer --flip image.png

# Retourne le code avec un offset de (10, 5)
./sprite-optmizer --offset 10 5 image.png