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

Les Différents Shaders

Pseudo supprimé
Pseudo supprimé 04 septembre 2006 à 16:39:41

Salut tout le monde,
Je pense que les shaders ont un brillant avenir dans le monde du jeux video (j´espere que jme trompe pas...) et j´aimerais savoir les différents utilisations que l´on peut faire avec les shaders.
Voici ceux que je connais :
-> Les utiliser sur un models comme "texture" (Cell shading, displacement..)
-> Les utiliser en tant que particules (Une torche par exemple)
-> Modifier une surface ( vagues, drapeau flotant)
Et voilà.
J´ai entendu qu´il était capable de gérer un éclairage mais je comprend pas ce principe... Comment peut-on utiliser un shader avec une lumiere ?? ?
On charge un model 3d puis on lui applique ce shader ?
Merci :)

Lapintade
Lapintade
Niveau 30
04 septembre 2006 à 16:45:26

Il existe deux sortes de chaser.

Les vertex shaders = Programmes qui modifient les points 3D

Les pixels shaders = Programmes qui modifient les points 2D a l´ecran.

Les shaders sont programmables, tu mets ce que tu veux dedans. Tu peux faire un vertex shader qui deplacent tes points de 1 unités sur la droite (ca sert a rien je sais, mais c´est juste un exemple).

Dans ton vertex shaders, tu applique en general la transformation local -> ecran, tu calcul la quantité de lumiere que le point recois suivant la position des lampes autours, tu peux aussi calculer un deplacement suivant un skelette (pour les personnages) ou meme tu peux faire plusieurs rendus dans ton shaders pour faire des "couches" (rendu fourrure par exemple).

Bref un shader ca peut servir a tout, vu que c´est un bout de programme que l´on fait.

Fvirtman
Fvirtman
Niveau 10
04 septembre 2006 à 17:04:36

Sujet intéressant, et j´avoue que je suis pas tres fort la dedans. (les profs de la fac n´étaient pas a jour...)
J´ai quand meme regardé quelques pages sur le net, mais si quelqu´un a une super page qui explique divers types de shaders (les plus conus), avec des illustrations (avec/sans shader), la, ce serait magnifique :-)

alex6891
alex6891
Niveau 10
04 septembre 2006 à 17:31:26

Même remarque que JY², si quelqu´un a un bon lien je suis preneur pour m´instruire davantage :ok:

Pseudo supprimé
Pseudo supprimé 04 septembre 2006 à 19:28:56

Ok , merci Lapintade.
Je pense avoir compris...
Pour ceux qui veulent des exemples de shaders :

http://www.shadertech.com/cgi-bin/shaders.cgi?filter=1&page=0
et
http://www.codesampler.com/index.htm

Une Autre question:
Il y a plusieur types de shaders, HLSL(Directx), GLSL(Opengl) et CG (créé par nvidia il me semble).
Bref est-il possible de convertir facilement (oui sinon ca sert a rien de convertir lol) un HLSL et/ou GLSL en CG ?? ?

- Tutorials US :
http://www.shadertech.com/articles/

http://www.nvidia.fr/object/cg_toolkit_fr.html

- Tutorials FR sur les shaders CG:
http://brugevin.boris.free.fr/dl/tuto_cg/base/Tutorial_Cg.pdf#search=%22tutorials%20cg%20shaders%22

Il y en a plein d´autre en cherchant sur google, mais j´ai mi seulement ceux pour les shaders Cg.
Pas bcp de site FR, à croire qu´on est en retard ... Si qqn à l´intention de se lancer dans un tuto qu´il fasse signe lol

Pseudo supprimé
Pseudo supprimé 04 septembre 2006 à 22:28:55

après avoir contourné plusieurs site, j´aurais quelque question, si qqn connait un ptit peu :

- Quelle est la différence entre RELIEF mapping et PARALLAX mapping ?

-Quelle est la différence entre Shadow mapping et shadow volume ?

Merci

Pseudo supprimé
Pseudo supprimé 04 septembre 2006 à 22:50:00

Apparament y´a pas bcp de personnes qui s´y connaissent en shaders..lol
Pas grave qd les gens chercheront ils trouveront se topic :oui:
Je crois que la différence entre le relief et le parallax et l´ombrage...le relief rend un ombrage nettement meilleur que le parallax, enfin d´après ce que j´ai cru comprendre.
Pour le shadow mapping et le shadow volume je sais pas encore leur dfférence et qd utiliser l´un ou l´autre^^

gollumkawder
gollumkawder
Niveau 10
04 septembre 2006 à 23:37:57

"Bref est-il possible de convertir facilement (oui sinon ca sert a rien de convertir lol) un HLSL et/ou GLSL en CG ?? ?"

le HLSL de Microsoft est un jumeau du Cg ´C for Graphics´, Nvidia ayant travaillé main dans la main avec Microsoft pour la réalisation de ces langages. Il existe cependant a ma connaissance beaucoup moins d´utilisations de Cg dans le commerce que dans le domaine scientifique, d´ailleurs le Cg est un peu abandonné pour ainsi dire, il se fait ´vieux´. Le GLSL est venu plus tard officiellement en feature principale d´OpenGL 2.0 (ce qui je le rapelle, ne sera pas disponible sur windows Vista, Vanilla s´arretant à la 1.4. Mais mes sources datent un peu peut etre, vu les changements qu´ils ont fait sur cet OS..)

Non il n´est pas aisé de faire un portage (car il s´agit de réecrire le shader, la conversion est imho inenvisageable avec un tool) du HLSL vers GLSL, les APIs étant différentes. Les gens capables de le faire sont déja bien avancé. Il existe quelques outils pour tuner ses shaders et aussi rapprocher le travail du programmeur et des artistes.

Pour ce qui est des différents effets, ce sont des détails, la plupart liés a une technologie spécifique ou sa mise a jour, au sein des GPUs. Je me souviens avoir vu un explicatif des différents effets sur la page de Nvidia. Sans doute pour dévoiler les features du NVSDK, regarde par là bas.

La doc francophone est peu reluisante, mais de la bonne doc, ce n´est jamais vraiment en francais ;) Donc sur un sujet aussi pointu que les technologies graphiques innovantes tout les six mois..

Il y a des gens qui s´y connaissent en shader içi. Des professionnels du milieu même. Ils posteront pour me rectifier, completer et eventuellement répondre a d´autres de tes questions.

/0xff

kufa
kufa
Niveau 9
05 septembre 2006 à 02:10:49

d´ailleurs le Cg est un peu abandonné pour ainsi dire, il se fait ´vieux´.

Oui et non, Cg est (malheureusement) encore utilise sur par exemple des consoles next gen..

Porter du HLSL vers du GLSL n´est pas si complique, mais necessite d etre bien a l´aise avec les shaders. Des optimis seront necessaires, rien de tres nouveau. nvshaderperf est la pour aider, mais bon idealement les optimisations se font par famille de carte gfx.

Quelle est la différence entre RELIEF mapping et PARALLAX mapping ?

J´avais fait une belle explication, mais mon firefox a plante donc tu vas devoir te contenter d´une version grossierement resumee et simplifiee, sauf si je trouve plus de motiv demain (ou si lgv poste avant moi).
Le parallax mapping, aussi appele offset mapping, consiste a offseter tes coordonnes textures par un vecteur dont la norme depends d´une heightmap, et dont la direction depends de la camera. Tes polygones resteront tjs plats, et cela necessite une hightmap en low frequencies (des petits changements).
L´offset mapping simule ce qui est vu par la camera via un raytracing (houla c est bien simplifie mais au moins tu vois la difference), et permet le relief meme lorsque la normale a un point est perpendiculaire a la view direction.

Quelle est la différence entre Shadow mapping et shadow volume

Le shadow mapping est tres simple (et la methode utilisee sur amiga :p) : tu rends ta scene vue de ta light, tu a besoin que du depth buffer que tu utilises alors comme une texture (shadow map), elle meme projetee sur la scene. Cette shadow map defini les zones lumineuses et d ombre de ta scene, tu n as qu une comparaison a faire entre le z de la shadow map projetee et celui de ton pixel a rendre.
Les shadow volumes quand a eux necessite la creation de silhouettes des occluders pour chaque light. Ensuite le rendu se fait en deux pass: d abord tu determine ce qui est dans de l´ombre ou pas en utilisant le stencil et en ne rendant que les front faces (avec le stencil qui s incremente pour un z fail) puis les back faces (avec les stencil qui se decremente pour un z fail) des shadows volumes. La deuxieme pass consiste a rendre la scene pour les pixels qui ont un stencil a 0.

Bon j espere que j ai pas ete trop vague, mais j ai essaye de simplifier mes explications, et j espere que je n ai pas ete trop complique par rapport au poste original.

Pseudo supprimé
Pseudo supprimé 05 septembre 2006 à 07:29:52

tout d´abord merci pour vos réponses.
Gollumkawder jte remercis pour tes précisions sur les différents languages de shaders et comme le dit kufa, le cg sera utiliser sur les prochaines consoles (PS3 d´après ce que j´ai lu)

Merci a toi aussi kufa, mai tu expliques le parallax mapping mais pas le relief mapping ?

Sinon je pense avoir compris la difference entre le shadow mapping et shadow volume :)
merci !

kufa
kufa
Niveau 9
05 septembre 2006 à 12:54:58

Le truc c est que ce n est pas si simple a expliquer (en francais, et sans dessins). Grosso modo lorsque tu fais du relief mapping, pour chaque pixel tu raytrace le rayon de la camera pour determiner son interesection avec la heightmap.

LGV
LGV
Niveau 28
05 septembre 2006 à 14:46:24

petit passage en coup de vent ; je precise qu´on est au stade de l´arrivee des "geometry shaders" : depuis l´arrivee du "vertex texture fetch", on peut iterer au sein du GPU entre vertex et pixel units. Le vrai displacement mapping est a l´oeuvre..

gollumkawder
gollumkawder
Niveau 10
05 septembre 2006 à 20:47:58

J´avais oublié que la demo technique de la ps3 etait a base de Cg =( my bad. Comme j´ai arreté de zieuter ça avant les consoles next²-gen, je savais pas qu´ils avaient repris le flambeau pour les consoles. Le Cg est cool parcequ´il ne détermine pas ton API (sauf recent changement).

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