begin process at 2012 05 29 18:41:30
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

OpenGL

 > 

pb particules


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

pb particules

samedi 23 octobre 2004 à 23:16:21 | pb particules

Arnaud16022

Membre Club
salut, je suis en train de faire un moteur de particules; il est fini, mais seulement ,quand plusieurs particules se superposent ca fait un effet super bizarre, on voit le bord des carrés , qui sonttransparents, alors que l'intérieur est normal. c'est un peu dur a expliquer, j'autais bien mis un screenshot, mais multimania il refuse qu'on accede directement a un de ses fichiers :( grr...

il va de soi que je n'ai pas oublié les commandes
glEnable(GL_BLEND);glBlendFunc(GL_SRC_ALPHA,GL_ONE);
(cf source de CaptainPartGl), mais on peut pas dire que ça fasse grand chose (bon ca c'est pas tres juste, quand on le met pas on voit tous les carrés pas transparents du tout...)

Que diable faire?
voili voilou, merci, bonne soirée, et TRES bonnes vacances a ceux qui ont pas cours le samedi :)

++
Ad
mardi 26 octobre 2004 à 05:00:37 | Re : pb particules

zoom1984

Yo

Un classique.

Le problème c que tes particules écrivent dans le zbuffer même lorsque tu affiches un texel avec un alpha à 0 (complètement transparent). Donc les particules qui doivent s'afficher derrière seront clippées par le zbuffer. D'où l'effet bizarre.

Il faut que tu désactives l'écriture dans le zbuffer.

Je connais pas la fonction en OpenGL, mais si tu ne la trouves pas tout seul, un intégriste d'OpenGL va sûrement te renseigner.

a+
mardi 26 octobre 2004 à 11:35:03 | Re : pb particules

Arnaud16022

Membre Club
c'est
glDisable(GL_DEPTH);
je l'ai mise, et ca marchje...qd ya pas de fond derriere, pasque quand l'écran est noir ca marche impec, sinon les particules s'affichesmeme qd elles sont derriere un mur.
je pense que la meileur solution serait de tout afficher d'abord, puis de tester pour chaque particule si il faut l'afficher. Je sais comment obtenir la valeur du z-buffer en un point 2D, mais ma particule est en 3D, donc il me faudrait les coords de la particule en 2D et ca je sé pas faire

merci qd meme
Ad
mardi 26 octobre 2004 à 18:35:49 | Re : pb particules

zoom1984

Réponse acceptée !
Un moyen plus simple de faire, à mon avis :

Ne désactive pas le zbuffer mais trie tes particules en fonction de la distance au plan de la caméra ( de la plus lointaine à la plus proche ).

distance au plan de la caméra :

vec3 v0,v1;
float distance

v0 = camera.normale;
v1 = particule.position - camera.position;
distance = Produit_scalaire(v0,v1);


Pour un bon algorithme de tri, voir :
http://www.codercorner.com/RadixSortRevisited.htm

De manière générale, il ne vaut mieux pas relire le zbuffer ou le framebuffer, parce que ca peut être excessivement lent.

mardi 26 octobre 2004 à 19:22:33 | Re : pb particules

Arnaud16022

Membre Club
trop cool...on est heureux...encore 200 lignes de plus... ouééé...

ouin
un truc simple en openGL ca existe pas?

bon merci qd meme


Cette discussion est classée dans : pb, voit, gl, particules, carrés


Répondre à ce message

Sujets en rapport avec ce message

pb de textures sur objet 3ds [ par JoebarGlut ] Salut,J'utilise une librairie d'importation 3DS ke j'ai deja fait fonctionner avec des textures il a un moment.Depuis kelkes mois j'ai areté de progra pb [ par dadystar ] Bonjour,Quand je compile mon programme sur Unix , j'ai des erreurs: le compilateur ne reconnait pas les includes: GL/gl.h, GL/glu.h, GL/glut.h, window pb avec les rotations [ par ET29 ] Bonjour,je bute sur un petit pb de rotations :je voudrais faire pivoter une pyramide avec la souris autour des axes X et Y de l'ecran (soit horizontal PB avec msg d erreur [ par Rei91 ] Bonjour, je n'arrive pas a compiler un prg suite a ce message d erreur :[linker error] undefined reference to glutlnit.JE dois avoir une 20 aine de li Pb compilation avec opengl [ par vbclaude ] Bonsoir, j'ai un pb a la compil avec le fichier gl/gl.h qui est en include, j en'ai pas de probleme avec tous les fichiers a compiler.Voici les messag pb tansparence et rotation [ par jopop ] J'ai créé deux objets contenant des parties transparentes (alpha blending) que je paux faire tourner autours d'un axe à l'aide de la souris. La premiè pb de recuperation de ProjectionMatrix & ModelViewMatrix [ par serialtom ] bonjour a tous, je suis debutant en openGL je suis en train de me construire un viewer 3D j'ai fait ca dans une application basée sur MFC. Je rencon OpenGL et textures [ par Jackyzgood ] Bonjour à tous ! Maintenant que je commence à être à l'aise en SDL, je me suis dis : ça pourrait être bien de passer à l'OpenGL. J'ai suivis un tuto pb avec libxml2 [ par Shaina123 ] Bonjour, dans le cadre d'un projet, je dois lire un fichier xml et extraire des données de ce fichier. Je me suis lancé avec libxml2, je l'ai telecha Pb de compilateur ?? il ne genere pas le code ASM des parametres de ma fonction [ par darkpoulpo ] salut, voila mon soucis, j'ai une fonction déclarée comme tel : HRESULT WINAPI absent(char *code,CONST RECT* pSourceRect,CONST RECT* pDestRect){


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,328 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales