Hız, bunun olmamasının en yaygın nedenidir yapılmamasının . Aslında önerdiğiniz şeyi yapabilirsiniz, eğer kendi işletim sisteminizi yaparsanız, mimari nedenlerle çok yavaş olacaktır. Yani daha hızlı olduğu biraz varsayım. Daha hızlı olsa bile, geliştirme açısından daha az verimli olacaktır (işin 10 katı için% 1 hız artışı gibi).
Verilerin CPU'dan grafik kartına kopyalanması nispeten yavaş bir işlemdir. Ne kadar az kopyalarsanız güncelleme hızınız o kadar yüksek olabilir. İdeal olarak, GPU'nuzdaki verilerin çoğuna sahip olmanız ve yalnızca küçük veri yığınlarını güncellemeniz gerekir. 1920x1200 veya daha fazlasına kıyasla 320x200 pikselden fazla kopyalama arasında bir dünya var. Kenarlar büyüdüğünde güncellemeniz gereken piksel sayısının karesel olarak arttığını görün.
Örnek: GPU'ya görüntüyü pikselleri manuel olarak farklı konumlardaki video belleğine kopyalamaktan 10 piksel daha hareket ettirmesini söylemek daha ucuzdur.
Neden bir API ile uğraşmak zorundasınız? Çünkü bu sizin sisteminiz değil. İşletim sistemi, güvenlik nedeniyle istediğiniz her şeyi yapmanıza izin veremez. İkincisi, işletim sisteminin donanımı soyutlaştırması gerektiğinden, işletim sistemi bile bazı soyut sistemlerle sürücü ile konuşur.
Aslında, tüm işi kendiniz yaptıysanız, sıfıra yakın olarak sisteminizin daha hızlı olma olasılığını değerlendiririm. Bu biraz C ve montajı karşılaştırmaya benziyor. Tabii montaj yazabilirsiniz, ancak derleyiciler bugünlerde oldukça akıllı ve her zaman daha iyi ve daha iyi optimize. Verimliliğiniz azalsa bile manuel olarak daha iyi olmak zordur.
Not: Bir API, tıpkı eski oyunlarda olduğu gibi bu güncellemeyi yapmayı imkansız kılmaz. Hepsi bu kadar verimsiz. API zihni yüzünden değil, verimsiz bir dönem olduğu için.
PPS: Bu yüzden Vulkan'ı dağıtıyorlar.