Een voxel is een 'volume-element'. Het is het driedimensionale (3D) equivalent van een pixel (of: picture-element) en het kleinste te onderscheiden element van een 3D-object. De term voxel wordt meestal in de 3D-computergraphics gebruikt, maar vindt ook zijn toepassingen in de visualisatie en analyse van medische en wetenschappelijke gegevens. Zo wordt de term gebruikt in de radiologie, bij magnetische resonantie-beeldvorming, computertomografie, SPECT-scan of echografie.

Weergave van voxels als kubusjes. Een afzonderlijke voxel is gemarkeerd
Een macromolecuul weergegeven met voxels.

Technische uitleg bewerken

Bij 2D graphics kennen we vector graphics en bitmaps (pixels). Een vectorafbeelding is een grafische voorstelling die opgebouwd is uit meetkundige objecten. Bij 3D graphics is er sprake van een 3D vector en een voxel. Een voxel geeft een waarde aan die aan een volumecel in een driedimensionale ruimte gebonden is. Net als pixels bevatten voxels echter geen informatie over hun positie in 3D-ruimte. Het is een volume-element dat een specifieke rasterwaarde in 3D-ruimte vertegenwoordigt.[1]

Etymologie bewerken

Het woord voxel is een porte-manteau; een samentrekking van twee woorden. Volgens de Engelstalige Wikipedia is dit een samentrekking van Volume en Element,[2] waarbij de X wordt toegevoegd voor het leesgemak. Voxel en Pixel zijn beiden een porte-manteu en hebben een gemeenschappelijke woordherkomst.[3]

Game-engine bewerken

Omdat de meeste games werken met vector is de voxeltechniek nog zeer onderontwikkeld, maar er zijn veelbelovende projecten die hier verandering in proberen te brengen. Er is zelfs een bedrijf dat beweert op goedkope apparaten extreem realistische 3D-werelden te kunnen tonen. Dit wordt gedaan door een zoekalgoritme dat op een zeer efficiënte manier uitzoekt welke kleur getoond moet worden bij elke pixel. Deze zoekmachine kan vanaf iedere locatie een kijkje nemen, waardoor je op een oude laptop nog door realistische landschappen kunt zweven. Uit ouder materiaal blijkt wel dat deze wereld geen beweging bevat, iets wat de game-industrie onhaalbaar maakt. Mogelijk kunnen ze in de toekomst gebruikmaken van deze methode: neem een voxelwereld met een pijl, verwijder de pijl uit deze wereld. Plaats deze in een lege wereld, leg deze twee werelden over elkaar heen en er is niets veranderd. Maar wanneer het beeld van de pijl zich verplaatst, zal het lijken alsof deze door de wereld beweegt, terwijl in werkelijkheid alleen een deel van de voxels is toegewezen aan een ander zoekalgoritme.

Computerspellen bewerken

In computerspellen wordt deze term gebruikt om aan te geven dat het spel alleen gebruikmaakt van kubusobjecten, die elk uit meerdere kubuscellen zijn opgebouwd en elke van deze cellen met een bitwaarde wordt gedefinieerd. Dit zorgt ervoor dat complexe objecten heel goedkoop (m.b.t. geheugen en snelheid) gevormd kunnen worden. Het woord wordt echter ook gebruikt om spellen te beschrijven die hier helemaal geen gebruik van maken. Zo kan men met voxels in principe geen schuine lijnen vormen in een 3D-omgeving (uitzonderingen hierop bestaan door slim gebruik van shaders en/of een afwijking in de cellen). In deze gevallen zegt de term voxel niets over het detail (het aantal cellen) binnen het object.

Displays bewerken

Sommige 3D-displays gebruiken voxels om hun resolutie te beschrijven. Een display is bijvoorbeeld in staat om 512 x 512 x 512 voxels te laten zien.

Afhankelijk van het gebruik kan de waarde van een voxel op twee wijzen worden geïnterpreteerd:

  • Een kleine kubus met specifieke eigenschappen (XYZ-coördinaten) in een groter volume met een Cartesisch coördinatenstelsel. Hier is het een analogie van een pixel, welke data in twee dimensies kan weergeven.
  • Een balkvormige cel in een regelmatig opgedeeld kader of een onbegrensde ruimte. Deze betekenis wordt veelal gebruikt bij bepaalde technieken die worden toegepast bij raytracing.

Zie ook bewerken