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

J´aide les personne en C/C++

JeanYvesYves
JeanYvesYves
Niveau 10
04 mars 2005 à 17:26:57

1 bitmap, c´est une surface si tu preferes :)

imagine une feuille, de n´importe quelle taille ! ! sur laquelle tu dessines n´importe quoi :
en mémoire, on appelle ça un bitmap, c´est la meme chose qu´une surface, et c´est défini par une taille x,y et par x*y pixels :)

sonic66
sonic66
Niveau 10
04 mars 2005 à 17:35:51

a ok! et jai lus ton truc sur la 2d , et ben g a peu pres tout com^pris sauf les palettes mais maintenant je c pourquoi vaut mieux utiliser la vram!!!!!!

sonic66
sonic66
Niveau 10
04 mars 2005 à 18:20:42

un :up: encore un :up: et un dernier ptit :up:

MrGoTo
MrGoTo
Niveau 8
04 mars 2005 à 19:00:10

Juste une precision,
if ( vram) veut dire if ( vram ! = 0)
JYY tu le sais surement mais je tenais à le preciser pour que nos codeurs ne commetent pas des erreurs.

sonic66
sonic66
Niveau 10
04 mars 2005 à 19:49:35

sonic66 Posté le 04 mars 2005 à 19:08:19
Voila , je ne sais pas ce qui ce passe , j´ai fait un code qui affiche une image ( et je fait de moin en moin d´erreurs ^^) mais qd jai voulut mettre une image jpeg , ca na pas marcher ( meme si ca a compilé)
voila la ligne concernée firstscreen=SDL_LoadJPEG("Iron_Maiden.jpeg");
lord_kalipsy Posté le 04 mars 2005 à 19:10:35
Tu as bien installé SDL_IMAGE j´espère ? ^^
sonic66 Posté le 04 mars 2005 à 19:23:45
ya pas de sdl image dans mes includes sdl
alors non.....
je vais voir sur le site de la sdl pour le telecharger!
meme dans le site officiel , je vois pas ou le telecharger mais pourtant ca affiche les images BMP!
sonic66 Posté le 04 mars 2005 à 19:29:23
ou installer SDL_image?

thesuperbest
thesuperbest
Niveau 8
04 mars 2005 à 21:20:41

Je suis en train de chercher à créer un petit RPG, j´exploite les ressources graphiques de RPG Maker. Pour l´instant, j´ai fait un système qui fait que quand on appuie gauche, le gars va à gauche, quand on va à droite, ect . ..
Mon problème est que je ne sais pas comment faire pour le perso donne une impression de mouvement de pas quand il se déplace.

http://forumftp1.site.voila.fr/tsRPG.rar

jejej
jejej
Niveau 9
04 mars 2005 à 21:26:05

the super best : rien de plus simple ! !

en fait , tu te debrouilles pour trouver une image qui contient plusieurs positions de ton perso , en mouvement

genre , de dos , de cote droit , gauche et de face

environ trois-quatre animations par position , ca suffit

et tu fais un systeme style tu affiches tel partie de l´image au debut
int frame=0;

if ( appuie sur bas )
descend le perso
frame++
if( frame> nombredanimationsduperso ) { frame=0; }

j´ai suppose que tu savais afficher une partie d´une image ?

Ptival
Ptival
Niveau 10
04 mars 2005 à 21:26:12

Thesuperbest -> JYY m´avait montré comment faire un truc qui ressemble en prenant le moment actuel et en y mettant un modulo qui fait que ça change à peu près à la vitesse d´un perso qui bouge...

Je vais voir si j´ai gardé le code que j´avais fait après...

thesuperbest
thesuperbest
Niveau 8
05 mars 2005 à 08:38:59

jejej > J´ai une image avec les différentes positions du perso, mais ce n´est pas si facile : j´ai 3 animations par direction du personnage et j´aimerais qu´elles soit toutes affichée lorsque je me déplace d´une case.

Ptival > Si tu retrouves ton code ce serait bien :)

Ptival
Ptival
Niveau 10
05 mars 2005 à 09:03:55

Mouarf j´ai tout supprimé...J´vais maintenant regarder mes archives de conversations avec JYY pour retrouver le moment où on en parlait :lol:

Ptival
Ptival
Niveau 10
05 mars 2005 à 09:11:59

Ayé j´ai retrouvé la formule que j´avais créée :

( ((Perso.Coord.x * Perso.Coord.y)/Perso.Vitesse)%5)*32

Coord c´est un SDL_Rect de ma classe Perso. Vitesse est un attribut de vitesse ( pour que l´animation soit plus ou moins lente), ensuite le %5 c´est parce que j´ai 5 animations pour chaque " côté" de déplacement ( 8 dans mon cas, c t pas du case/case), et enfin le 32 c´est parce que chaque sprite de mon animation faisait 32 pixels de long. Avec cette formule tu récupères le " x" de ton rectangle de blit source, et pour récupérer le " y" c´est selon la direction du personnage :)

Ptival
Ptival
Niveau 10
05 mars 2005 à 09:15:57

Moi ça avait une allure potable pour un int Vitesse d´environ 30 à 60...

Et en fait elle est mieux que de faire par le temps car sinon les ordis lents ne verraient pas d´animations, alors que là ils la voient mais à " leur vitesse".

thesuperbest
thesuperbest
Niveau 8
05 mars 2005 à 09:44:57

J´ai un peu de mal a faire marcher ta formule, ça fait clignoter ( il est là, il est plus là, il est là...) mon sprite.

Ptival
Ptival
Niveau 10
05 mars 2005 à 10:45:41

Bah alors, comment est formé ton spriteset du personnage ?

C´est comme RPGMaker ? ( apparemment, vu que tu dis 3 mouvements par ligne)

Imagines donc un spriteset comme ça :

[X][X][X] < - De dos
[X][X][X] < - Vers la droite
[X][X][X] < - De face
[X][X][X] < - Vers la gauche

Imagine que chaque case [X] fasse 24 pixels de largeur et 32 de haut ( il me semble que c´est le format RPGMaker).
Pour blitter un bout, tu crées donc un SDL_Rect source.
Pour savoir source.y, ça va dépendre de la touche appuyée ( 0 pour haut, 32 pour droite, 64 pour bas, 96 pour gauche).
Maintenant il faut animer le personnage selon les 3 animation de la ligne, grâce à l´attribut source.x qui doit changer à peu près selon les déplacements du personnage.
Tu mets quelquechose genre :

source.x = ( ((Perso.Coord.x * Perso.Coord.y)/Perso.Vitesse)%3)*24

Comme ça, tu remarques que l´expression dépend de la position de ton personnage, et pas du temps. En effet si tu changes toutes les X secondes, ton perso s´animera à la vitesse du PC et pas à une vitesse équivalente selon les FrameRates. En plus, il s´animera même à l´arrêt ( sauf si tu mets de quoi bloquer)
Moi, je le fais s´animer selon ses coordonnées. Pourquoi je les multiplie ? Simple choix, tu pourrais diviser ça devrait marcher ( mais risque de division par 0, la multiplication est l´opération que je trouve la plus sûre)...

Pourquoi je multiplie ces deux coordonnées ? Eh bien pour avoir une valeur qui change quand le héros se déplace à la fois sur l´axe X et l´axe Y.

Ensuite j´ai donc une valeur qui dépend des coordonnées du perso, mais qui peut avoir plein de valeurs ! Je mets donc un modulo 3, ça réduit les valeurs possibles à 0, 1, et 2. Soit 3 valeurs, et nous avons 3 cases :)

Maintenant pour obtenir la position exacte, il faut multiplier par la largeur d´un sprite. ce chiffre.

T´as compris ou je recommence tout ? ^^

sonic66
sonic66
Niveau 10
05 mars 2005 à 12:29:41

vengeur tu pourrat me le passer :stp:

Vengeur41
Vengeur41
Niveau 10
05 mars 2005 à 12:31:41

Topcool66@aol.com ?

sonic66
sonic66
Niveau 10
05 mars 2005 à 12:37:21

oui!

aiola57
aiola57
Niveau 5
05 mars 2005 à 14:21:52

C´est quoi exactement la ou les grande difference entre le C et le C++ ?

Orquss
Orquss
Niveau 7
05 mars 2005 à 14:32:03

Je ne peux plus utiliser dev C++, ca me bouffe a donf, coment faire amener mon ordi pourri a la casse, sous AVG il n´y a plus de virus sur mon ordi, pourtant ca deconne encore tout le temps.

exemple concret : quand j´appuie sur smylei, ma souris devient une main et reste aisi un certain temps, puis redevient a la normal et je peux la rebouger.

LGV
LGV
Niveau 28
05 mars 2005 à 14:32:14

la couche objet ( pour faire simple et rapide...)

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