Envoyer / passer un tableau dans un bitmap

Signaler
Messages postés
42
Date d'inscription
samedi 13 juin 2009
Statut
Membre
Dernière intervention
19 novembre 2010
-
Messages postés
42
Date d'inscription
samedi 13 juin 2009
Statut
Membre
Dernière intervention
19 novembre 2010
-
Bonjour.
Voila je suis débutant et je crée un jeu en c++ uniquement, je ne souhaite utiliser aucune librairie direct x ou sdl ou autre.
On m a parlé du double buffering dont les exemples ne me parlent pas beaucoup.
Quelqu'un maitrisant bien l api Windows serait il motivé a m'aider à réaliser un jeu 2d?
Le principe de l'affichage serait de passer un tableau à 3 dimensions à un bitmap ou directement à l affichage je ne sais pas...
Je me demande aussi s'il serait intéressant d'utiliser une structure plutôt qu un tableau...
comment écrire cela?

couleur[][][]={0}; ou avec une transparence? combien de dimensions?
ecran[1920][1200][couleur]={0};
décor[1920][1200][couleur];
////////////////////////////////////////////
ecran = décor

devrais je faire un pointeur? *décor / *écran

comment passer mon tableau a un bitmap? Ou comment l afficher?

hwnd=décor? / createcompatibledc ?? comprend pas.

J'aurais aussi besoin d'aide pour mes fonctions, je ne sais pas quels arguments passer en parametres pour tester et changer la valeur des pixels du tableau décor.

VOID testmatiere(couleur,resultat)
{
resultat=0;
if (couleur[0]>56)resultat=1;
if (couleur[1]>56)resultat=2;
if (couleur[2]>56)resultat=3;
else resultat =4;
}

Autre chose : J'aimerais que mon tableau "décor" soit composé de nombres à virgules, mais pour l afficher il faudra bien que ce soient des valeurs absolues. donc comment faire quelque chose du genre?
ecran = fabs(décor);
Et comment pourais-je superposer deux plans décor?
tableau1 = tableau2 + tableau3 en remplacant les valeurs de tableau2 par celles de tableau3, sans qu elles s ajoutent?

Merci pour toute aide et collaboration bienvenue.
Je pense que ce jeu une fois fini serait super sympa.

2 réponses

Messages postés
92
Date d'inscription
samedi 26 mars 2005
Statut
Membre
Dernière intervention
23 septembre 2015

Pour ta couleur, tu pourrais utiliser les COLORREF quant à savoir s'il y a de la transparence, c'est à toi de voir, ça dépend de ce que tu veux.
Pour dessiner ton tableau, il faut effectivement s'appuyer sur les DC : tu crées un DC (CreateCompatibleDC), tu lui attribues une zone de dessin (un bitmap créé au préalable). Après pour copier ton tableau dedans, il faut que tu cherches au niveau de CreateDIBSection.



Coin coin !
Messages postés
42
Date d'inscription
samedi 13 juin 2009
Statut
Membre
Dernière intervention
19 novembre 2010
1
Merci au cas ou j ai ouvert en meme temps une autre question a peu pres sur le meme theme
http://www.cppfrance.com/forum/sujet-JEU-2D-DESSIN-PIXEL-PIXEL-TABLEAU-MATRICE-1920_1443887.aspx
J'ai essaye de comprendre la source base utilisation gdi, mais ca reste assez obscure encore.
http://www.cppfrance.com/codes/BASE-UTILISATION-GDI-API-WINDOWS_46504.aspx
Ca montre un exemple avec une ellipse, mais pas un tableau, et n etant pas expert en syntaxe, je galère.
si dragonjoker ou qq1 d autre voulait bien me macher le travail un peu ca serait vraiment cool.
voili bonne journée