Szukam dobrych zasobów edukacyjnych dla sprzętu graficznego (i powiązanego oprogramowania niskiego poziomu). Zasadniczo chcę dowiedzieć się więcej o tym, co dzieje się pod warstwami API opengl / direcx pod względem sposobu implementacji.
Znam to, co dzieje się zasadniczo na różnych etapach procesu renderowania (oglądanie, projekcja, obcinanie, rasteryzacja itp.).
Moim celem jest móc podejmować lepsze i bardziej świadome decyzje dotyczące kompromisów i potencjalnych optymalizacji podczas programowania grafiki / modułu cieniującego w odniesieniu do następujących rodzajów problemów;
- partie
- zobacz ubijanie
- okluzje
- losuj kolejność
- unikanie zmian stanu
- trójkąty vs punktysprity
- próbkowanie tekstury
- itp
Zasadniczo wszystko, co programista graficzny musi wiedzieć o nowoczesnym sprzęcie graficznym, aby stać się bardziej efektywnym.
Tak naprawdę nie szukam konkretnych technik optymalizacji, potrzebuję bardziej ogólnej wiedzy, aby naturalnie napisać bardziej wydajny kod.
źródło
Odpowiedzi:
Seria postów na blogu Fabiana Giesena Podróż przez potok graficzny to najlepsze miejsce, jakie znam, aby uzyskać ogólny obraz tego, jak działają nowoczesne procesory graficzne i jakie interfejsy API, takie jak D3D i OpenGL, naprawdę dla Ciebie działają.
źródło