Blog

  • May 5 2006

    Depth buffers the gritty details

    Do you want to know why your app has z-fighting even when you’re using a 24 bits zbuffer in your 3D app ? Or are you interested to know what is the internal representation of a Z-Buffer and aren’t afraid of the gritty details ? Then read the following : The depth buffer the gritty details.

    Read More

  • Apr 29 2006

    La formule du yield (microprocesseurs)

    Si vous vous intéressez un peu au monde de l’électronique vous avez peut-être entendu parler du terme “yield” employé pour les microprocesseurs. Ce terme qui signifie en gros, le pourcentage de processeurs fonctionnant correctement rapporté à la capacité théorique de la ligne de production. Ce que je vais explorer ici, ce sont les modèles théoriques qui permettent de le calculer, les raisons des malfonctions et leur influence sur le coût d’un processeur.

    Read More

  • Apr 5 2006

    Direct3D 10 du changement en perspective

    Alors ce futur Direct3D 10, révolution ou évolution ?

    Scoop : la version 10 de direct3d ne va pas révolutionner le gameplay des jeux. Mais ce n’est pas trés important puisque cette nouvelle release est entièrement et uniquement dédiée au graphisme ! Avec un peu de chance vous jouerez toujours aux mêmes FPS sous de nouveaux noms l’an prochain ;). Ce qui suit va donc uniquement parler du côté technique des jeux. Pour les tests, il y a les sites spécialisés.

    Read More

  • Jan 4 2006

    High Dynamic Range

    Si vous avez suivi l’actualité du jeu vidéo, vous avez probablement entendu parler du rendu HDR, autrement traduit de manière barbare en français par rendu à grande gamme dynamique. Comme dans la phrase suivante : “La prochaine génération utilisera à fond le HDR, il y a aura du blooming et des lens flares et des effets de lumière par pixel”. Pour la plupart des gens cela reste un beau charabia malgré l’importance que cela prendra bientôt dans le rendu des jeux en temps réel. Ce petit article tente de dédramatiser un peu tout cela en prenant appui sur la réalité™ pour démontrer/démonter ce qu’il est possible de faire et quels sont les ressources nécessaires. Je prends le point de vue du programmeur (le mien) ou de la personne qui n’est pas effrayée par la technique.

    Read More

  • Aug 23 2005

    A voxel engine design [oldskool]

    Here comes a short article (compared to the months long articles about raytracing) about the design of a voxel terrain engine that I conducted back in the days of 1999 : the main inspiration was the game Outcast which looked gorgeous at that time when polygons only started to become interesting.

    There have been some improvements since then, explanations on this page (in english): A voxel terrain engine design in C++


    Voxel terrain engine design in C++

    Le lien ci-dessus pointe vers un nouvel article, plutot court (comparé au marathon de plusieurs mois consacré au raytracing), consacré comme l’indique le titre au rendu de terrain par voxel. La principale source d’inspiration étant Outcast qui m’avait beaucoup impressionné par son rendu lorsque les polygones étaient encore balbutiants. Le design de ce moteur avait commencé en 1999. Vous pouvez lire l’article en français à l’adresse suivante : Design d’un moteur de terrain par voxel en C++.

    Read More

  • Aug 7 2005

    Raytracer en C++

    J’ai mis en ligne une série d’articles sur le raytracing, avec l’implémentation d’un exemple de raytracer en C++. Il s’agit d’une compilation de posts écrits sur les forums de hardware.fr et qui ont grandement bénéficié d’une remise en forme.
    Vous pouvez accéder à la première page (ainsi qu’aux suivantes) ici: Premier pas - raytracer en C++

    Les notions abordées sont aussi diverses que : balayage et écriture d’un fichier TGA, intersection rayon/sphère, lecture d’un fichier config, éclairage de lambert, phong, blinn-phong, correction gamma et format sRGB, formule de Snell-Descartes, formule de Fresnel, réfraction, réflexion, bump mapping, surfaces isopotentielles (blobs), texture d’environnement cubique, adressage cubique, filtrage bilinéaire, bruit de Perlin, textures procédurales, roulette russe, importance sampling, suréchantillonnage (oversampling et supersampling), loi de Beer, aberration chromatique, format HDR et tone mapping, profondeur de champ (depth of field), kd-tree, illumination globale, photon tracing/photon mapping, caustiques et interréflexions et un raton laveur.

    You can find on the link above an old article on the raytracing that I reformated for my main web page (it was originally published as a serie of posts on a discussion board). The articles and the source code comments are in french.

    Read More

  • Jul 13 2005

    Résolutions et ratio d'écran.

    On part généralement du principe que les pixels sont carrés une fois représentés à l’écran. Ce qui est généralement le cas lorsque l’on est dans la résolution native de cet écran. En pratique on pourrait proposer des options un peu plus avancées que ce qui existe à l’heure actuelle parce qu’il est parfois délicat d’avoir une résolution native qui reste jouable.

    Read More

  • Apr 25 2005

    Tri multicritère

    (drop the hyphen! comme dirait D. Knuth)

    Une question qui semble souvent bloquer sans raison les débutants en programmation est le tri sur plusieurs critères.

    Read More

  • Apr 19 2005

    Stéréovision

    I’m not sure what’s the equivalent name for stereoscopy when you have actually three (or more) different views. Anyway this project was called stéréovision and I struggled because it was my first project in C++. (I guess nowaday I would find it sooo easy to redo it).

    http://www.massal.net/article/stereovision.pdf (forgive the quality of the paper which is equally bad. I just keep it for curiosity purpose.)

    Je ne suis pas sûr qu’il y ait un mot différent pour trois vues différentes (ou plus) mais ce papier s’appelle stéréovision tout de même. Bien évidemment comme c’était mon premier vrai projet en C++, je me suis battu en même temps pour apprendre le langage (introduction à la STL et tout ça). J’imagine que si je le faisais aujourd’hui je trouverai tout cela tellement facile.. Le papier est gardé comme objet de curiosité principalement même s’il y a quelques idées à glaner si vous débutez.

    Read More

  • Apr 18 2005

    Bézier

    Voici mon premier article sur les courbes et surfaces de Bézier

    Here is my first article in the serie, about the Bezier curves and surfaces (in French)

    Read More