CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

inerser image (SDL)

captainpatate
captainpatate
Niveau 7
11 juillet 2008 à 19:19:24

bonjourtt le monde c'a fait une semaine que j'ai terminé les cours de language C sur le site du zero je viens de commencer a programmer un petit jeu de plateforme,j'ai cherché quelque sprites sur internet mais le pb c'est que c'est sprites vont de gauche a droite.j'ai cherché des fonctions pour inverser les images mais elles sont toutes compliqué.et je voudrais savoir si vous connaissez une fonction de mon niveau qui pourrait inverser une image ou une partie d'image.

PS:je voudrais savoir comment vous manipuler une feuille de sprite car moi je cree un tableau pour chaque type de mouvement,par exemple pour un saut en 6 phases je cree un tableau de six case puis je mesure la longueur en pixel des six sprites rassemblé puis je divise par six mais il arrivent que celui qui les a dessiné les ai mal placés alors et je me retrouve avec des parties manquantes ou ajouté.alors s'il vous plait parler de la facon que vous utiliser pour traiter vos feuilles de sprites

EmeraldWeapon
EmeraldWeapon
Niveau 10
11 juillet 2008 à 19:29:55

Je ne comprends pas ce que tu veux faire par "inverser une image" ? Si c'est remettre dans l'ordre les images d'un sprite (par exemple pour les déplacements d'un sprite) utilise un logiciel genre photoshop, paint shop pro, ...

Pour traiter les feuilles de sprites, tu extraits la sous image correspondant à ton sprite, en général sur ta feuille les sprites peuvent être "délimités" dans des rectangles de tailles identiques.
Un exemple simple, tu as une image de taille 100x50 pixels avec des sprites de 20*50 pixels. Il y a donc 5 sprites sur une seule ligne. Les fonctions de blit SDL sont telles que tu peux spécifier le rectangle à blitter depuis ta surface source, tu affiches donc qu'une sous image de ton image contenant les sprites. C'est très simple à gérer quand c'est dans des boucles vu que tous tes rectangles ont la même taille, ça fait des multiples entier avec les variables d'incrément des boucles.

Engineer
Engineer
Niveau 12
11 juillet 2008 à 19:48:43

Je crois plutot qu'il veut parler de Flip ;)
J'avais déja abordé le problème des rotations, et après si je me souviens bien c'est en cherchant dans la doc que j'ai trouvé la fonction qui me plaisait.
Je crois qu'il suffit de rechercher dans la Doc de SDL :ok:
En passant, SFML propose une fonction beaucoup plus claire à ce niveau :ok:

Tiens en passant, j'ai un peu parcouru la doc de SFML mais j'ai pas trouvé c'était quoi la fonction de remplacement de SetColorKey de SDL sous SFML ? Cela me semble quand même important pour la création de jeux 2D...

EmeraldWeapon
EmeraldWeapon
Niveau 10
11 juillet 2008 à 20:05:40

Sinon il est possible de faire (comme l'exemple sur le site du zero du mario Sokoban), au lieu d'avoir une feuille avec tous tes sprites, tu as un fichier image par sprite. Après tu peux aussi faire tous les traitements que tu as besoin, rotation etc et éventuelleemnt refaire une feuille de sprite. tout ça dans un logiciel de traitement d'image.

Sinon pour revenir plus en détail sur le deuxième probleme, encore une fois tu peux retoucher ta feuille de sprite pour que les dimensions concordent.

Engineer
Engineer
Niveau 12
11 juillet 2008 à 20:21:00

EmeeraldWeapon :d) Je trouve plus interressant de manipuler une seule image ou deux avec des fonctions de rotation/flip que d'avoir une grosse panoplie de 20 images. C'est plus rentable.

captainpatate
captainpatate
Niveau 7
11 juillet 2008 à 20:31:05

vous croyez que je devrais passer a la SFML?? parceke je me suis habitué aux fonction SDL.je demandais juste une fonction facile d'utilisation pour inverser ou fliper une image comme ca j'aurais un personnage qui pourras aller de gauche a droite et de droite a gauche.le decoupage et le "flipage" de chaque sprite a l'aide de MsPaint me prendra beucoup de temps .

sinon pour la feuilles de sprites j'utilise des tableau que je remplis a l'aide de while mais souvent les resultat sont imparfait(des bout decoupé d'autres ajouté)

captainpatate
captainpatate
Niveau 7
11 juillet 2008 à 20:40:35

desolé pour le double post mais j'ai oublié une question

je voudrais creer un fichier .h reserver uniquement aux sprites avec leur coordoné et tout parceke si je declare toute ces variables dans le main ca fera un peu "desordre".est ce que c'est possible parceke ca fait un demi-heure que j'essaie de le creer mais ca ne marche pas j'ai meme essayer un .c.

EmeraldWeapon
EmeraldWeapon
Niveau 10
11 juillet 2008 à 20:41:25

SFML c'est une alternative objet à la SDL, donc ca dépend si tu connais C++ ou pas..

captainpatate
captainpatate
Niveau 7
11 juillet 2008 à 21:57:12

non je ne connais rien au c++.

et pour les variables dans le .h ???

dnob700
dnob700
Niveau 10
12 juillet 2008 à 00:07:18

montre nous ce que tu as essayé de faire et on te dira ce qui n'allait pas.

captainpatate
captainpatate
Niveau 7
12 juillet 2008 à 15:56:15

alors voila je cree un fichier mouvement.h dans lequelle je cree un tableau de variables SDL_Rect contenant les phases d'un saut ou d'une demarche.

voila comment est le fichier mouvement.h:

http://rafb.net/p/MNpLYu36.html

puis je vais dans le main et je fais
include mouvement.h

Engineer
Engineer
Niveau 12
12 juillet 2008 à 16:05:50

Le mets pas dans le main :rire:

dnob700
dnob700
Niveau 10
12 juillet 2008 à 17:14:00

sauf que ce .h contient du code. Même si c'est possible de faire ça, je tele déconseille totalement tant que tu ne maitrise pas complètement le fonctionnement de la compilation etc (et là, ce n'est pas le cas encore). Tu dois inclure le .h seulement au début d'un fichier .c e il ne doit contenir que des déclarations de fonctions typiquement. Mais pas de code. Là, mets ton code d'initialisation dans une autre fonction que la fonction main, si ça te gène que ce soit là.

captainpatate
captainpatate
Niveau 7
12 juillet 2008 à 17:51:55

ce que je veux c'est reserver un fichier pour la declaration des variable concernant les sprites parceke si je met tout dans le main.c ca vas faire un peu bordel.montrez moi comment vous creer ce type de fichier de A a Z (un petit exemple serait le bien venu).

j'ai une autre question:
est ce que la SDL gere un appuyage simulatné de deux 2 boutons parceque je veux faire comme dans les jeux de platesformes ou on peut courir puis en contuniant d'appuyer sur la gauche en saute puis en maintenant la touche saut appuyé on peut regler la trajectoire en appuyant sur gauche ou droite

Sous forums
  • Aide à l'achat Mac
  • Internet
  • Macintosh
  • Création de sites web
  • Création de Jeux
  • Linux
  • Programmation
  • Steam Deck
  • Hardware
La vidéo du moment