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

openGL & ombres

bobkillerTRUE
bobkillerTRUE
Niveau 5
18 janvier 2004 à 12:41:57

Oyo :-)
Voilà g un petit pb, je veux créer les ombres projetées par openGL. Je suis donc allé voir des infos sur le site de Nvidia. Là bas g trouvé mon bonheur : matrice de projection des ombres ! Bon le résultat est trés bon : ombres bien projetées, mais la couleur de l ombre est tte à fait foireuse, elle est la même que l objet projeté :snif2: . Pourtant g essayé de respecter au mieux leurs codes. SVP de l aide ! dites moi ce qui foire ds ce code :

/ / pour dessiner l ombre
GLvoid Shadows()
{
glDisable(GL_DEPTH_TEST);
glColorMask(GL_FALSE, GL_FALSE, GL_FALSE, GL_FALSE);

glEnable(GL_STENCIL_TEST);
glStencilOp(GL_REPLACE, GL_REPLACE, GL_REPLACE);
glStencilFunc(GL_ALWAYS, 1, 0xffffffff);
glCallList(Lists_OpenGL[0]); / / le sol
glColorMask(GL_TRUE, GL_TRUE, GL_TRUE, GL_TRUE);
glEnable(GL_DEPTH_TEST);
glDisable(GL_STENCIL_TEST);

glCallList(Lists_OpenGL[0]); / / le sol

glEnable(GL_STENCIL_TEST);
glStencilFunc(GL_ALWAYS, 2, 0xffffffff);
glStencilOp(GL_KEEP, GL_KEEP, GL_REPLACE);
SCENE(); / / les objets de la scenes

// points du plan pour calculer son équation
float vfloor1[]={ -5.0,-0.5,-5.0 };
float vfloor2[]={ -5.0,-0.5,5.0 };
float vfloor3[]={ 5.0,-0.5,-5.0 };

// on trouve l équation du plan
findPlane(floorPlane, vfloor1, vfloor2, vfloor3);
// a calcule la matrice de projection
shadowMatrix(floorShadow, floorPlane, lightZeroPosition);

glStencilFunc(GL_EQUAL, 1, 0xffffffff); / * draw if ==1 */
glStencilOp(GL_KEEP, GL_KEEP, GL_INCR);
glEnable(GL_BLEND);
glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
glDisable(GL_LIGHTING);
glDisable(GL_DEPTH_TEST);
glColor4f(0.0, 0.0, 0.0, 0.5); / / doit etre la couleur de l ombre

glPushMatrix();
glMultMatrixf((GLfloat *) floorShadow); / / on applique la matrice pour projeter les ombres
SCENE();// dessin des objets
glPopMatrix();

glEnable(GL_DEPTH_TEST);
glDisable(GL_STENCIL_TEST);
}

bobkillerTRUE
bobkillerTRUE
Niveau 5
18 janvier 2004 à 15:33:04

c bon pas besoin de répondre g résolut mon pb :ok:

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