Application Programming Interfaces (APIs) adalah apa yang memproses perintah yang Anda buat dan berinteraksi dengan perangkat lunak untuk memberi Anda hasil yang Anda butuhkan.
Panggilan API melibatkan membuat permintaan ke server untuk menyelesaikan tugas / tindakan tertentu. Perbandingan cepat Open GL dan Direct 3D akan dilakukan di sini. Kami akan melihat lebih dekat kinerja dua API dengan GeeXLab yang sekarang tersedia dengan Open GL dan Direct 3D 12 renderers.
Open Graphics Library (OpenGL) adalah API lintas-platform lintas-bahasa untuk rendering grafik vektor 2D dan 3D. API biasanya digunakan untuk berinteraksi dengan unit pemrosesan grafis (GPU), untuk mencapai rendering yang dipercepat perangkat keras. Direct3D adalah antarmuka pemrograman aplikasi grafis (API) untuk Microsoft Windows yang merupakan bagian dari DirectX, Direct3D digunakan untuk membuat grafik tiga dimensi dalam aplikasi yang kinerjanya penting, seperti permainan. Direct3D menggunakan akselerasi perangkat keras jika tersedia pada kartu grafis.
Jaring bertekstur disajikan dengan berbagai kepadatan poligon. Tes ini menggunakan satu daftar perintah, satu PSO, satu program HLSL, satu mesh dan satu tekstur. GeeXLab dan tes keduanya tersedia untuk diunduh di folder host_api / Direct3D12_vs_OpenGL / paket contoh kode. Jumlah poligon dapat diubah dengan mengedit kode sumber dari kedua file. Tes dilakukan untuk spesifikasi sebagai berikut:
CPU: Intel Core i5 6600K @ 3.5GHz
Motherboard: ASUS Z170 Pro Gaming
RAM: 8GB DDR4 Corsair Vengeance
OS: Windows 10 64-bit
Driver:
Radeon R9 290X: Katalis 15.10 beta
GeForce GTX 970: R358.50
Gambar HD 530: v4279
Membingkai per detik
Framerate per detik dari kedua API dengan driver yang berbeda dipelajari.
Direct3D 12 hasil
Segitiga 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 hasil
Segitiga 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
Hasil Direct 3D 12 ditemukan lebih cepat dari OpenGL ketika jumlah poligon rendah. Ketika jumlah poligon sekitar 80k, ditemukan bahwa Direct3D menawarkan kinerja yang sama dengan OpenGL. Ketika angka ini melampaui 80k, OpenGL ternyata jauh lebih cepat.
Paha dibuat
Hasil-hasil uji tegangan undian juga terdaftar, sebuah quad telah dirender 100, 400 dan 4000 kali. Setiap quad diberikan dengan draw call sendiri. Untuk tes ini, setiap quad terdiri dari 4 simpul dan 2 segitiga.
3D Langsung 12
Num paha depan GeForce GTX 960 (R361.43)
100 2900/20%
400 1070/26%
4000 180/20%
OpenGL 3.2
Num paha depan GeForce GTX 960 (R361.43)
100 1840/58%
400 730/30%
4000 97/20%
Dapat diamati bahwa lebih banyak objek dapat digambar dengan 3D Langsung 12 daripada dengan OpenGL.