cs_bdufay
Messages postés11Date d'inscriptionmercredi 13 mars 2002StatutMembreDernière intervention29 mars 2006 10 nov. 2005 à 14:33
Fantastique. Très utile pour moi.
Faut que je l'étudie...
Bravo VB Lover!
Saros
Messages postés921Date d'inscriptionvendredi 20 décembre 2002StatutMembreDernière intervention23 septembre 2010 30 oct. 2005 à 11:32
Magnifique :)
TheTiger
Messages postés89Date d'inscriptionmercredi 2 avril 2003StatutMembreDernière intervention 2 novembre 2010 10 mai 2004 à 18:21
je cherche des sites ou des documents par le quel je pourais trouver toute sorte d'alguo permetant de détermineur l'intersection entre un ray et toute sorte objets :)
Vb Lover
Messages postés221Date d'inscriptionvendredi 30 novembre 2001StatutMembreDernière intervention13 février 20105 6 janv. 2004 à 21:02
Pour Geff :
merci déjà pour ton message.
sinon
- Je vais regarder les textures procédurales, ça a l'air sympa. Je vais aussi mettre les mappings en mémoire, et pas dans des pctBox
- Pour la radiosité : en fait, c'était l'intention première de faire un programme de radiosité. Je me suis (beaucoup) renseigné, j'ai même lu une thèse assez mathématique dessus. Juste une remarque : l'idée principale est d'utiliser la nature ondulatoire de la lumière, pas sa nature corpusculaire (photons) ...
- Pour les optimisations : merci de tes conseils, mais en gros je pensais déjà faire tout ça quand j'aurai le temps. Je crois avoir écris plusieurs fois que le code était complètement en travaux, qu'aucune optimisation avait été faite, que seuls les concepts avaient été programmés.
mais merci encore, et j'irai voir ton programme :)
cs_Geff
Messages postés192Date d'inscriptionvendredi 2 mars 2001StatutMembreDernière intervention10 janvier 2006 6 janv. 2004 à 03:55
Arf je vais passer pour un trouble fête mais bon :p
La qualité du rendu est là, mais la rapidité par compte absolument pas! Bien evidement cela viens en grande partie de notre langage adorée ( VB ) Cependant tu pourrais accélérer le rendu assez simplement par exemple en englobant tous tes objets dans des boites et en testant l'interesection entre le rayon et la boite, si le test est positif tu test l'intersection avec l'objet! Pour l'instant cela ne vaut pas le coup car les objets proposé pour l'instant ne sont pas très complexes, mais peut etre que cela pourras te servir plus tard!
J'ai moi meme développé un Raytracer cet été en VB.net puis C# histoire de m'initier a la teknologie .net, un exemple ::
http://geffd.free.fr/Coding/Ray6.jpg Comme tu le vois j'ai ajouté des textures procédurales (Perlin Noise) qui agissent comme une texture acide, c plutot sympa comme effet et pas très compliqué à implanter, tu peux ainsi créer des toutes pièces des texture type Bois, Marbre, Nuages, Bruit etc...
Tu pourrais rajouter les modèles facettés aussi
Ce qui fait un très bon rendu Raytracing (proche de la réalité) c'est la radiosité, renseigne toi a propos du photon mapping, en gros pour faire simple chaque lumière envoi une série de photons et ceux-ci se réfléchissent sur les objets de la scène et se répartissent un peu partout dans la scène, ensuite au moment du Raytracing, tu regardes la concentration de photons a l'endroit de l'intersection et cela te donne l'illumination en ce point, ca te permet d'avoir un effet moins net au niveau des ombres donc plus réel, les objets réfractants permettent aussi de créer des tâches caustiques (du plus bel effet!) et bien sur ta scène dispose ainsi d'un systeme d'éclairage très proche de la réalité physique! Bien entendu il vaut mieux passer à un autre langage que le VB pour ce genre de chose!
J'ai ajouté un autre type d'optimisation a mon moteur, je pense que ca pourrais booster carrément ton Raytracer si tu décides de l'implanter, voila l'idée ::
Chaqun des objets de la scène dispose d'une AABB (Axis Aligned Bounding Box) ce sont les boites dont j'ai parlé tout a l'heure, tu calcules le projeté de ces boites sur l'écran de la caméra (normalement le foyer de la caméra est le foyer de chaque rayon et l'écran de la caméra est quant à lui la surface a travers laquelle on voit l'image) (je sais pas si c très clair :p) donc après avoir calculé le projeté de ces points (qui se situent donc tous dans le meme plan) tu calcules le rectangle englobant ces points, et hop! magie plus besoin de lancer le rayon pour chaque pixel de ton image! Tu lances le rayon unikement si au moins un objet est sur sa route (en gros si le pixel est contenu d'en au moins un rectangle)! Ensuite si le rayon est lancé tu ne calcules alors que l'intersection entre le rayon et la liste d'objets dont le pixel appartient au rectangle projeté
Voila pour ce post un peu long! sur ce bonne continuation, vé me coucher :D
GEFF
punchy12
Messages postés2Date d'inscriptiondimanche 11 mai 2003StatutMembreDernière intervention 4 janvier 2004 4 janv. 2004 à 21:54
J’ai encore jamais vu ça sous Vb!
Bravo et continu comme ça!
20 / 20 Mention Excelent!
MATHEMAGICIEN
Messages postés2Date d'inscriptionlundi 25 novembre 2002StatutMembreDernière intervention14 mars 2004 25 déc. 2003 à 19:57
Mmm, je dirais même plus : bravo !
cs_jp50
Messages postés45Date d'inscriptionsamedi 14 avril 2001StatutMembreDernière intervention 3 janvier 2008 24 déc. 2003 à 05:35
Très impressionnant, même 3DS max n'arrive pas à faire aussi bon et rapide.
cs_jp50
Messages postés45Date d'inscriptionsamedi 14 avril 2001StatutMembreDernière intervention 3 janvier 2008 24 déc. 2003 à 05:29
Vraiment super, mais tu devrais mettre les 2 images en autoredraw ca empecherais la boule de ne pas être remplie en bas
Vb Lover
Messages postés221Date d'inscriptionvendredi 30 novembre 2001StatutMembreDernière intervention13 février 20105 23 déc. 2003 à 23:21
Pour les optimisations, merci, mais vous en faites pas, ça va arriver ! Je vous rappelle que j'ai mis le code qui n'est pas encore (mais alors vraiment pas) définitif.
Je vais effectivement améliorer les mapping, j'ai déjà programmé les polyèdres (cubes en particulier), je vais faire les cônes et autres formes géométriques, et je suis en train de réfléchir à un concept de bumping... bref, y'a du boulot !
Bonnes Fêtes de Noël à tous, et profitez-en pour faire une pause dans la programmation :)
MoiOlivier
Messages postés172Date d'inscriptionmardi 15 juillet 2003StatutMembreDernière intervention 4 août 2005 23 déc. 2003 à 18:32
Alors là, je suis sur le cul !
Terrible, magnifique. 10/10.
Deux petites remarques : pour optimiser, tu devrais placer les textures dans un buffer (cf. l'API GetDIBits), ça irait beaucoup plus vite que la fonction Point.
Et il faudrait ne rafraichir l'image tracée que tous les x pixels ou toutes les lignes, on gagne ainsi du temps perdu en affichage.
Sinon, bravo ! Chapeau bas !
cs_moustachu
Messages postés1079Date d'inscriptionjeudi 14 novembre 2002StatutMembreDernière intervention 1 janvier 2012 23 déc. 2003 à 10:25
Houlà... j'ai pas tout compris comment ça marche mais ça me plait.
Je vais me pencher dans le code un de ces quatre pour voir tout ça mais ça a l'air du bon boulot
Bravo
++
Moustachu
crenaud76
Messages postés4172Date d'inscriptionmercredi 30 juillet 2003StatutMembreDernière intervention 9 juin 200628 23 déc. 2003 à 09:32
Alors la !!! Etant un programmeur VB depuis longtemps et un amateur des logiciels de Raytracing, je dis chapeau monsieur !!!
Un boulot magnifique et qui est d'une éfficacité terrible, au vu de l'image rendu !
CA FORCE LE RESPECT ! En plus, à lire ton code, on a l'impression que c'est sortit tout seul, mais à mon avis tu as du bien bosser sur le sujet !! Je te tire mon chapeau et te met 10/10, car 20/10 n'était pas disponible !!!
Encore bravo !!!!!
cs_Kirua
Messages postés3006Date d'inscriptiondimanche 14 avril 2002StatutMembreDernière intervention31 décembre 2008 23 déc. 2003 à 02:02
bravo :-) et maintenant passe vite au C++ avec que le VB ne meurt définitivement.
10 nov. 2005 à 14:33
Faut que je l'étudie...
Bravo VB Lover!
30 oct. 2005 à 11:32
10 mai 2004 à 18:21
6 janv. 2004 à 21:02
merci déjà pour ton message.
sinon
- Je vais regarder les textures procédurales, ça a l'air sympa. Je vais aussi mettre les mappings en mémoire, et pas dans des pctBox
- Pour la radiosité : en fait, c'était l'intention première de faire un programme de radiosité. Je me suis (beaucoup) renseigné, j'ai même lu une thèse assez mathématique dessus. Juste une remarque : l'idée principale est d'utiliser la nature ondulatoire de la lumière, pas sa nature corpusculaire (photons) ...
- Pour les optimisations : merci de tes conseils, mais en gros je pensais déjà faire tout ça quand j'aurai le temps. Je crois avoir écris plusieurs fois que le code était complètement en travaux, qu'aucune optimisation avait été faite, que seuls les concepts avaient été programmés.
mais merci encore, et j'irai voir ton programme :)
6 janv. 2004 à 03:55
La qualité du rendu est là, mais la rapidité par compte absolument pas! Bien evidement cela viens en grande partie de notre langage adorée ( VB ) Cependant tu pourrais accélérer le rendu assez simplement par exemple en englobant tous tes objets dans des boites et en testant l'interesection entre le rayon et la boite, si le test est positif tu test l'intersection avec l'objet! Pour l'instant cela ne vaut pas le coup car les objets proposé pour l'instant ne sont pas très complexes, mais peut etre que cela pourras te servir plus tard!
J'ai moi meme développé un Raytracer cet été en VB.net puis C# histoire de m'initier a la teknologie .net, un exemple ::
http://geffd.free.fr/Coding/Ray6.jpg
Comme tu le vois j'ai ajouté des textures procédurales (Perlin Noise) qui agissent comme une texture acide, c plutot sympa comme effet et pas très compliqué à implanter, tu peux ainsi créer des toutes pièces des texture type Bois, Marbre, Nuages, Bruit etc...
Tu pourrais rajouter les modèles facettés aussi
Ce qui fait un très bon rendu Raytracing (proche de la réalité) c'est la radiosité, renseigne toi a propos du photon mapping, en gros pour faire simple chaque lumière envoi une série de photons et ceux-ci se réfléchissent sur les objets de la scène et se répartissent un peu partout dans la scène, ensuite au moment du Raytracing, tu regardes la concentration de photons a l'endroit de l'intersection et cela te donne l'illumination en ce point, ca te permet d'avoir un effet moins net au niveau des ombres donc plus réel, les objets réfractants permettent aussi de créer des tâches caustiques (du plus bel effet!) et bien sur ta scène dispose ainsi d'un systeme d'éclairage très proche de la réalité physique! Bien entendu il vaut mieux passer à un autre langage que le VB pour ce genre de chose!
J'ai ajouté un autre type d'optimisation a mon moteur, je pense que ca pourrais booster carrément ton Raytracer si tu décides de l'implanter, voila l'idée ::
Chaqun des objets de la scène dispose d'une AABB (Axis Aligned Bounding Box) ce sont les boites dont j'ai parlé tout a l'heure, tu calcules le projeté de ces boites sur l'écran de la caméra (normalement le foyer de la caméra est le foyer de chaque rayon et l'écran de la caméra est quant à lui la surface a travers laquelle on voit l'image) (je sais pas si c très clair :p) donc après avoir calculé le projeté de ces points (qui se situent donc tous dans le meme plan) tu calcules le rectangle englobant ces points, et hop! magie plus besoin de lancer le rayon pour chaque pixel de ton image! Tu lances le rayon unikement si au moins un objet est sur sa route (en gros si le pixel est contenu d'en au moins un rectangle)! Ensuite si le rayon est lancé tu ne calcules alors que l'intersection entre le rayon et la liste d'objets dont le pixel appartient au rectangle projeté
Voila pour ce post un peu long! sur ce bonne continuation, vé me coucher :D
GEFF
4 janv. 2004 à 21:54
Bravo et continu comme ça!
20 / 20 Mention Excelent!
25 déc. 2003 à 19:57
24 déc. 2003 à 05:35
24 déc. 2003 à 05:29
23 déc. 2003 à 23:21
Je vais effectivement améliorer les mapping, j'ai déjà programmé les polyèdres (cubes en particulier), je vais faire les cônes et autres formes géométriques, et je suis en train de réfléchir à un concept de bumping... bref, y'a du boulot !
Bonnes Fêtes de Noël à tous, et profitez-en pour faire une pause dans la programmation :)
23 déc. 2003 à 18:32
Terrible, magnifique. 10/10.
Deux petites remarques : pour optimiser, tu devrais placer les textures dans un buffer (cf. l'API GetDIBits), ça irait beaucoup plus vite que la fonction Point.
Et il faudrait ne rafraichir l'image tracée que tous les x pixels ou toutes les lignes, on gagne ainsi du temps perdu en affichage.
Sinon, bravo ! Chapeau bas !
23 déc. 2003 à 10:25
Je vais me pencher dans le code un de ces quatre pour voir tout ça mais ça a l'air du bon boulot
Bravo
++
Moustachu
23 déc. 2003 à 09:32
Un boulot magnifique et qui est d'une éfficacité terrible, au vu de l'image rendu !
CA FORCE LE RESPECT ! En plus, à lire ton code, on a l'impression que c'est sortit tout seul, mais à mon avis tu as du bien bosser sur le sujet !! Je te tire mon chapeau et te met 10/10, car 20/10 n'était pas disponible !!!
Encore bravo !!!!!
23 déc. 2003 à 02:02
le ray tracing c'est c'est wow qd même ^^