Voxel

Un article de Wikipédia, l'encyclopédie libre.
Aller à : navigation, rechercher
Schématisation d'une matrice de voxels en nuances de gris.
Une série de voxels dans une pile avec un seul boxel marqué

Le voxel (contraction de « volumetric pixel ») est un pixel en 3D. Le voxel est un terme nettement plus souvent utilisé que son synonyme, le boxel. Il consiste à stocker une information colorimétrique avec ses coordonnées spatiales, voire temporelles, de positionnement ainsi que, facultativement, une taille relative à l'unité utilisée ou d'autres informations telles qu'une matière… Ils s'inscrivent plus généralement dans des espaces matriciels bien que les espaces vectoriels leur soient favorables. On notera que leurs coordonnées spatiales peuvent être polaires.

Leur point faible (par rapport à la 3D vectorielle) est de nécessiter énormément de ressources, tant pour leur stockage que pour leur rendu. Cependant, des algorithmes de compression traditionnels à l'imagerie numérique ou l'informatique peuvent être employés sans difficulté.

Différence entre voxel et boxel[modifier | modifier le code]

Le terme « boxel » dérive du terme anglais box, qui signifie « boite ». Ils constituent une sous-catégorie des voxels. Le terme « voxel » est donc plus généraliste que le terme « boxel » et l'on distinguera alors l'aspect vectoriel des voxels en opposition à l'aspect matriciel des boxels.

Un boxel n'est rien d'autre qu'un pixel volumique matriciel. Sa représentation basique se fera donc sous la forme d'un cube au sein d'une matrice (i.e., d'une grille) tridimensionnelle (i.e., en 3D). Cependant, diverses techniques de rendu permettent d'en arrondir les angles selon la nature des boxels adjacents (à la manière des metaballs). Ils sont généralement associés à des octrees pour leur manipulation et leur stockage (bien que ceci ne constitue en rien une obligation).

Néanmoins, la nuance entre ces deux termes n'est pas réellement factuelle. En effet, la plupart des moteurs utilisant des voxels utilisent en réalité des boxels, et comme les boxels sont des voxels, on utilisera plutôt le terme de « boxel » dans le langage usuel pour faire référence à une méthode de traitement matricielle en opposition aux techniques vectorielles.

Cette différence n'est de fait pas réellement pertinente car les diverses techniques (de stockage, de manipulation, de rasterisation, de rendu, etc.) sont souvent mixées et cumulées.

Par exemple, rien n'empêche de rendre graphiquement un voxel vectoriel avec les techniques utilisés par les boxels, c'est-à-dire, dans un espace matriciel via l'utilisation du Wu-Pixeling appliqué aux espaces matriciels tridimensionnels. Ceci consiste juste à transposer les coordonnées vectorielles du voxel dans un espace matriciel constitué de boxels via une synthèse additive proportionnelle de la couleur des boxels adjacents.

Imagerie médicale[modifier | modifier le code]

Le voxel est utilisé pour la représentation d'espaces 3D, en physique ou en imagerie médicale 3D par traitement numérique de coupes 2D issues des machines d'investigation (Scanner, IRM ...).

Voir par exemple le scanner à rayons X (ou CT).

Rendu par voxel[modifier | modifier le code]

Il existe des moteurs 3D utilisant des voxels pour dessiner des paysages, le rendu Voxel ayant la particularité de permettre des environnements très circulaires. Ils sont par contre plutôt rares, le dessin par triangle étant maintenant le plus courant dans les moteurs 3D, car il a été rapidement accéléré matériellement, ce qui a permis de faire des jeux dont l'animation est très fluide.

Quelques moteurs 3D utilisant un rendu par voxel :

  • (en) WinUFO et SimUFO. Il existe un applet Java pour tester WinUFO en ligne. SimUFO permet d'éditer directement le paysage dans le programme.
  • (en) Atomontage est un moteur hybride de 3D temps réel de nouvelle génération dédié aux jeux vidéo gérant la géométrie tant en voxel qu'en vectoriel, la physique et l'éclairage.

Jeux vidéo utilisant les voxels[modifier | modifier le code]

Les jeux vidéo utilisant un moteur de rendu 3D par voxel sont peu nombreux. On peut citer :

Voir aussi[modifier | modifier le code]

Notes et références[modifier | modifier le code]