Bonjour, je développe actuellement un jeu en c pour mais j'ai besoin de pouvoir dessiner un sprite transparent avec une mise à l'échelle inférieure à 100% (plus petit que sa taille originale).
La fonction gfx_RotatedScaledTransparentSprite_NoClip de la lib graphx permet de dessiner un sprite transparent dont l'échelle peut être inférieure à 64 (64 correspond ici à 100%). Cependant mon sprite est rectangulaire et la fonction n'accepte que des sprites dont les dimensions sont un carré (sprite->width=sprite->height).
Il y a aussi la fonction gfx_ScaledTransparentSprite_NoClip, mais celle-ci prend une échelle entière qui ne peut qu'être agrandie (1 correspond à 100%, 2 à 200%, etc. mais 0.5 ne fonctionne pas car ça doit être un int).
Je pourrais redessiner mon sprite avec une marge pour faire un carré mais j'aimerais optimiser le stockage dans la rom.
Faut-il que j'ajoute cette marge au début du programme et ainsi stocker le sprite redimensionné seulement lors de l'exécution ? (le problème c'est que je ne sais pas comment agrandir les dimensions du sprite sans agrandir son image)
Sinon y a-t-il une autre fonction permettant cela ou un autre moyen ?
Merci pour votre aide !
GraphX - Dessiner un sprite avec une échelle < 100%
Voir le premier message non lu • 7 messages
• Page 1 sur 1
-
Yobio
Niveau 5: MO (Membre Overclocké)- Messages: 13
- Inscription: 20 Nov 2021, 13:26
- Genre:
- Calculatrice(s):→ MyCalcs profile
- Classe: 2nde
Re: GraphX - Dessiner un sprite avec une échelle < 100%
Salut,
J'ai forwardé ta question sur le canal "officiel" de de la toolchain CE, #ez80-dev (sur IRC EFNet, ou sur Discord), et Runer112 a répondu:
Si tu parles anglais, n'hésite pas à rejoindre le canal, d'ailleurs
Si non... une traduction rapide de ses messages, c'est que si tu veux dessiner à plusieurs reprises le sprite à cette taille, tu dois utiliser
J'ai forwardé ta question sur le canal "officiel" de de la toolchain CE, #ez80-dev (sur IRC EFNet, ou sur Discord), et Runer112 a répondu:
14:32:42 <@Runer112> if they want to repeatedly draw the sprite at this size, they should usegfx_ScaleSprite
to scale the sprite data once and then just draw it using unscaled sprite functions
15:05:08 <@Runer112> unfortunately it doesn't look like there's any way to directly draw a non-integer scaled non-square sprite, as they discovered
Si tu parles anglais, n'hésite pas à rejoindre le canal, d'ailleurs
Si non... une traduction rapide de ses messages, c'est que si tu veux dessiner à plusieurs reprises le sprite à cette taille, tu dois utiliser
gfx_ScaleSprite
pour scale les données du sprite une fois, puis juste les dessiner à l'aide de fonctions de sprite non-scaled. Malheureusement, il ne semble pas y avoir de moyen de dessiner directement un sprite non carré à l'échelle non entière, comme tu as pu le voir.MyCalcs: Help the community's calculator documentations by filling out your calculators info!
MyCalcs: Aidez la communauté à documenter les calculatrices en donnant des infos sur vos calculatrices !
Inspired-Lua.org: All about TI-Nspire Lua programming (tutorials, wiki/docs...)-
AdriwebAdmin
Niveau 16: CC2 (Commandeur des Calculatrices)- Messages: 14617
- Images: 1218
- Inscription: 01 Juin 2007, 00:00
- Localisation: France
- Genre:
- Calculatrice(s):→ MyCalcs profile
- Twitter/X: adriweb
- GitHub: adriweb
Re: GraphX - Dessiner un sprite avec une échelle < 100%
Merci beaucoup ! Je pense que je vais faire
J'irai voir le canal irc, merci pour le conseil
gfx_ScaleSprite
à chaque frame (peut-être pas une bonne idée ). Sinon j'essaierai de modifier directement la matrice de l'image.J'irai voir le canal irc, merci pour le conseil
-
Yobio
Niveau 5: MO (Membre Overclocké)- Messages: 13
- Inscription: 20 Nov 2021, 13:26
- Genre:
- Calculatrice(s):→ MyCalcs profile
- Classe: 2nde
Re: GraphX - Dessiner un sprite avec une échelle < 100%
Non, il vaut mieux le faire qu'une seule fois, pourquoi voudrais-tu le faire a chaque frame?
MyCalcs: Help the community's calculator documentations by filling out your calculators info!
MyCalcs: Aidez la communauté à documenter les calculatrices en donnant des infos sur vos calculatrices !
Inspired-Lua.org: All about TI-Nspire Lua programming (tutorials, wiki/docs...)-
AdriwebAdmin
Niveau 16: CC2 (Commandeur des Calculatrices)- Messages: 14617
- Images: 1218
- Inscription: 01 Juin 2007, 00:00
- Localisation: France
- Genre:
- Calculatrice(s):→ MyCalcs profile
- Twitter/X: adriweb
- GitHub: adriweb
Re: GraphX - Dessiner un sprite avec une échelle < 100%
C'est pour faire un objet qui se rapproche, donc avec la perspective il faut recalculer l'image à chaque frame non ? Je ne peux pas créer 64 buffers pour stocker chaque sprite pour chaque échelle entre 1 et 64 car ce serait probablement trop lourd.
-
Yobio
Niveau 5: MO (Membre Overclocké)- Messages: 13
- Inscription: 20 Nov 2021, 13:26
- Genre:
- Calculatrice(s):→ MyCalcs profile
- Classe: 2nde
Re: GraphX - Dessiner un sprite avec une échelle < 100%
Ah, je n'avais pas cette information là.
Ca serait quand même dommage de devoir faire autant de calcul lors du dessin... A mon avis il vaut mieux moins optimiser la place (on en a assez sur CE...) et faire des sprites carrés pour ensuite pouvoir utiliser
Ca serait quand même dommage de devoir faire autant de calcul lors du dessin... A mon avis il vaut mieux moins optimiser la place (on en a assez sur CE...) et faire des sprites carrés pour ensuite pouvoir utiliser
gfx_RotatedScaledTransparentSprite_NoClip
. Mais bon, à toi de tester plusieurs solution selon l'impact sur la taille et la performance, pour voir ce qui est acceptable en fin de compte.MyCalcs: Help the community's calculator documentations by filling out your calculators info!
MyCalcs: Aidez la communauté à documenter les calculatrices en donnant des infos sur vos calculatrices !
Inspired-Lua.org: All about TI-Nspire Lua programming (tutorials, wiki/docs...)-
AdriwebAdmin
Niveau 16: CC2 (Commandeur des Calculatrices)- Messages: 14617
- Images: 1218
- Inscription: 01 Juin 2007, 00:00
- Localisation: France
- Genre:
- Calculatrice(s):→ MyCalcs profile
- Twitter/X: adriweb
- GitHub: adriweb
Re: GraphX - Dessiner un sprite avec une échelle < 100%
Oui je pense aussi que ça réduirait beaucoup la performance donc en attendant je vais faire des sprites carrés et je verrais plus tard si ça peut s'optimiser.
-
Yobio
Niveau 5: MO (Membre Overclocké)- Messages: 13
- Inscription: 20 Nov 2021, 13:26
- Genre:
- Calculatrice(s):→ MyCalcs profile
- Classe: 2nde
7 messages
• Page 1 sur 1
Retourner vers Langages alternatifs
Qui est en ligne
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 39 invités