Fixní funkce - Fixed-function
Fixed-function je termín kanonicky používaný ke kontrastu 3D grafických API a dřívějších GPU navržených před příchodem 3D grafických API a architektur GPU založených na shaderu .
Dějiny
Historicky API s pevnou funkcí se skládala ze sady vstupních bodů funkcí, které by přibližně nebo přímo mapovaly vyhrazenou logiku pro svůj pojmenovaný účel v GPU určených k jejich podpoře. Jak se vyvíjely GPU a API založené na shaderu, API s pevnou funkcí implementovali inženýři grafických ovladačů pomocí obecnější stínovací architektury. Tento přístup sloužil jako přechod, který by pokračoval v poskytování abstrakce API s pevnou funkcí, se kterou se většina vývojářů setkala, a zároveň umožňoval další vývoj a vylepšení novějších architektur založených na shaderu.
OpenGL , OpenGL ES a DirectX ( Direct3D ) jsou všechna 3D grafická rozhraní API, která prošla přechodem z programovacího modelu s pevnou funkcí na programovací model založený na shaderu. Níže je tabulka, kdy byl proveden přechod z pevné funkce na shadery:
3D API | Poslední verze s pevnou funkcí | První verze shaderu |
---|---|---|
OpenGL | v1.5 | v2.0 |
OpenGL ES | v1.1 | v2.0 |
DirectX | v7.0 | v8.0 |
Opravená funkce vs. shadery
Rozhraní API s pevnou funkcí mají tendenci být jednodušší abstrakcí programování s řadou dobře definovaných a konkrétně pojmenovaných fází grafického kanálu . Shaderová API zacházejí s grafickými daty (vrcholy a pixely / texty ) obecně a umožňují velkou flexibilitu v tom, jak jsou tato data modulována. Sofistikovanější techniky vykreslování jsou možné pomocí rozhraní API založeného na shaderu .