Metaball ( Russian Metasphere , også fundet "metaball") er et n-dimensionelt objekt i computergrafik , som er en lukket glat overflade. Metasfære - gengivelsesteknikken blev opfundet af Jim Blinn i begyndelsen af 1980'erne .
Brugen af polygoner i computergrafik resulterer ofte i uudjævnede modeller, hvor graden af glathed i høj grad afhænger af skalaen. Forskellige metoder bruges til at opnå glatte overflader, såsom B-splines og Bezier overflader . Når man bruger metasfærer, er det underforstået, at et sæt kontrolpunkter eller partikler med et potentiale er sat i rummet, og funktioner af potentialets afhængighed af afstand er indstillet. Ved at beregne feltpotentialet er det muligt at konstruere glattede isooverflader med en ret kompleks form.
Hvert kontrolpunkt definerer sin egen n-dimensionelle potentialfunktion ( normalt n=3). Derefter vælges en vis værdi (potentiale), som bestemmer metasfærens form (faktisk bestemmes ækvipotentialoverfladen ). Uligheden bestemmer således, om punktet er inde i overfladen givet af kontrolpunkterne eller ej.
Ofte bruges , hvor er centrum af metasfæren, som en funktion, der definerer metasfæren. Brugen af division gør imidlertid denne funktion ineffektiv med hensyn til hastighed, så den erstattes normalt med tilnærmende polynomielle funktioner.
Når man leder efter en mere effektiv potentiel funktion, er det ønskeligt, at den opfylder følgende krav:
Den enkleste potentielle funktion, der opfylder disse kriterier, er , hvor er afstanden mellem kontrolpunktet og det givne punkt i rummet. Det er også ret effektivt, da det ikke bruger deling og rodudvinding.
Mere sofistikerede modeller bruger et Gaussisk potentiale afgrænset af en endelig radius af et sæt polynomier for bedre udjævning. Wyvill-brødrenes bløde objektmodel giver en højere grad af glathed og bruger ikke kvadratrødder.
En simpel generalisering af modellen kan opnås ved at erstatte afstanden mellem punkter som funktion af potentialet med afstanden til en ret linje eller afstanden til en overflade.
Der er mange måder at gengive metasfærer på. Til 3D-metasfærer er raycasting og algoritmen for marcherende terninger mest almindeligt anvendt .
2D-metasfærer var meget populære i demoer i 1990'erne. Denne effekt er også tilgængelig i XScreensaver- modulet .