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

Rapels de 3D (HLSL, Cg)

BumpMANN
BumpMANN
Niveau 5
04 août 2003 à 17:32:28

rapels basé sur le hlsl,Cg ( language c, a peu pres)

produit scalaire de deux vecteurs ( dot product),
dot(v1,v2) correspond à v1.x * v2.x + v1.y * v2.y

longueur d´un vecteur ( théorème de pythagore):
length(v) correspond à sqr(dot(v,v))

normalisation d´un vecteur ( que sa longueur soit de 1 unité) :
normalize(v) correspond à v/sqr(dot(v,v)) donc
v/length(v)

Le demi-angle:
le vecteur " bissectrice" ( pour les vecteurs, il me semble que ca ne se dit pas :nonnon: )
demiangle = v1 + v2
aussi con que ca!

la lumière diffuse ( lumiere directionelle):
diff = max(0,dot(IN.normal,lightdir));

la lumière diffuse ( lumiere omnidirectionelle):
lightdir = normalize(lightpos - IN.position);
diff = max(0,dot(IN.normal,lightdir));

la lumiere speculaire ( en connaissant lightdir):
camdir = normalize(campos - IN.position);
demiangle = normalize(camdir + lightdir);
specnp = max(0,dot(IN.normal, demiangle));
spec = pow(specnp,intensite);

le simple effet de lumiere:
on cherche l´intensité de la diffuse et du speculaire dans le vertexshader, qu´on multiplie par les composants des materiaux utilisés ( ca donne une couleur), et cette couleur est automatiquement interpolée pour le pixelshader.

le phong shading, effet de lumiere avancé:
au lieu de donner la couleur du vertex, on donne la normale ! ! celle ci est interpolée de la même facon que la couleur. c´est donc dans le pixel shader que l´on calcule la lumiere ! ainsi la lumiere est calculée au pixel pres! mais seul les possédeurs d´une carte graphique ayant pas mal de registres ( supportant le directx 9 en général, donc radeon 9500 ou +, geforce fx) pourront se créer cette sublimitude :ok: malheureusement pour moi, je n´ai qu´une radeon 9000... du manque de registres, je n´ai pu faire que le phong de la diffuse... :snif:

n´oubliez pas que vous avez les fonctions reflect et refract pour la réflection et réfraction... tres utile.

Je pense que j´ai fait le tour...
ca a été utile ?

BumpMANN
BumpMANN
Niveau 5
04 août 2003 à 17:39:02

note pour le phong shading:
dans le pixelshader n´oubliez pas de normaliser la normale obtenue, car l´interpolation utilisée est linéaire et non pas sphérique. donc, en gros, ce ne serait pas aussi bien! :lol:

BumpMANN
BumpMANN
Niveau 5
04 août 2003 à 18:40:14

ouiiiiiiiiiiiiin :snif: :snif: :snif: :snif: :snif:
mon topic est submergé par les autres ! !
:snif: :snif: :snif: :snif:

metaball
metaball
Niveau 1
04 août 2003 à 19:35:03

Ouais trop bien ! !!!!!!!!

[c-plus-plus]
[c-plus-plus]
Niveau 2
04 août 2003 à 19:43:18

ouais tout a faire mais tu
as oublier de parler de la
modélisation vectoriel
de la modelisation par macro morphing
et du hight Feed Map tres important
pour le Bump Mapp

BumpMANN
BumpMANN
Niveau 5
04 août 2003 à 20:20:21

hihihi! arrêtes de dire des conneries! :lol:
néanmoins c´est vrai que j´aurais pu rappeler le bumpmapping !

Lightness1024
Lightness1024
Niveau 10
04 août 2003 à 20:45:12

demiangle = v1 + v2
un angle ce n´est pas un vecteur, ce calcul est insensé.

BumpMANN
BumpMANN
Niveau 5
04 août 2003 à 23:12:26

le vecteur " bissectrice" ( pour les vecteurs, il me semble que ca ne se dit pas )

Je reprend cette phrase pour te dire que je ne parlais pas de la moitié de l´angle mais de la " bissectrice".

v3 = v1 + v2
l´angle entre v1 et v3 sera le même que celui entre v3 et v2.

C´est la variable " demiangle" qui te dérangait? :sarcastic:

BumpMANN
BumpMANN
Niveau 5
06 août 2003 à 06:06:42

A propos de tout ca, y´en a qui travaillent dur sur le HLSL? qui ont vu le rélectif-réfractif-bump-anisotropique ( avec fresnel biensur) ? ^^
hihihi! je blague! ( c compliqué mais pas impossible!)
Tout ca avec un motion blur biensur!

heuuu serieux y´en a qui connaissent bien?

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