Faire comme Nature dans 3DMark [OpenGL] - C++ - Programmation
Marsh Posté le 26-03-2003 à 19:25:12
Thorondor a écrit : Ben bonne chance |
Ben Merci
Mais pour l'instant ce que j'ai vu en OpenGL, ça m'a paru plutôt facile, donc j'imagine que le reste doit pas être des masses plus compliqué
Marsh Posté le 26-03-2003 à 19:25:52
ReplyMarsh Posté le 26-03-2003 à 21:39:58
Ben est ce qu'il est possible de trouver (g déjà demandé à mon ami google, c pr ça que je demande ici) le source de nature ou de scènes du même ordre de beauté, pour prendre exemple?
Marsh Posté le 26-03-2003 à 22:22:34
Je connais, j'aime bcp surtout que les tutos sont portés en pas mal de formats (en fait j'utilise SDL pr avoir un programme portable). Seulement, je peux me planter, mais j'ai rien trouvé pour avoir un beau terrain, genre avec de la belle flotte, avec reflets et transparentes, ptete de l'herbe...
Enfin Nature reste vraiment le genre de trucs que j'aimerais faire
Et j'imagine qu'il doit bien avoir des exemples du genre pr montrer comment faire
Marsh Posté le 26-03-2003 à 22:37:11
bein je m'y connais pas vraiment mais l'eau dans Nature c'est du pixel shader (directX 8.1 non?)
Marsh Posté le 26-03-2003 à 22:49:23
Je crois que c ça aussi, donc en fait je cherche le moyen de faire le mm genre en OGL ^^
Marsh Posté le 27-03-2003 à 01:43:50
envoie un mail a remedy c'est eux qui ont
fourni la technologie à future mark
LeGreg
Marsh Posté le 27-03-2003 à 18:48:49
Pour la scène de Nature en particulier, si je ne m'abuse, c'est principalement basé sur l'utilisation de Vertex Shaders.
Si tu veux faire une scène qui a de la gueule, bon courage !
Si tu veux faire une scène qui a de la gueule et qui est animée de partout, alors il te faudra des Vertex Shaders en plus du courage !
il ne me semble pas que Nehe propose de tutoriaux ou autres docs sur les vertex shaders, mais tu devrais en trouver assez facilement (perso, j'en ai récupéré sur flipcode ...)
Marsh Posté le 27-03-2003 à 19:43:01
une question : est ce que les vertex shaders/pixels shaders sont géres directement par l'OpenGL actuel ? j'avais entendu parler d'exentsions non standards
Marsh Posté le 27-03-2003 à 19:46:27
à partir d'openGL 1.3 tu dois avoir accès aux pixel/vertex shaders
sinon, c'est à partir d'openGL1.4 .... enfin ... il me semble quand même que c'est en 1.3
Marsh Posté le 27-03-2003 à 19:51:37
flotte transparente, pixel shaders
anim de l'herbe vertex shaders
si tu veux t'y mettre, je te conseille de télécharger soit le render monkey d'ATI soit le CG d'nVidia tu auras de la doc sur ce que tu cherches et un langage de 'haut' niveau pour faire des shaders.
Evidemment, que tu utilises DirectX ou OpenGL, tes shaders sont compatibles puisqu'il s'agit de code destiné à la carte vidéo et non pas interprété par l'API graphique ...
à nouveau, bon courage car les effets ne sont pas toujours aussi simples qu'il y paraît ...
Marsh Posté le 28-03-2003 à 01:47:47
Déjà merci, je connaissais pas flipcode, je vais me faire un plaisir de naviguer dessus.
A propos de Cg et du render monkey d'ATI, j'y avais initialement pensé, mais qd g DL un example d'ATI qui tournait pas sur ma GeForce et un exemple de nvidia qui tournait pas dur une ATI, j'ai un peu arrêté de matter.
J'ai cru comprendre qu'OpenGL ARB permettait justement de développer de manière portable
Marsh Posté le 28-03-2003 à 11:05:12
En fait, OpenGL utilises un mode de developement pousser par les constructeurs de carte graphiques. Quand ceux-ci prevoient de nouvelles fonctionalites, il exposent celles-ci avec des extentions specifiques suivnatune norme de nommage precise. Quand ces extentions sont jugees dignes d'etre normalises, le commite se met d'accord et cela donne une extention officielle ARB.
Pour faire des shaders sur OpenGL pre 2.0, il fallait soit passer par les extentions ATI qui ne marchetn que sur ATI, soit passer par les extentions NV qui ne marchent que sur NVidia. Mais avec la derniere version tu dois pouvoir passer par une et une seule extention ARB.
Marsh Posté le 28-03-2003 à 13:00:06
merci de ces précisions.
Clairement, ça ne m'intéresse pas de développer qqch qui ne soit pas normalisé justement (déjà que c un projet à vocation open source sous licence GPL et portable, ça serait con ^^)
Cependant, si je ne m'abuse, avec les fragments on doit pouvoir faire qqch, seulement je ne sais pas vraiment où me documenter, les tutos de nehe ou gamestutorial sont très bien et pratiques, mais ils ne sont pas poussés à ce point.
Marsh Posté le 28-03-2003 à 13:11:02
Sur le site d'ati, y a des exemples, je m'était amusé a en porter un sous linux(un des plus simple vu que ma cg était une 7200 a l'époque) pour les faire fonctionner sur une nvidia, ça devrait pas etre trop compliquer non plus.
Marsh Posté le 28-03-2003 à 13:25:26
theShOcKwAvE a écrit : à partir d'openGL 1.3 tu dois avoir accès aux pixel/vertex shaders |
Heuu.. je me trompe peut-etre, mais je crois que les shaders n'existent pas encore sous OpenGL et que ceux-ci sont prévu pour la version 2.0 d'openGL (le format de programmation des shaders est encore en pourparler pour cette version 2 d'ailleur...) Enfin, je me trompe peut-etre, mais c'est vrai que, si c'est possible, je voudrais bien savoir comment on peut programmer des shaders en OGL
Marsh Posté le 28-03-2003 à 15:03:27
ixemul a écrit : |
y'avait une histoire d'HLSL ogl qui vient d'etre valide (enfin y'a un moins), donc le tps que ca arrive...
pour les shaders en asm, aucune idee, par contre y'a tjs le cg de nvidia
Marsh Posté le 28-03-2003 à 20:00:20
dc la prog des shaders c pas pr tt de suite? faut que je regarde ca bientôt
Par contre, on peut connaître toutes les extensions ARB? et ça marche comment? elle st incluses ds OpenGL ou c des libs à rajouter?
Marsh Posté le 28-03-2003 à 20:07:40
Je pense que opengl.org est un bon endroit pour chercher ce genre d'info.
Edit :
Avec les drivers 41 de NVidia, sous Linux, j'ai ces 2 extentions dispo :
gl.h:#define GL_ARB_fragment_program
gl.h:#define GL_NV_fragment_program
Il ne te reste plus qu'à trouver de la doc a ce sujet
Marsh Posté le 28-03-2003 à 22:18:06
ixemul a écrit : |
Autant pour moi ... Je viens de vérifier dans la doc d'OpenGL jusqu'à la 1.4, aucune trace de shaders ...
(en fait, j'ai confondu avec des fonctions introduites par ATI qui étaient réalisées en interne par des shaders ... cf Vertex Skinning et Vertex Morphing si ma mémoire ne me joue pas de tours cette fois-ci ... )
Marsh Posté le 28-03-2003 à 22:43:55
theShOcKwAvE a écrit : |
Et ça, c'est du paté : GL_ARB_fragment_program GL_ARB_vertex_program ?
Marsh Posté le 28-03-2003 à 23:10:08
Ah oui, là tu m'aides, faudrait que je me renseigne, parce que g chopé un example sur le site de nvidia qui faisait des effets de flotte, ptete qu'en utilisant GL_ARB_fragment_program à la place de GL_NV_fragment_program on peut obtenir qqch de portable
Marsh Posté le 29-03-2003 à 01:50:21
Kristoph a écrit : |
ben ... 'faut croire ...
('tain ... plus je réponds, plus je m'enfonce ... Je sors prendre l'air là ...)
Edit : Remarque ... Ca s'appelle pas Shader ! (rechercher shader, ca m'a rien donné ... j'ai pas eu le courage de chercher plus loin )
Marsh Posté le 29-03-2003 à 10:17:37
bah le nom c pas bien important ^^
Si tu vux, g une GrForce 4 Ti 4200, elle est compatible OpenGL 1.4, et je peux matter les effets OpenGL, dc conclusion, c possible
Maintenant, je peux peut-être prendre exemple sur les demos de nvidia pr les rendre portable, y a des trucs sympas
pour ceux que ça intéresse, c'est là: http://www.developer.nvidia.com/vi [...] gl_effects
Y a la même chose pour ATI mais je suis pas allé voir
Marsh Posté le 30-03-2003 à 01:53:46
Hum hum ...
Je ne l'ai pas lu, mais je me suis dit que ca pouvait t'intéresser ...
http://www.ati.com/developer/gdc/GDC2003-ShaderLib.pdf
Edit : Bon ... j'viens d'en faire le tour, en fait, c'est pas vraiment le top ... désolé ...
Marsh Posté le 30-03-2003 à 03:07:14
J'en profite pour poser une question, les extensions OpenGL préfixées par EXT, elles ne sont pas standards, mais pourquoi EXT et pas ATI ou NV, ou je ne sais quoi ...
exemple : EXT_vertex_shader (tiens donc ... mais c'est fait par ATI, apparamment ...)
Edit : j'en profite pour filer un petit lien vers ce que j'énonce ci-dessus : http://www.ati.com/developer/sdk/R [...] shader.txt
Marsh Posté le 30-03-2003 à 12:06:36
theShOcKwAvE a écrit : J'en profite pour poser une question, les extensions OpenGL préfixées par EXT, elles ne sont pas standards, mais pourquoi EXT et pas ATI ou NV, ou je ne sais quoi ... |
Peut-être parce que c'est une extension OpenGL, nvidia ont choisi de mettre NV à la place
Enfin de mon cotéje trouve tjs ça inutile si ça tourne pas partout
Marsh Posté le 30-03-2003 à 12:09:57
theShOcKwAvE a écrit : Hum hum ... |
Oui sur le site d'OpenGL y a le mm genre de conférences, c sympa à lire mais on apprend pas vraiment comment les utiliser (normal, c pas le but d'une conférence)
Marsh Posté le 26-03-2003 à 17:27:18
tout le monde
Alors en fait j'aimerais réaliser un petit truc en 3D qui a la gueule de Nature de 3DMark (ambitieux qd mm le gars ) donc je me demandais si les sources étaient dispo (ce dont je doute) ou si on peut trouver ce genre de source pr prendre exemple.
En gros, j'ai envie d'un truc qui a de la gueule
Pr info, ça sera dévelopé en C++ et OpenGL que je commence à bien maitriser, j'ai envie d'aller plus loin