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

SDL/C++ : SDL_MOUSEMOTION

_[CONKER]_
_[CONKER]_
Niveau 10
30 mars 2004 à 21:33:12

bouh j´ai jamais aimé les switch^^
mais bonne idée, j´essaierai demain je pense quand j´aurai + de temps :).

zedix
zedix
Niveau 5
30 mars 2004 à 21:38:02

Bah, c´est quand même vachement pratique, surtout avec la SDL ! Et genre pour les touches, si tu en geres 25, c´est quand même hyper sympa :

switch ( event->key.keysym.sym)
. ..{
. ..case SDLK_ESCAPE : return EXIT;

. ..case SDLK_F1 : return NEXT;

. ..case SDLK_F2 : fonction();
. ..break;

. ..case SDLK_b : fonction_2();
. ..break;

. ..case SDLK_c : fonction_3();
. ..break;

. ..case SDLK_z : fonction_4();
. ..break;

. ..case SDLK_j : fonction_5();
. ..break;
. ..}

Et ainsi de suite...

i_am_the_law
i_am_the_law
Niveau 6
30 mars 2004 à 21:38:04

Fais comme JYY t´as dit, essaye de mettre tes images dans la memoire video.
En mode fenetre y´a pas de " lag" donc c´est bizarre :)

Et mets void motion()
ou bien renvoie une valeur, pcq mon compilateur il accepte pas :)
( pareil pour waitclick)

_[CONKER]_
_[CONKER]_
Niveau 10
30 mars 2004 à 21:41:18

zedix : c´est vrai :).

tlm : VRAM = mémoire de la carte graphique?
dsl si je me trompe, mais je connais pas grand chose la dedans :(.

im the law : je vais le faire :), mais je dois y aller à présent, je ferai tout ca demain :).
merci pour l´aide!
bonne nuit. ( n´hésitez pas a répondre pendant que je dors, et puis je pars dans 10min je pense, donc si vous repondez a temps je repondrai ^^ lol.).

zedix
zedix
Niveau 5
30 mars 2004 à 21:44:30

Bah disons que si pour une touche tu as une fonction, c´est hyper clair, et super pratique à debugguer. Un vrai bonheur.

Par contre, si tu utilises des switchs imbriqué, fait gaffe à bien mettre les break ; )

_[CONKER]_
_[CONKER]_
Niveau 10
30 mars 2004 à 21:47:38

c´est bon pour la RAM et la VRAM, j´ai compris, j´avais pas lu le tuto de jyy jusqu´à la fin :).
sinon pour les switch, j´ai jamais accroché, mais je ferai ça demain, ça me fera un bon exercice^^.
bon j´y vais la :). bye et bonne nuit all :).

JeanYvesYves
JeanYvesYves
Niveau 10
30 mars 2004 à 21:52:08

Bon, ben j´arrive trop tard pour l´explication de VRAM :)

pour faire simple si y´en a qui nous rejoignent : la VRAM est la mémoire sur la carte graphique.
Sin on stocje l´image de fond en RAM ( qui peut faire facilement 4 Mo --> tres gros), a chaque itérations il faut envoyer l´image dans la carte, ça perd un peu de temps ! ! et faut le faire octet par octet --> encombrement du bus.

si on y stocke d´entrée en VRAM, pas besoin d´encombrer le bus a chaque frame. De +, le GPU ( processeur de carte graphique) connait des algos parralleles, donc est capable d´y traiter bien + vite que le CPU ( processeur central)

Morale : une image en VRAM se colle bcp bcp + vite

zedix
zedix
Niveau 5
30 mars 2004 à 21:57:42

C´est donc pour ça que mon moteur 2D à base de tiles tournait à 25fps... :-)))

_[CONKER]_
_[CONKER]_
Niveau 10
31 mars 2004 à 14:13:11

bon bah j´ai essayé de stocker les images en VRAM..
bah faut dire que le prog fait n´importe quoi ! ! il y a l´image du bureau mélangée avec des lignes blanches et noir et des autres trucs qui font n´imp ! !!
voici le lien avec un zip contenant le fichier . cpp, les images, l´exe..
http://conker.tonsite.biz/SDL_perso.zip

voici le code intéressant:

***

screen = SDL_SetVideoMode(1024, 768, 32, SDL_DOUBLEBUF|SDL_HWSURFACE|SDL_FULLSCREEN);
temp_map = SDL_LoadBMP("map.bmp");
temp_perso = SDL_LoadBMP("perso.bmp");
temp_selection = SDL_LoadBMP("selection.bmp");
temp_cursor = SDL_LoadBMP("cursor.bmp");
map = SDL_CreateRGBSurface(SDL_HWSURFACE, 1024, 768, 32, 0, 0, 0, 0);
perso = SDL_CreateRGBSurface(SDL_HWSURFACE, 1024, 768, 32, 0, 0, 0, 0);
selection = SDL_CreateRGBSurface(SDL_HWSURFACE, 1024, 768, 32, 0, 0, 0, 0);
cursor = SDL_CreateRGBSurface(SDL_HWSURFACE, 1024, 768, 32, 0, 0, 0, 0);

SDL_BlitSurface(temp_map,NULL,map,&_map);

SDL_BlitSurface(temp_perso,NULL,perso,&_p
erso);

SDL_BlitSurface(temp_selection,NULL,selection,&
tangle_selection);

SDL_BlitSurface(temp_cursor,NULL,cursor,&
_cursor);

SDL_FreeSurface(temp_map);
SDL_FreeSurface(temp_perso);
SDL_FreeSurface(temp_selection);
SDL_FreeSurface(temp_cursor);

***

si qqun pouvait m´aider, surtout que ça n´a vraiment pas l´air d´optimiser quoi que ce soit !

i_am_the_law
i_am_the_law
Niveau 6
31 mars 2004 à 14:44:41

Quand tu crees tes surfaces faut leur donner la bonne taille. Ta map fais 2000*2000, ton curseur 13*13.

et ensuite quand tu fais le blit, tu mets NULL dans le 4eme parametre puisque tes rectangles ne sont pas encore definis, et que tu veux copier toutes l´image.

_[CONKER]_
_[CONKER]_
Niveau 10
31 mars 2004 à 15:35:36

oui c´est bon problème réglé merci :).

gulius44
gulius44
Niveau 9
02 avril 2004 à 13:43:07

Ton url esemble est invalide. Essaye de rectifier ça stp, parce que ton truc pourrait me dépaner. Merci

Gulius

_[CONKER]_
_[CONKER]_
Niveau 10
02 avril 2004 à 16:18:36

oui j´ai effacé le lien, mais mon code est plutôt mal foutu et je vois pas trop en quoi il te serait utile ! surtout que scroller du 2000*2000 on m´a dit que ca se faisait pas trop ^^.
mais bon si t´y tiens je le remets.
http://conker.tonsite.biz/scrolling.zip

gulius44
gulius44
Niveau 9
02 avril 2004 à 18:18:36

Merci bcp. Jai besoin de ta source parce que je minitie tout simplement à la SDL. ET apprendre avec des sources me parait plus facile

Merci bcp

GUlius

gulius44
gulius44
Niveau 9
02 avril 2004 à 18:19:37

Ya un fluide qui passe entre nous gars regarde un peu.

_[cOnkeR]_ Posté le 02 avril 2004 à 16:18:36
gulius44 Posté le 02 avril 2004 à 18:18:36

Dingue nan!!!

_[CONKER]_
_[CONKER]_
Niveau 10
02 avril 2004 à 18:20:43

haha lol :rire2:
bonne chance pour ton apprentissage ; )

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