Le petit journal du pr0n

Benjamin GIGON's blog

Aller au contenu | Aller au menu | Aller à la recherche

Page [ 1 ] [ 2 ] [ 3 ] [ 4 ]

mardi 20 février 2007

Chérie! Chérie ... je crois que j'en ai mis partout :-(

Emil Persson est un canadien qui a du poil, Ooooh oui! beaucoup de poil.
Cet homme s'est fait un petit website qui possède -quelques- articles et codes sources ...
Franchement, si j'étais pas si chiant, je le classerais dans la catégorie "Best site -avec-des-poils-autours- 2007"

Juste pour vous faire un peu pleurer, quelques codes sources (OpenGL et .. malheureusement ... DirectX) a trouver dans ces pages : Humus fait de la 3D HidahiDahooooo!


- Domino
- Ambient aperture lighting
- Volumetric Fogging 2
- Dynamic lightmapping
- High Quality Texture Compression
- Dynamic branching 3
- Hair
- Infinite Terrain II

- Selective supersampling
- GameEngine2
- high dynamic range
- Alpha to coverage
- HSRBench
- AntiAlias
- Cel-shading
- Metaballs

- Depth of field II
- Light trail
- Soft shadows II
- Raytraced shadows
- Instancing
- Soft shadows
- Dynamic branching
- 3Dc texture compression format
- Fire2
- Volume Lightmapping
- Flag
- Cloth
- Portals
- Water
- Sketch
- Transparent shadowmapping
- Self shadowing bumpmapping
- Chess (mini-game)
- VolumetricLighting II
- Detail Preserving Simplification

- Glow (luv!)
- Phong illumination
- Soft coronas (Halo de lumière)
- Volumetric lighting
- Shadows that rocks

- StencilShadows
- Spectragon
- EMBM
- Dynamic volumetric lighting
- Motion blur (aka "Cinematic Effect")
- Shadows in fog
- Phong
- Volumetric fogging
- Dither
- Laplace

- Shadows that don't suck
- Sea
- Shadowed particles
- Perpixel spotlights
- Particle system
- Refractions and reflections














(Listing du 20 février 2007)

samedi 17 février 2007

[Quick Time Posting] Mention assez bien, M. Porquet

Parfois, au détour d'un site, je tombe sur des mémoires qui valent le coup d'oeil...

mardi 13 février 2007

« Robert, tu trouves pas Sean se la joue un peu depuis quelques temps ? »


Monan! Sean teste juste l'interface graphique de SkyNet avant sa mis-en-prod' le mois prochain :

Chromium :: A system for interactive rendering on clusters of workstations

Sacré Sean, toujours le dernier mot pour rire ...

Marty ! J'ai trouvé le convecteur temporel !

Parfois, on tombe sur des sites où on se dit que ces gens sont trèèèès trèèès radins.

Je suis tombé sur le site de l'ARTIS qui, comme son nom ne l'indique absolument pas, est un groupe travaillant sur l'Acquisition, la Représentation et la Transformation des Images de Synthèse.
Le projet ARTIS est une des équipes du laboratoire de GRAVIR/IMAG, une collaboration entre le CNRS, l'INRIA, l'INPG et l'UJF.

Non seulement, ils mettent à peine 1 ou 2 documentations - qui en plus sont de mauvaise qualité - mais ces gens ne travaillent qu'avec des logiciels propriétaires.

Et encore, je ne parle pas des travaux de recherche et de la documentation liée, quasi-inexistante !

Messieurs! c'est une honte, je ne vous félicite pas !

(Cliquez sur "Lire la suite" pour découvrir la liste des publications)

Lire la suite

vendredi 9 février 2007

« Mets-toi sur un pied et bouge le bras droit en cadence »



Loïc Dachary me surprendra toujours.
Voila que je le retrouve dans un projet open source touchant le milieu de la 3D-en-fondu-enchainé-et-éclair-magique.
Le projet, que je suivais de (très ?) loin depuis quelques temps, mérite quand même son importance.


Cal3D est une bibliothèque pour l'animation de personnage en 3D,
en utilisant le principe de squelette
.
(très utile quand on veut intégrer des personnages en mouvement dans son jeu ou environnement)


Le projet semblait abandonné, le site ressemblait à une maison en ruine.
J'avais donc rangé le lien dans un coin de mon bookmark...

Mais voilà, 2007 est là, et la bibliothèque Cal3D refait son entrée avec son habit de lumière.

Au menu ce soir, plein de bonnes choses :
- Fixbug et tout le tralala habituel (voir commit).
- Des vidéos de présentation.
- Une petite démo interactive.
- Plein de stuffs convis.
- Des packages binaires prêt-à-l'emploi pour Linux (Debian, Ubuntu, Fedora, ...).

- De la documentation à gogo :
    - Creating Cal3D Characters with 3D Studio MAX.
    - Le bien connu guide-utilisateurs.
    - Et l'illustre documentation sur l'API.

Bon, je sens que je vais faire une petite partie d'osselet !


Articles annexes:
    - GPWiki: OpenGL-Basic Bones System [M]
    - MD2 Format: Quake2 Mods
    - Blender: Make Armature

mercredi 31 janvier 2007

« Monsieur Mallory ! Nous sommes dans une nouvelle dimension ! »

Petit rappel des faits sur le système de coordonnées utilisé en OpenGL.
Je suis parfois étonné par le nombre de documentation qui n'y consacre pas plus de temps et d'explications.
Imprimez cette image sur votre rétine:
Le plus gros problème vient de l'axe des Z (profondeur);
Nous sommes bizarrement habitués à un axe +X vers la droite, un +Y vers le haut, et un +Z vers l'avant.
Mais, dans notre situation, ce n'est pas le cas: les +Z se prolongent dans notre direction (ou derrière nous si vous préférez).

Ainsi, lorsque vous affichez un visuel, la "caméra" sera positionnée aux coordonnées {0;0;0} et regardera vers l'axe des Z négatifs, et non des Z positifs.

Pour prendre une analogie basique, si vous vous mettez debout, les objets qui se trouveront en face de vous seront sur l'axe négatif des Z (profondeur), votre dos sur l'axe positif des Z, votre bras gauche sera sur l'axe des -X, votre bras droit, sur l'axe des +X, votre tête sur l'axe des +Y et vos pieds sur l'axe des -Y (et votre tronc est à l'origine).



Si vous placez un cube en {1;1;1}, celui-ci se trouvera irrémédiablement derrière la caméra !.

Par convenance, pas mal de programmeurs changent l'orientation de la caméra: Il la pointe vers l'axe des Z positifs.
Petit inconvénient alors: l'axe des X se retrouve inversé; les X positifs pointent donc maintenant vers la gauche.

N'oubliez pas: par défaut, l'axe des Z va du positif-proche au négatif-loin.

mardi 30 janvier 2007

J'aime lire le botin devant un bon feu de cheminée en hiver


Dans la section "ouaah! merde! j'ai ouvert un bouquin", je vais vous présenter deux livres.


Le premier est affiché comme étant LE livre référence en OpenGL: « OpenGL 1.2 » de Mason Woo, Jackie Neider, Tom Davis et Dave Shreiner (oui, ils sont beaucoup).
Autant vous le dire de suite: si vous voulez apprendre OpenGL, ne prenez pas ce bouquin.

Je sais qu'avec ces propos, je vais en choquer beaucoup, notamment chez les afficionados OpenGL, mais autant aller à l'essentiel.

Mon grief ne viendrait pas du contenu en lui-même - qui est plutôt consistant et bien documenté - mais plutôt sur l'architecture même du bouquin: il n'est pas didactique.
Pour ainsi dire, il m'est arrivé de mieux comprendre un paragraphe - en anglais - dans un autre bouquin traitant du même sujet, que dans ce livre.

En le lisant, j'ai l'impression d'avoir un "Précis & Concis" entre les mains (pour les gens qui ne connaissent pas, ce sont des mini-mini-livres sur un sujet bien particulier qui, en une ligne, décrivent quelque chose. Par exemple, pour un language de programmation, vous aurez, sur une ligne, la fonction, les arguments demandés et une courte description (avec un peu de chance, un exemple en bonus.track) ).

Son défaut est un classique dans la plupart des livres techniques: il ne démarre pas d'un concept simple, avec des primitives basiques pour arriver petit-à-petit à un niveau complexe.
L'auteur y mélange pas mal de choses dès le début au risque de perdre le lecteur débutant en cours de route.
(J'appelle cela "le syndrome de l'auteur technique classique", on a parfois l'impression que ces derniers essayent toujours de nous prouver quelque chose ... )

Concernant le livre en lui-même, le contenu est assez classique, on y débute avec nos premiers polygones, les couleurs, les textures, les NURBS, etc...
(Attention, je parle que du 1.2 à 1.4, je n'ai pas été amené à découvrir la version 2.0 du livre)

Malgré tout, je trouve que ce bouquin vieillit mal. (j'essayerai de voir un 2.0 pour savoir si les auteurs ont essayé une nouvelle approche, mais je doute, étant donné la succession 1.2 -> 1.4 très peu changeante)


    La table des matières :

- Introduction à OpenGL
- Gestion des états et dessin géométrique
- Visualisation (modélisation, transformation, cadrage, etc...)
- Les couleurs
- L'éclairage
- Le blending, lissage, fog et décalage de polygone
- Dessiner des pixels, des bitmaps, des polices et des images
- Application de texture
- Tampon d'image
- Fragmenteurs et quadriques
- Evaluateurs et NURBS
- Mode sélection et mode feedback
- Les extras ...




L'autre bouquin est « OpenGL, SuperBible, 3rd» de Richard Jr. Wright.

Un pavé de 1173 pages qui reprend les bases et explique les techniques plus touffues.

On part des concepts de base, on vous prévient que vous allez en baver, mais tout est fait en finesse pour que vous vous y retrouviez.
on vous présente chaque concept avec des schémas et de jolies explications; et chaque partie un peu obscure est suffisamment détaillée pour être comprise sans difficulté.
Pour cela l'auteur utilise les fameux schémas, les principes mathématiques (voire physiques) et un peu d'humour bien placé :-)

Pour ainsi dire, les concepts que je n'ai pas pu comprendre par le premier bouquin (voire même les documentations sur internet) sont d'une limpidité dans ce bouquin.

Avec cela, un joli CD tout beau, tout propre avec des samples portés sous Windows, MacOS ... et Linux. Oui, vous avez bien lu, les samples peuvent être compilés parfaitement sous Linux: ca fait plaisir à voir.

Contrairement au précédent livre, celui-ci présente les shaders, les techniques d'ombres (plus en détail), le cellshading, etc...

En gros, c'est une vraie mine d'or.
Petit bémol, une perte de 3 chapitres pour parler des spécificités OpenGL sur les plateformes Windows, MacOS et Linux: ces chapitres auraient pu servir à autres choses.
Ce n'est pas dramatique, en soit, mais je pense que d'autres éléments auraient pu être mis en avant. (comme le Depth-Of-Field par exemple)
Ah oui, élément important: c'est en anglais

EDIT: Deuxième petit bémol, l'utilisation trop-trop excessive de ses propres fonctions (qu'il appelle "GLtools"), on s'y perd un peu au final...


    La table des matières :

- Introduction to 3D Graphics and OpenGL
- Using OpenGL
- Drawing in space: Geometric Primitives and Buffers
- Geometric Transformations: The Pipeline
- Color, Materials and Lighting: The Basics (light, shadow, ...)
- More on colors and materials (blending, fog, accum buffer, color effect)
- Imaging with OpenGL
- Texture mapping: The basics (filtering, wrap, cartoons, mipmapping, ...)
- Texture mapping: beyond the basics (sec. color, anisotropic, texture compression, texture coordinate generation, multitexturing, texture combiners, ...)
- Curves and Surfaces (Bézier, NURBS, Tessellation, ...)
- It's All about the Pipeline: Faster geometry Throughput (vertex list, measuring performance, vertex arrays, ...)
- Interactive graphics (picking, feedback, markers, ...)
- OpenGL on Windows
- OpenGL on MacOSX
- OpenGL on Linux
- Buffer objects: it's your memory video memory, you manage it!
- Occlusion queries: why do more work than you need to ? (occlusion, bounding boxes, querying, ...)
- Depth Textures and Shadow (Light, shadow, shadow mapping, ...)
- Programmable pipeline (fixed vertex, fixed fragment, programmable vertex shaders, fixed func glue, programmable fragment shaders, shaders extensions: low & high level, ...)
- Low Level Shading (shaders, instructions, variables, I/O, queries & limits, options, ...)
- High Level Shading (shaders, variables, expressions, control flow, ...)
- Vertex shaders (lighting: diffuse, specular, improved specular; per-vertex fog, per-vertex point size, customized vertex transf., vertex blending, ...)
- Fragment shaders (color conv., image processing: blur, sharpen, dilation, erosion, edge detection; lighting diffuse and multiple, texture mapping, ...)




De mon point de vue, si l'anglais ne vous fait pas peur, prenez sans hésiter "OpenGL SuperBible", c'est pour moi un bon bouquin.
EDIT: Je reviens sur ma conclusion concernant le guide officiel OpenGL, il reste quand même assez pratique lorsqu'on souhaite approfondir quelques points dans certains domaines.
Je vous conseillerais, si vous avez les moyens, de prendre les deux malgré tout.


Les références :
OpenGL 1.2
Broché: 654 pages
Editeur : CampusPress (1 janvier 1999)      
Collection : CampusPress référence
Langue : Français
ISBN-10: 2744008419
ISBN-13: 978-2744008412
Ref. Amazon
OpenGL, SuperBible, 3rd Edition
Broché: 1173 pages
Editeur : Sams;
Édition : 3rd Bk&Cdr (juin 2004)
Langue: Anglais
ISBN-10: 0672326019
ISBN-13: 978-0672326011
Ref. Amazon

jeudi 18 janvier 2007

« C'est Jack Bauer le coupable ! »

Alors que je conversais convivialement avec mon alcolyte Franck, alias Zedprime d'Unreal.fr, ce dernier s'est mis à s'exclamer "ooooh!! j'ai un truc à te montrer !"
Sur le coup, j'ai cru à une proposition malsaine de sa part, une tentative de persécution de mon derrière, et cela autour d'un café en plus !.

Que nenni: Ce qu'il me montra me fit bien plus peur.

Pour une rapide description, c'est un procédé de synthétisation des visages se basant sur certains points de contrôle.
Je vous conseille de le regarder jusqu'au bout, le début est certes bien, mais pas extraordinaire (on imagine le procédé assez rapidement), c'est surtout à partir du milieu de la vidéo que cela commence à véritablement devenir flippant.


Bizarrement, je vois déjà des applications dans le cinéma - en premier temps, dans le jeu-video - of course, mais aussi ... pour la manipulation d'image.

La célèbre phrase « Vous croyez toujours ce qu'on vous dit à la télévision, bonsoir » [1] n'en devient que plus réel au fur-et-à-mesure du temps.

vendredi 5 janvier 2007

Mip Mip !!!! *vroooommmmtexturing*

Rapide post pour présenter un article nous montrant l'utilisation de glText* (OpenGL Textures) avec différents paramètres.
FlipCode:: Advanced GL Texturing [M]

Source: FlipCode Articles

EDIT: Et ca, c'est cado-bonus-noyel: OpenGL : les textures (une bonne entrée en matière sur les textures)
Et Le cours de GLinFrench sur le texturing OpenGL

lundi 11 décembre 2006

[History] En direct de Muflin, dans les studios de Grotendo.

Un article très intéressant sur l'histoire du développement de Zelda:Ocarina Of Time, sortie 1998 sur Nintendo 64.

On y apprend plein de chose interessant comme notamment que la base du moteur 3D de Zelda64 est celui de Super Mario Bros 64 et que les développeurs ont rajoutés plein de belles choses autour, avec des poils de Wukka, des pancartes hyruliennes et des herbes vertes "smoothés" de la forêt du nord

On peut aussi y apercevoir les graphismes des débuts, les petites notes de développement, etc...

Les JMJ 2007 dans le jardin magique - Session #2

Le conteur venu du désert de Mourryie a poursuivit le récit légendaire du chevalier GL et de son voyage initatique vers le lac de Braraah.
Chapitre 2: Le chevalier GL dans la grotte de Moldav

Note: Le conteur étant un peu fatigué par sa longue marche dans le désert, quelques éléments du récit peuvent ne pas être très-très clair.
Note2: Le cours débute à 13h00

jeudi 7 décembre 2006

De l'importance de dessiner dans l'ordre


Petit exemple de deux morceaux de code gérant la transparence et montrant l'importance de dessiner dans l'ordre: du lointain (far) vers le proche (near).
La seule différence entre les deux codes se situe au moment où l'on "dessine" le gros cube.

Dans "good_draw", le cube est dessiné en dernier (far), l'ensemble des objets dans la scène sont visibles à travers le gros cube.
Tandis que dans le "wrong_draw", le gros cube est dessiné après la sphère: elle est la seule à disparaître de la scène lorsqu'elle passe derrière le gros cube.

Page [ 1 ] [ 2 ] [ 3 ] [ 4 ]