Geometry Instancing ( rusky duplikace geometrie ) je softwarová technika (metoda) v trojrozměrné počítačové grafice, většinou v reálném čase . Podstatou Geometry Instancing je vykreslit více kopií jedné polygonální sítě ve 3D scéně najednou. Tato technika se zpravidla používá pro mnoho objektů stejného typu na scéně, které jsou umístěny dostatečně daleko od virtuální kamery: stromy, keře, tráva, stejné struktury a předměty.
Geometry Instancing je primárně optimalizační technika , což znamená, že je primárně určena ke zvýšení rychlosti vykreslování bez snížení kvality.
Při použití standardního přístupu k vykreslování scény a všech jejích objektů se na jedno volání Direct3D vytvoří pouze jeden objekt (vrcholy, osvětlení atd.), ať už jde o postavu v popředí nebo o sto stejných keřů v dálce. Před geometrickou instancí mohly být vzdálené identické objekty vykresleny jako skřítci , tj. dvourozměrné textury . Když se však k takovýmto dvourozměrným objektům přiblížíte a změníte úhel pohledu pozorovatele, jejich dvourozměrný charakter se zviditelní. Geometry Instancing tento problém řeší. Při jeho použití můžete okamžitě vykreslit geometrii všech podobných identických objektů v jednom volání Direct3D. To ušetří systémové prostředky a zvýší realističnost scény jako celku ve srovnání se sprajty. [1] Ačkoli jsou duplikovaná geometrická data stejná, každá kopie může mít jiné parametry, jako je barva nebo pozice animace skeletu . To může snížit viditelnost opakujících se objektů ve scéně.
Microsoft poprvé přidal Geometry Instancing v Direct3D 9 . Podpora geometrických instancí byla do OpenGL přidána o něco později v rozšíření EXT_draw_instanced, které bylo vydáno v listopadu 2006. [2]
První grafické karty (grafické karty), které podporovaly hardwarovou instanci, byly nVidia GeForce 6800 (NV40) a ATI Radeon 9500 (R300) s ovladačem ATI Catalyst 4.8. Všechny následující modely také podporují instanci geometrie v hardwaru. [3] Jedním z prvních herních enginů, jehož grafický subsystém aktivně využíval geometrické instance, byl CryEngine Crytek , který byl použit v roce 2004 ve střílečce z pohledu první osoby Far Cry . [jeden]