Detail kurzu

Programovanie 3d grafiky v opengl

Macrosoft s.r.o.

Popis kurzu

Grafická karta (GPU) v počítači nemá svoju vlastnú špeciálnu inštrukčnú sadu akú majú procesory (CPU). Príkazy, ktoré má GPU vykonať sa ukladajú do operačnej pamäte, odkiaľ si ich príslušné obvody GPU čítajú a vykonávajú. Aplikácie nemôžu priamo posielať príkazy GPU, pretože im to chránený režim operačných systémov nedovoľuje. Jednou z možností je naprogramovanie vlastného ovládača zariadenia, ktorý má prístup k hardvéru a je schopný posielať GPU príkazy, ktorým rozumie. Tento priamy prístup je však veľmi neefektívny, nakoľko musíme dokonale poznať svoju grafickú kartu – výrobcu, typ, počet multiprocesorov, procesorov, rýchlosti, veľkosť pamäte, podporované technológie a v neposlednom rade aj formát inštrukcií, ktorému daná grafická karta rozumie. Oveľa výhodnejšie je použiť niektorú z moderných technológií, ktoré za nás vyriešia celú komunikáciu s hardvérom GPU. Existujú dve najznámejšie a najpoužívanejšie technológie (nielen v hernom priemysle, ale aj v CAD systémoch) a tými sú OpenGL a DirectX. V tomto kurze sa budeme venovať práve OpenGL. Oproti DirectX má OpenGL nasledujúce výhody: • Jednoduchá procedurálna syntax (DirectX je oproti tomu implementovaný ako COM rozhranie) • Výslovne nepotrebujeme žiaden SDK a vystačíme si s jednou systémovou knižnicou pre OpenGL • Ľahká práca aj v nižších (alebo jazykov bez podpory OOP) jazykoch ako sú Visual Basic, C a dokonca aj Assembler! • OpenGL dlho prevahu nad DirectX z hľadiska možností svojich možností. To znamená, že z GPU využilo viac možností. To bol napr. hlavný dôvod, prečo ID Software dlho programovalo svoje hry práve v OpenGL.
Hodnotenie




Organizátor