Application Programming Interfaces (APIs) är vilka processer kommandot du gör och gränssnitt med programvaran för att få dig det resultat du behöver.
Ett API-samtal innebär att man gör en begäran till servern om att få en viss uppgift / åtgärd utförd. En snabb jämförelse av Open GL och Direct 3D görs här. Vi kommer att titta närmare på föreställningarna för de två API: erna med GeeXLab som nu finns med en Open GL och en Direct 3D 12-återgivare.
Open Graphics Library (OpenGL) är ett korsspråkigt, plattforms-API för återgivning av 2D- och 3D-vektorgrafik. API används vanligtvis för att interagera med en grafikbearbetningsenhet (GPU) för att uppnå hårdvaruaccelererad återgivning. Direct3D är ett grafiskt applikationsprogrammeringsgränssnitt (API) för Microsoft Windows som är en del av DirectX, Direct3D används för att återge tredimensionell grafik i applikationer där prestanda är viktigt, till exempel spel. Direct3D använder maskinvaruacceleration om det finns tillgängligt på grafikkortet.
Ett strukturerat nät är gjord med olika polygontäthet. Testet använder en kommandolista, ett PSO, ett HLSL-program, ett nät och en struktur. GeeXLab och testet är båda tillgängliga för nedladdning i host_api / Direct3D12_vs_OpenGL / mappen i kodprovpaketet. Antalet polygoner kan ändras genom att redigera källkoden för båda filerna. Testet utfördes för följande specifikationer:
CPU: Intel Core i5 6600K @ 3,5 GHz
Moderkort: ASUS Z170 Pro Gaming
BAGGE: 8 GB DDR4 Corsair-hämnd
OS: Windows 10 64-bitars
förare:
Radeon R9 290X: Katalysator 15.10 beta
GeForce GTX 970: R358.50
HD Graphics 530: v4279
Framerat per sekund
Framerate per sekund för båda API: erna med olika drivrutiner studerades.
Direct3D 12 resultat
Trianglar AMD Radeon R9 290X NVIDIA GeForce GTX 970 Intel HD Graphics 530
800 9100/40% 5500/25% 1360
5000 8200/45% 5300/35% 1220
20000 5800/60% 5100/45% 1100
80000 2400/80% 2600/70% 850
320000 720/90% 700/85% 500
500000 480/98% 480/90% 400
2000000 130/100% 130/97% 160
OpenGL 3.2-resultat
Trianglar AMD Radeon R9 290X NVIDIA GeForce GTX 970 Intel HD Graphics 530
800 4600/25% 3700/35% 1220
5000 4300/25% 3600/35% 1160
20000 4200/25% 3600/36% 1060
80000 4100/30% 3600/58% 840
320000 4100/46% 2800/87% 500
500000 3200/70% 2200/90% 420
2000000 1000/100% 930/95% 180
Resultaten av Direct 3D 12 visade sig vara snabbare än OpenGL när antalet polygoner var lågt. När antalet polygoner var cirka 80 000 visade det sig att Direct3D erbjuder samma typ av prestanda som OpenGL. När detta nummer översteg 80 k, visade sig OpenGL vara mycket snabbare.
Fyrdukar återges
Resultaten av ett dragstresstest listas också, en fyrdubbla har gjorts 100, 400 och 4000 gånger. Varje fyrhjuling återges med sitt eget draganrop. För detta test består varje fyrdel av fyra vertikaler och 2 trianglar.
Direkt 3D 12
Num quads GeForce GTX 960 (R361.43)
100 2900/20%
400 1070/26%
4000 180/20%
OpenGL 3.2
Num quads GeForce GTX 960 (R361.43)
100 1840/58%
400 730/30%
4000 97/20%
Det kan observeras att fler objekt kan ritas med Direct 3D 12 än med OpenGL.