Fast funktion
Fast funktion är en term som kanoniskt används för att kontrastera 3D-grafik- API:er och tidigare GPU:er designade före tillkomsten av shader -baserade 3D-grafik-API:er och GPU-arkitekturer.
Historia
API: er med fasta funktioner av en uppsättning funktionsingångspunkter som ungefär eller direkt skulle mappas till dedikerad logik för deras namngivna syfte i GPU:er utformade för att stödja dem. I takt med att shaderbaserade GPU:er och API:er utvecklades, implementerades API:er med fasta funktioner av grafikdrivrutiningenjörer som använde den mer generella skuggningsarkitekturen. Detta tillvägagångssätt fungerade som en segue som skulle fortsätta att tillhandahålla den API-abstraktion med fasta funktioner som de flesta utvecklare hade erfarenhet av samtidigt som det tillåts vidareutveckling och förbättringar av de nyare shader-baserade arkitekturerna.
OpenGL , OpenGL ES och DirectX ( Direct3D ) är alla 3D-grafik-API:er som gick igenom övergången från programmeringsmodellen med fasta funktioner till den skuggbaserade programmeringsmodellen. Nedan följer en tabell över när övergången från fast funktion till shaders gjordes:
3D API | Senaste versionen med fast funktion | Första Shader-versionen |
---|---|---|
OpenGL | v1.5 | v2.0 |
OpenGL ES | v1.1 | v2.0 |
DirectX | v7.0 | v8.0 |
Fast funktion kontra shaders
API:er för fasta funktioner tenderar att vara en enklare programmeringsabstraktion med en serie väldefinierade och specifikt namngivna grafiska pipeline- steg. Shader-baserade API:er behandlar grafikdata (hörn och pixlar / texels ) generiskt och tillåter en stor flexibilitet i hur denna data moduleras. Mer sofistikerade renderingstekniker är möjliga med ett shader- baserat API.
- ^ Kirk, David; Hwu, Wen-mei (2013). "Kapitel 2 - Historia om GPU Computing". Programmering av massivt parallella processorer: ett praktiskt tillvägagångssätt . Elsevier/Morgan Kaufmann. s. 23–39. ISBN 978-93-5107-044-3 .