Sprite et Mask Alpha

Programmation avancée de jeux en PureBasic
Avatar de l’utilisateur
Thyphoon
Messages : 2706
Inscription : mer. 25/août/2004 6:31
Localisation : Eragny
Contact :

Sprite et Mask Alpha

Message par Thyphoon »

Aaaaa c'est bien les vacances mais c'est un peu galère sans internet...
je profite donc d'un accès pour vous demander conseille.

J'essaie de convertir un jeu provenant du mac "return to Dark Castle" j'ai les planches des sprites en voici un exemple
Image
Le décore du jeu est fait de calques, et apparemment sur les planches de sprites est intégré le mask pour les ombres a savoir les dégradé de couleur violet. A votre avis comment afficher ces sprites avec le mask en une seul fois ? est-ce possible ? ou suis-je condamner a créer des masks pour chaque sprite ???? une idée ? ça fait un bout de temps que je cherche une solution. Je voudrait eviter de retoucher les planches de sprites original.

Voilà tout idée ou piste est la bienvenu.

Dans tout les cas bonnes vacances pour ce qui sont en vacances et bon courage aux autres.

Merci

Thy
Anonyme

Message par Anonyme »

a mon avis tu es bon pour recréer des mask pour chaque sprite & créer une fct° qui mélange le mask au sprite :D
Avatar de l’utilisateur
Thyphoon
Messages : 2706
Inscription : mer. 25/août/2004 6:31
Localisation : Eragny
Contact :

Message par Thyphoon »

Cpl.Bator a écrit :a mon avis tu es bon pour recréer des mask pour chaque sprite & créer une fct° qui mélange le mask au sprite :D
Oui je pense aussi, il me semble que j'avais vu sur le forum une fonction pour changer l'alpha d'un pixel de sprite en 32bit...mais je ne retrouve pas... quelqu'un aurait un lien ?
Octavius
Messages : 312
Inscription : jeu. 26/juil./2007 12:10

Message par Octavius »

Le plus symple ce serait de faire deux planches, une planches sans les ombres violettes et une planche avec que les ombres violettes que tu repasses en niveaux de gris. Comme ça tu pourras les afficher avec DisplayAlphaSprite().
Avatar de l’utilisateur
Thyphoon
Messages : 2706
Inscription : mer. 25/août/2004 6:31
Localisation : Eragny
Contact :

Message par Thyphoon »

Octavius a écrit :Le plus symple ce serait de faire deux planches, une planches sans les ombres violettes et une planche avec que les ombres violettes que tu repasses en niveaux de gris. Comme ça tu pourras les afficher avec DisplayAlphaSprite().
Merci. Le problème de DisplayAlphaSprite c'est que c'est tres gourmand en puissance.sans compter que ça oblige a doubler le nombre de sprite (un pour le decor et un pour le mask) peux être qu'avec la version 4.20 de purebasic qui utilisera DirectX9 les sprites 3D pour gérer la composante Alpha au niveau du pixel.
Répondre