Auteur Sujet: Color swap : quelques petites questions.  (Lu 2887 fois)

0 Membres et 1 Invité sur ce sujet

Pour commencer je ne sais pas si je suis au bon endroit, mais comme je recherche une solution plus graphique que code, je pense qu'on ne m'en voudra pas trop :p

Pour ceux qui ne savent pas, le color swap est une vieille technique 2D pour réutiliser des sprites en changeant une ou plusieurs couleur (exemple http://th03.deviantart.net/fs71/200H/i/2011/210/b/5/bardock_color_swap_by_ruga_rell-d41zk7r.png)

Alors voila, j'aimerai faire du color swap sur des textures mais de manière un peu particulière.

J'aimerai avoir une texture contenant N couches de couleurs (variant d'une image à l'autre ou fixe ce n'est pas bien important), et j'aimerai lorsque je charge ma texture, fournir la couche de couleur à utiliser.

C'est comme si on superposait chaque Barduk de l'exemple et qu'on disait :
Pour l'objet O1, j'attache la texture mais tu m'affiche la couche 1
Pour l'objet O2, j'attache la même texture mais tu affiche la couche 3

L’intérêt après serait d'automatiser une peu le process et de ne fournir que la couche à l'objet et ses paramètre changeront automatiquement selon certains pattern prédéfini (plus la couche sera profonde, plus le méchant sera... méchant :D)


Question bonus : Serait-il possible de faire la même en empilant des images légèrement différente comme dans cette exemple : http://4.bp.blogspot.com/-DNqc4kUGZe8/TchuHTf0nII/AAAAAAAAACo/zzBcwiCXStM/s1600/Dementhro%2BSprite%2BSheet.PNG (megaman de la partie de gauche)?


Merci.

Hey CrokNoks ;-)

Vu comme çà, j'utiliserais une image palettée et je changerais de palette ?

Enfin je réponds peut-etre à coté... je susi pas sur d'avoir bien compris le problème ...





Le changement de palette corresponds à ce que je cherche.

Mais comme je peux définir plusieurs palettes dans une image ? et comment je peux switcher dans le code ?

J'ai trouvé un petit code qui me permettrait de faire ce que je veux : http://tfc.duke.free.fr/coding/tga.html

J'avais fait un truc dans ce genre quoique beaucoup plus limité pour E - Departure : je voulais des motifs lumineux dont la couleur changerait au cours de la démo, tandis que la couleur du reste est uniforme.

Du coup j'ai pu utiliser séparément les canaux R, G et B, en considérant qu'ils m'indiquaient une couleur mais sans savoir laquelle a priori. C'est dans le fragment shader que la couleur finale est déterminée, avec un bête mix() pour chaque canal. Ainsi ces motifs évoluent avec la musique, et leur couleur change entre la partie de jour et la partie de nuit.