Treść książki

Przejdź do opcji czytnikaPrzejdź do nawigacjiPrzejdź do informacjiPrzejdź do stopki
34
NowoczesnyOpenGL
Rysunek1.4.Obrazkontrolnywgrace3D
Pouruchomieniuaplikacjizobaczymyżółtytrójkątnaczarnymtle(rysu-
nek1.4).Topewnieniezbytsatysfakcjonującyefektpotakdużymwysiłku,ale
przecieżzaczynamyodzera.Trójkątjestpłaski.Alenawetgdybyśmyzamiasttrój-
kątanarysowaliostrosłup,itaknaekranieniemoglibyśmytegodostrzec.Nie
możemybowiemjeszczekontrolowaćkamery,abrakoświetleniapowoduje,że
naraziewszystko,conarysujemynaekranie,będziesięwydawałopłaskie.
Kolory
Przypominam,żewtymrozdzialebardzokrótkoprzedstawiamtradycyjny
OpenGL,wktórymmożliwejestokreślaniewerteksówfiwlocie”(formalniena-
zywasiętotrybemnatychmiastowym).Dziękitemuzawyglądtrójkątawcałości
odpowiedzialnajestmetodaRysujScenę.Towniejokreślamykoloripołożenie
werteksów.Drobnazmianawtejmetodzie(listing1.21)spowoduje,żetrójkąt
staniesiękolorowy.żnekolorywierzchołkówprzekładająsiębowiemnagładką
interpolacjękolorówpikseli,zktórychtrójkątjestzbudowany.Mechanizm,który
topowoduje,wyjaśnięwrozdziale6,poświęconyshaderom.
Listing1.21.Każdywerteksmożemiećniezależnieokreślonykolor
voidOknoGL::RysujScenę()
{