1

AJOUT

Allez directement à la reponse 3

et voici le lien :

http://www.lminguet.freesurf.fr/programme/pc/lab3d/index.html

FIN DE L'AJOUT

C tout simple, je ne sais pas comment faire du graphisme en visual C++, et j'aimerais savoir comment faire..

Donc rien qu'un exemple tout con : comment faire pour tracer une ligne dans un objet Picture s'appelant image ? quelles sont les variables et les liens à créer? quelle type de var utlisé ? g trouvé un truc qui s'appelle CDC mais g pas compris comment l'utiliser, donc si quelqu'un à une idée, merci ...
love
Ancien pseudo : lolo

2

fais chiez, me suis trompé dans le titre..., c'etait pas sour mais sous.. désolé...
Ancien pseudo : lolo

3

toutes les fonctions graphiques font partie de la GDI (graphical device interface)
tu regardes dans la rubrique GDI de l'aide et t'auras ton bonheur !

par exemple pour tracer une ligne :
CDC *dc = GetDC(); // on récupère le device context
RECT rc;
GetClientRect(&rc):
dc->moveTo(0, 0);
dc->LineTo(rc.right, rc.bottom);

pour tracer dans une image (CBitmap) c'est plus compliqué, je sais pas trop

sinon pour que ça se remette à jour tout le temps lorsque par exemple on redimensionne la fenêtre, faut mettre le code dans la fonction OnPaint()

4

c'est bon, j'ai trouvé mon bonheur en me tournant vers l'OpenGL

Voici ce que j'arrive a faire :
screen01.jpg

ou encore :

screen02.jpg

c'est pas beau ca ?
et c'est ici :
http://www.lminguet.freesurf.fr/programme/pc/lab3d/index.html

en fait, j'ai programmé un createur de lab mais il ne me créé que des lab tout plat, mais je suis en train de faire mon prgm de tel facon qu'il accepte n'importe quelle type de map.. pour exemple la map par defaut que vous pouvez tester en lancant directement viewergl.exe

si vous voulez avori une autre map, lancez lab3D.exe, mais attention, ne depassez pas les 200 salles, car sinon.... voila quoi....

si vous voulez retablir la map par defaut, elle se trouve dans le rep world demo, il suffit de la copier dans data...

voila, merci de me dire tous les bugs observés que je puisse l'améliorer...
Ancien pseudo : lolo

5

terrible!!!! smile
attends.. t'as fait ça en 5 jours??

6

exact.. toi t'a reagrder la date de creation du topic.. par contre, c encore bourré de bug question collisoin avec les murs quand il y a plus de 2 etages l'un au dessus de l'autre, etj'ai aps encore mis au point le fait de se baisser, de sauter, et le controle à la sourie.. il y a encore pas mal de boulot...
Ancien pseudo : lolo

7


au passage , j'ai refais la map de demo, elle est un peu plus belle, mais il y a pas aml de bug de colisions du aux multiples niveaux de cete map.. a corrigé
Ancien pseudo : lolo

8

joli smile
tu geres quoi?
c'est quel type de maps?
tu utilise quetype de rendu?
tes collisions tu les fais comment?
bref, donne nous des details! oui
In many respects the Yoshi is like a beautiful woman. A man can come so enamoured that he bestows on her all his time, his energy and his fortune.
- Fred whipple, 1960

*** Ne sous-estimez pas la puissance de la Marmotte ***
© Marmotte Team : LaMarmotte, sBibi, Vark & Sabrina

9

et heu, moi j'aurais plutot vu ca dans le forum programmation graphique, mais bon... triso
In many respects the Yoshi is like a beautiful woman. A man can come so enamoured that he bestows on her all his time, his energy and his fortune.
- Fred whipple, 1960

*** Ne sous-estimez pas la puissance de la Marmotte ***
© Marmotte Team : LaMarmotte, sBibi, Vark & Sabrina

10

-

11

les maps : regarde les fichiers dans le rep data :
world.txt ; le fichier principal
map.txt : le monde
obj1 et obj2.txt : les objs

dans map :
nbsol = nbre de quads qui definissent le sol
nbquads : nbre de quads au total
puis tous les quads le un à la suite des autres tq :
texture : n° de la texture
sol : 1 si sol, 0 sinon
alpha : transparence, 1 = opaque
puis les 4 points tq X, Y, Z, correpondance C texture, correspondance Y texture



pour les collisions : sphere
Ancien pseudo : lolo

12

Orion_: lolo a deja une expérience dans la 3D, toi, je ne pense pas beacoup (mis à part ta démo)

13

ca c vrai aussi wink il y a de cela 10 ans, je fesais deja de la 3D en 2 couleurs sur mon (tres) vieux ATARI 130 XE... il y avait un cube qui tournait, avec les faces remplies et qui changaient de couleur (ou plutot de trames...) suivant leur position par rapport à une source de lumiere...

ca tournais au moins à... 5spf...oui oui SPF : SECOND PER FRAME :P

c'était le bon vieux temps smile
Ancien pseudo : lolo

14

sBibi : juste comme ca, le prgm viewer de map de quake 3 qu'il y a sur ton site, c toi ki l'a fait tout seul ? en combien de temps????

moi qui était content de moi, suis degouté parce que je fais maintenant.. merci.... :P
Ancien pseudo : lolo

15

heu, ben je l'ai code cet ete... a peu pres en 1 semaine
a part le moteur de collisions que g fait apres, juste avant la rentree d'octobre
mais bon c tjrs pareil, qd t'as tous les algos en tete ca va vite, le plus long c de les chercher smile
In many respects the Yoshi is like a beautiful woman. A man can come so enamoured that he bestows on her all his time, his energy and his fortune.
- Fred whipple, 1960

*** Ne sous-estimez pas la puissance de la Marmotte ***
© Marmotte Team : LaMarmotte, sBibi, Vark & Sabrina

16

de tte facons tes collisions marchent mieux que les miennes la gringrin
mais bon c pas pareil aussi

tu collisionne contre quoi? tu teste la sphere contre chaque polygone de ton monde?
moi je fais ca avec les brush de l'arbre BSP, ca va (bcp grin) plus vite, ms y a une couille qque part, ca collisionne ke dalle a certains endroits, et g tjrs pas pris le temps de le debugger...
In many respects the Yoshi is like a beautiful woman. A man can come so enamoured that he bestows on her all his time, his energy and his fortune.
- Fred whipple, 1960

*** Ne sous-estimez pas la puissance de la Marmotte ***
© Marmotte Team : LaMarmotte, sBibi, Vark & Sabrina

17

Les brushs, c'est quoi ?

18

un volume convexe solide, defini par un ensemble de plans...
In many respects the Yoshi is like a beautiful woman. A man can come so enamoured that he bestows on her all his time, his energy and his fortune.
- Fred whipple, 1960

*** Ne sous-estimez pas la puissance de la Marmotte ***
© Marmotte Team : LaMarmotte, sBibi, Vark & Sabrina

19

juste une petit ekstion .. j'arrive aps a calculer mes fps car 'jarrive pas a acceder au timer.. coment on fait en C++ ?
Ancien pseudo : lolo

20

#include <ctime>
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

21

et apres ? si je souhaite initaliser un timer à 1000µs et tout et tout ? t'aurais pas un exmple ?merci :]
Ancien pseudo : lolo

22

je comptais utiliser ca, mai sca marche pas, ca me renvois tjrs 100, 50, 33 ou 25 dans frame.. quelqu'un a une idée ?

tFin = clock();
frame = ((float)(CLOCKS_PER_SEC))/((float)(tFin - tDebut));
tDebut = tFin;
Ancien pseudo : lolo

23

Tu utilises la GLUT ?

24

j'utilise ca :

#include <gl\gl.h> // Header File For The OpenGL32 Library
#include <gl\glu.h> // Header File For The GLu32 Library
#include <gl\glaux.h> // Header File For The Glaux Library
Ancien pseudo : lolo

25

je viens de reussir à utiliser les timer, merci Kevin...

maintenant, les vitesses de deplacement s'adaptent au FPS pour que l'on bouge tjrs a la meme vitesse, meme si ca rame (sauf en dessou des 19fps, je ne sais pas why... en fait si mais bon... c'est parce que je me base sur 20 frame pou calculer le fps du coup en desous le prgm n'a pa le temps d'adapter la vitesse...

bref, la nouvelle version est tjrs dispo sur les memes liens qui se toruve en haut de cette page
Ancien pseudo : lolo

26

timeGetTime()

ca te retourne le nombre de millisecondes ecoulees depuis je c plus quand, tu recupere la valeur au debut du prog, et tu code ton timer...

heu, pour le blending de tes faces, pour que ca rende bien tu dois desactiver l'ecriture dans le Z-Buffer qd tu dessines les faces transparentes (pas la lecture), et les afficher APRES les faces opaques...
In many respects the Yoshi is like a beautiful woman. A man can come so enamoured that he bestows on her all his time, his energy and his fortune.
- Fred whipple, 1960

*** Ne sous-estimez pas la puissance de la Marmotte ***
© Marmotte Team : LaMarmotte, sBibi, Vark & Sabrina

27

arf, cross-post smile
In many respects the Yoshi is like a beautiful woman. A man can come so enamoured that he bestows on her all his time, his energy and his fortune.
- Fred whipple, 1960

*** Ne sous-estimez pas la puissance de la Marmotte ***
© Marmotte Team : LaMarmotte, sBibi, Vark & Sabrina

28

et op, une nouvelle image montrant la possibilité d'avoir plusieurs niveaux les uns au dessus des autres. f indique le fps

screen03.jpg
Ancien pseudo : lolo

29

sBibi > le pb si je fais ca, c'est que mon objet transparent va s'afficher meme si il y a un mu devant.... du style pour l'image ci-dessus, si on avnace , le cube vert va quand meme s'afficher par dessus la rampe....
Ancien pseudo : lolo

30

pour timeGetTime, c'est le nombre de millisecs depuis la derniere seconde, et pour le blending, non!

t'as pas compris ce que j'ai dit, relis mon post!

tu desactive l'ECRITURE dans le Z-buffer, PAS la lecture...
In many respects the Yoshi is like a beautiful woman. A man can come so enamoured that he bestows on her all his time, his energy and his fortune.
- Fred whipple, 1960

*** Ne sous-estimez pas la puissance de la Marmotte ***
© Marmotte Team : LaMarmotte, sBibi, Vark & Sabrina