Programovanie 3D grafiky v OpenGL
Čo Vás naučíme
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.
Požadované vstupné znalosti
- Znalosť niektorého z jazykov C/C++/Delphi/Assembler/Visual Basic/Python
- Základná orientácia v hardvéri počítača
Osnova kurzu
Úvod do programovania vo Windows API
- Syntax technológie Windows API
- Volacie konvencie
- Volanie funkcií a procedúr
- Princíp činnosti aplikácií, procesov a vlákien
- Slučka spracovávania správ pre aplikácie OpenGL
Úvod do OpenGL
- Obecná syntax
- Konštanty
- Volanie funkcií OpenGL v iných jazykoch
- Prístup k OpenGL bez SDK
Prvá aplikácia s OpenGL
- Vytvorenie prázdneho okna vo Windows API
- Návrh slučky správ
- Správy WM_PAINT a WM_ERASEBKGND
- Dvojitý buffer GDI
- Vytvorenie a získanie kontextu zariadenia (DC)
- Nastavenie formátu obrazových bodov pre DC
- Fullscreen režim a zmena rozlíšenia obrazovky
- Návrat z režimu Fullscreen
- Štýl okna
- Vytvorenie kontextu renderovania (RC) pre OpenGL
- Prepojenie DC s RC
- Vytvorenie prázdnej scény
- Matice projekcie a modelu
- Nastavenie pohľadu a perspektívy
Tvorba objektov
- Tvorba čiar
- Tvorba polygónov
- Tvorba štvoruholníkov
- Nastavenie farieb
- Tvorba farebných prechodov na objektoch
- Hĺbkový buffer
- Tvorba zložitejších objektov – kocka, valec
3D Transformácie
- Matice transformácií
- Posunutie
- Škálovanie
- Rotácia
- Transformácie scény
Tvorba interaktívnych scén
- Interakcia s klávesnicou
- Udalosti myši
- Pohyb v scéne
Tvorba zložitejších modelov
- Textúry
- Prehodenie kanálov R a B v bitových mapách
- Vytvorenie poľa textúr
- Aplikácia 2D textúr na polygón
- Rastrové a outline písma
Nasvietenie
- Ambietné svetlo
- Difúzne svetlo
- Normálové vektory polygónov
- Transformácie difúzneho svetla
Termín aktuálne pripravujeme. V prípade záujmu si termín kurzu môžete vyžiadať pomocou jednoduchého formulárika nižšie, naplánovaný termín kurzu Vám pošleme na uvedený e-mail..
Vyžiadanie termínu
Doplnkové informácie
- Miesto konania kurzu: Bratislava
- Realizácia termínu závisí od jeho naplnenosti
- V rámci kurzu je pripravené občerstvenie (káva, čaj..)
- Všetky uvedené ceny sú konečné s DPH
- V prípade záujmu je možné zabezpečiť obed
- V prípade záujmu je možné zabezpečiť ubytovanie
- Možnosť realizovať formou náhradného plnenia
Cookie je krátky textový súbor, ktorý do prehliadača odosielajú navštívené webové stránky. Webovým stránkam umožňuje zapamätať si informácie o vašej návšteve, napríklad preferovaný jazyk a ďalšie nastavenia. Ďalšia návšteva stránok tak môže prebehnúť ľahšie a môže byť produktívnejšia. Súbory cookie sú dôležité. Bez nich by bolo prehliadanie webu oveľa zložitejšie. Súbory cookie môžu byť použití aj na zhromaždovanie štatistických a marketingových údajov.
Na našom webe využívame Google Analitics cookies, ktoré nám umožňujú zistiť reálnu návštevnosť našej stránky.
Zoznam použitých cookies:
- Session Cookie - Cookie s náhodne generovaným názov, ktorá sa dá využiť pri prihlasovaný
- Google Analitics - Cookie využívaná na vedenie štatistiky o prístupoch na našu webovú stránku
-
Cookie Accept - Informácia či návšetvník súhlasí z ukladaním uvedených cookies.