Fast funktion - Fixed-function

Fixed-function er et udtryk, der kanonisk bruges til at kontrastere 3D-grafik- API'er og tidligere GPU'er designet før fremkomsten af shader- baserede 3D-grafik-API'er og GPU-arkitekturer.

Historie

Historisk faste funktions- API'er bestod af et sæt funktionsindgangspunkter, der omtrent eller direkte skulle kortlægges til dedikeret logik til deres navngivne formål i GPU'er designet til at understøtte dem. Efterhånden som shader- baserede GPU'er og API'er udviklede sig, blev API'er med fast funktion implementeret af grafikdriveringeniører ved hjælp af den mere generelle skyggearkitektur. Denne tilgang tjente som et segment, der fortsat ville levere den API-abstraktion med fast funktion, som de fleste udviklere havde erfaring med, samtidig med at den tillod yderligere udvikling og forbedringer af de nyere skyggebaserede arkitekturer.

OpenGL , OpenGL ES og DirectX ( Direct3D ) er alle 3D-grafik-API'er, der gennemgik overgangen fra programmeringsmodellen med fast funktion til den skyggebaserede programmeringsmodel. Nedenfor er en tabel over, hvornår overgangen fra fast funktion til shaders blev foretaget:

3D API Sidste version med fast funktion First Shader-version
OpenGL v1.5 v2.0
OpenGL ES v1.1 v2.0
DirectX v7.0 v8.0

Fast funktion vs shaders

Faste funktions- API'er har tendens til at være en enklere programmeringsabstraktion med en række veldefinerede og specifikt navngivne grafiske pipeline- faser. Shader-baserede API'er behandler grafikdata (hjørner og pixels / texler ) generisk og giver stor fleksibilitet i, hvordan disse data moduleres. Mere sofistikerede gengivelsesteknikker er mulige ved hjælp af en shader- baseret API.