NVIDIA Cg - C for graphics - Programmation
Marsh Posté le 13-06-2002 à 18:13:19
wow, merci pour le lien. c'est une excellente idée, j'ai maté les exemples de cgshaders.org et du coup j'ai hâte d'utiliser la bestiole
Marsh Posté le 13-06-2002 à 18:23:42
yep, ils en parlaient depuis un an
(conf a la GDC 2001, j'ai plus le lien) mais la ca calme.
Enfin, faut voir comment ca va marcher
dans le monde reel (autre que les cartes GeForce4..).
et puis avec les solutions alternatives qui commenceront
a fleurir comment la solution "proprietaire nVidia"
va evoluer.
LeGreg
Marsh Posté le 13-06-2002 à 18:51:05
Je suis le point de finir de télécharger le toolkit, on va voir si c'est si facile de transcrire mes shaders en C
Marsh Posté le 13-06-2002 à 19:01:15
La 3D: tant de superbes techniques d'optimisation et de techniques graphiques alors qu'il n'y a pas assez de temps pour tout apprendre
C'est mal fait la vie...
Marsh Posté le 13-06-2002 à 19:41:58
Alload a écrit a écrit : La 3D: tant de superbes techniques d'optimisation et de techniques graphiques alors qu'il n'y a pas assez de temps pour tout apprendre C'est mal fait la vie... |
bah ? apparement john y arrive... en plus il a aussi le temps de s'occuper des fusess
Marsh Posté le 13-06-2002 à 20:12:37
Oui mais moi j'ai le BAC et la prépa l'an prochain... Jonh il a que ça à faire C'est un glandu qui passe son temps à programmer
Marsh Posté le 13-06-2002 à 21:02:23
deja j'arrive pas a compiler leur exemple OGL.
j'ai installé glut3.7.6 et à la compilation j'ai ca:
Code :
|
Marsh Posté le 13-06-2002 à 23:12:42
Hum, je viens de lire la "notice" (enfin je me suis arreté aux exemples) et ça a l'air plutôt pas mal.
J'aime bien la possibilité d'automatiser l'assignement des numéros des registres constants dans les vertex et pixel shaders (genre l'ancien chiant SetVertexShaderConstant(0, &mamatrice, 4) qui va devenir SetShaderConstant(matricedevue &mamatrice)). Enfin faut voir en pratique comment mettre tout ça en place, déjà va falloir arriver à initialiser tous les cgContextContainer, cgProgramContainer, et le reste que je me rappelle déjà plus
Enfin bon, j'ai le week-end pour arriver à traduire mes shaders en Cg
Marsh Posté le 13-06-2002 à 23:31:45
euuuu
cg c permet de faire une partie graphique complète (fenêtres, loader fichiers 3D, textures, polygones, etc) ou alors c que leur pixelshaders ?
Marsh Posté le 13-06-2002 à 23:42:12
ça permet de programmer des vertex et pixel shaders en haut niveau (en un pseudo C) plutôt que directement en assembleur.
pour la partie graphique (plus ou moins) complète, tu as D3DX avec directx, glut sous opengl et pas mal de libs gratuites à côté pour les deux libs.
Marsh Posté le 14-06-2002 à 00:07:43
ha wai spa cool je croyais que cg s'occupait aussi de directx et opengl en reprenant les mêmes fonction mais de plus haut niveau
Marsh Posté le 14-06-2002 à 01:14:50
Y a une option "compiler pour ATI radeon"?
On peut rajouter des "plug-in"? (ie. ATI pour rajouter une option de compilation pour ses Radeons?)
Non, parce que sinon, ca a pas trop trop d'intérêt pour les développeurs....ATI va juste devoir sortir ca version du même truc, ca va tourner au grand n'importe quoi!
Marsh Posté le 14-06-2002 à 01:18:46
Cette "révolution" comme tout le monde l'appelle, ca faisait un petit moment qu'on l'attendait!
Au passage, je trouve assez bizarre que ce ne soit pas Microsoft qui se soit chargé de mettre en place ce langage...
A mon avis, il va vite être intégré à DirectX et OpenGl (2), et on ne parlera plus trop de Nvidia. Cela dit, ca reste un bon coup dans l'industrie graphique.
Marsh Posté le 14-06-2002 à 01:27:15
Willyzekid a écrit a écrit : Y a une option "compiler pour ATI radeon"? |
tu n'as apparemment pas tout pige...
Le compilateur compile pour des vertex et pixel shaders DirectX8.0
Conclusion => tu as une carte compatible ps et vs DX8 et ca passe.
sinon on a evoque aussi le HLSL de Microsoft dans DirectX9 si c'est de ca dont tu voulais parler. (j'ai pas de confirmation ceci dit)
LeGreg
ps: pour OpenGL c'est une autre histoire mais ce sera pas pire que maintenant en fait, vivement OpenGL2.0 poussé par 3DLabs.
Marsh Posté le 14-06-2002 à 01:31:46
voila la presentation du GDC de l'an dernier:
http://www.intrinsic.com/gdc/html_version/mtj8.htm
LeGreg
Marsh Posté le 14-06-2002 à 02:18:10
legreg a écrit a écrit : tu n'as apparemment pas tout pige... Le compilateur compile pour des vertex et pixel shaders DirectX8.0 Conclusion => tu as une carte compatible ps et vs DX8 et ca passe. |
Hum, oui j'avais pas vu ca!
Marsh Posté le 15-06-2002 à 10:07:14
Ce que je pensais si pratique avant d'essayer de le mettre en place, à savoir la possibilité d'initialiser les constants registers par le biais d'iterators pointant sur les membres de la fonction principale.
Ben ça m'a pas l'air tout le temps pratique. Admettons que chaque vertex shader utilise la même matrice de transformation, dans le temps on la chargeait dans un constant register de notre choix et on donnait le même indice dans tous les shaders quand on voulait l'utiliser. Mais là, on est pas sûr que la mettre avec un iterator d'une fonction permettra de la retrouver dans une seconde fonction.
Donc il faudrait à chaque qu'on change de vertex shader remettre en mémoire les informations globales en cherchant tous les iterators. Ca m'a pas l'air très pratique, donc je pense que je vais simplement liée toutes les informations redondantes à chaque fonction aux constans registers comme d'hab en utilisant #pragma bind...
Par contre où les iterators me semblent pratique c'est pour les informations relatives à chaque shader, là on a plus besoin de se faire chier à donner des numéros qui collent.
Marsh Posté le 15-06-2002 à 13:12:33
moi j ai comme un petit problem
il ne veut pas me charge des Effect c normal docteur ?
Marsh Posté le 15-06-2002 à 13:39:19
ca m'interesse pas trop, vu qu'on s'est deja fait chier a faire un truc dans le genre (on est tjs au niveau de l'asm, mais on ne touche plus directement au constante/reg & cie)
vais quand meme voir si y'a pas des idées a repiquer
Marsh Posté le 15-06-2002 à 18:21:58
dans le passé il y avait déjà eu quelques initiatives semblable de la part de quelques constructeurs et ça n'a pas vraiment marché...
alors je me demande si ça va réelement fonctionné maintenant?
Marsh Posté le 15-06-2002 à 18:29:01
nvidia a acquis un bon pouvoir de normalisation maintenant...
enfin dans un certains sens c'est pas mal leur truc,l'idée de base est bonne...
Marsh Posté le 18-06-2002 à 11:32:50
J'en suis qu'a lire le SDK et ses specs, meme s'il y a quelques lacune (fo po oublier que c la 1ere version), ca se présente plutot bien. En tout cas, on peut voire que tout a été fé pour accélérer le processus de développement et on peut dire que de ce coté, leur objectif est atteint. Reste a voir dans la durée et ce qu'en penserons les industriels et les développeurs de jeux vidéos.
Marsh Posté le 18-06-2002 à 11:40:21
là http://clootie.narod.ru/ les utilisateurs de delphi et builder trouveront les conversions des headers
Marsh Posté le 13-06-2002 à 17:53:05
Quelqu'un a déjà jetté un oeil ?
http://developer.nvidia.com/cg