OpenGL - Rozdziały (Helion)

  • Published on
    20-Jul-2015

  • View
    153

  • Download
    0

Embed Size (px)

Transcript

<p>4.Obiekty podstawowe ................................................................. 3kozdz|o 5. Ko|or, moIer|oy | ow|eI|en|e. FodsIowy..............................Punkt 3kozdz|o 5. Ko|or, moIer|oy | ow|eI|en|e. FodsIowy.............................. 221................. 222 Czym jest kolor?...............................................................................................................wiato jest fal ........................................................................................................................... 222wiato jako czsteczka............................................................................................................... 222Nasz osobisty wykrywacz fotonw............................................................................................. 224Komputer generatorem fotonw.................................................................................................. 224Sprzt komputerw PC...................................................................................................................... 225Tryby graficzne komputerw PC....................................................................................................... 227Rozdzielczo ekranu.................................................................................................................. 227Gbia kolorw............................................................................................................................ 227Uywanie kolorw w OpenGL.......................................................................................................... 229Szecian kolorw......................................................................................................................... 229Ustalanie koloru rysowania ......................................................................................................... 230Cieniowanie................................................................................................................................. 231Ustalanie modelu cieniowania..................................................................................................... 233Kolory w wiecie rzeczywistym........................................................................................................ 234wiato otaczajce ....................................................................................................................... 235wiato rozproszone .................................................................................................................... 235wiato odbite.............................................................................................................................. 235A teraz wszystko razem............................................................................................................... 236Materiay w wiecie rzeczywistym.................................................................................................... 237Waciwoci materiaw.............................................................................................................. 237Dodawanie wiata do materiaw............................................................................................... 237Wyliczanie efektw owietlenia otoczenia.................................................................................. 238Efekty wiata rozproszenia i odbitego........................................................................................ 238Dodawanie wiate do sceny.............................................................................................................. 239Wczenie owietlenia................................................................................................................. 239Konfigurowanie modelu owietlenia........................................................................................... 239Ustalanie waciwoci materiaw............................................................................................... 240Uywanie rde wiata.................................................................................................................... 243Gdzie jest gra?........................................................................................................................... 244Normalne powierzchni ................................................................................................................ 244Definiowanie normalnej .............................................................................................................. 245Normalne jednostkowe................................................................................................................ 247Znajdowanie normalnej ............................................................................................................... 248Konfigurowanie rda................................................................................................................ 249Ustalanie waciwoci materiaw............................................................................................... 250Definiowanie wieloktw............................................................................................................ 251Efekty wietlne .................................................................................................................................. 252Odbyski ...................................................................................................................................... 253wiato odbite.............................................................................................................................. 253Wspczynnik odbicia ................................................................................................................. 254Wykadnik odbysku ................................................................................................................... 255Urednianie normalnych.............................................................................................................. 256A teraz wszystko razem..................................................................................................................... 258Tworzenie reflektora ................................................................................................................... 259Rysowanie reflektorw................................................................................................................ 261Spis treciCienie ................................................................................................................................................ 265Czym jest cie? ........................................................................................................................... 266Kod prasujcy.............................................................................................................................. 267Przykad z cieniem...................................................................................................................... 268Ponowna wizyta w wiecie kul.................................................................................................... 271Podsumowanie................................................................................................................................... 271Opisy funkcji ..................................................................................................................................... 272Spis treciRozdzia 6.Mylenie niekonwencjonalne programy do cieniowania................. 241GLSL 101 ..................................................................................................................................... 242Zmienne i typy danych...................................................................................................... 243Kwalifikatory zmiennych.................................................................................................. 246Prawdziwy shader ............................................................................................................... 248Kompilowanie, wizanie i konsolidowanie.................................................................... 252Praktyczne wykorzystanie shadera.................................................................................. 258Wierzchoek prowokujcy................................................................................................ 259Dane uniform shadera.............................................................................................................. 259Znajdowanie danych uniform.......................................................................................... 260Zmienne uniform skalarne i wektorowe ......................................................................... 260Tablice uniform.................................................................................................................. 261Macierze uniform............................................................................................................... 262Paski shader ........................................................................................................................ 262Funkcje standardowe................................................................................................................ 265Funkcje trygonometryczne............................................................................................... 265Funkcje wykadnicze.......................................................................................................... 266Funkcje geometryczne....................................................................................................... 267Funkcje macierzowe ........................................................................................................... 267Funkcje porwnywania wektorw................................................................................... 267Inne czsto uywane funkcje............................................................................................ 267Symulowanie wiata ................................................................................................................. 272wiato rozproszone........................................................................................................... 272Shader wiata rozproszonego.......................................................................................... 274Model owietlenia ADS..................................................................................................... 278Cieniowanie Phonga.......................................................................................................... 281Korzystanie z tekstur ................................................................................................................. 285Nic, tylko teksele ................................................................................................................. 285Owietlanie tekseli.............................................................................................................. 287Anulowanie przetwarzania fragmentw......................................................................... 289Teksturowanie w stylu kreskwkowym teksele w roli wiata ................................ 292Podsumowanie ........................................................................................................................... 294Rozdzia 9.Zaawansowane odwzorowania tekstur.................................................. 237Tekstury wielokrotne................................................................................................... 237Sprawdzanie dostpnoci tekstur wielokrotnych ....................................................... 238Dostp do funkcji rozszerze.................................................................................. 239Tworzenie jednostek tekstury................................................................................. 240Okrelanie wsprzdnych tekstury ......................................................................... 241Przykad zastosowania tekstur wielokrotnych........................................................... 242Odwzorowanie otoczenia ............................................................................................. 250Torus na niebie...................................................................................................... 250Macierze tekstur.......................................................................................................... 253Mapy owietlenia ........................................................................................................ 255Stosowanie map owietlenia................................................................................... 255Wieloprzebiegowe tekstury wielokrotne........................................................................ 261Podsumowanie............................................................................................................ 26574Rozdzia 4. Obiekty podstawowePunktPunktstanowinajwaniejszyelementkadejrysowanejsceny.WszystkieobiektyrysowanezapomocprocedurOpenGLszbudowane z punktw. Punkty te mog wyznacza wierzchokiobiektw (linia, trjkt) lub stanowi wypenienie tych obiektw.Zapomocpunktwmonarwnierysowawykresyfunkcjimatematycznychczytedowolnefiguryuoonezkolejnychpunktw.Abywyznaczypooeniepunktuijegowielko,wykorzystuje si specjalne procedury OpenGL. Bardzo wanymzagadnieniemjestwzajemnazalenopomidzypunktemry-sowanymwOpenGLapikselem.Pikseljestnajmniejszymob-szaremekranu,jakimoeprzyrozdzielczociokrelonejpara-metramidanejkartygraficznejwdanejchwilibyzapalony(zgaszony).Narozmiarpikselaprogramistaniemaadnegowpywu (pozazmianrozdzielczociekranu).Punktnatomiastposiadarozmiarokrelonywielkocipaszczyznyrzutowaniai zadeklarowan wielkoci. Domyln wielkoci punktu jest 1(jeden),conieoznaczawcale,enaekraniebdzieonodpo-wiadajednemupikselowi.Wprzypadkuzmianyrozmiarupaszczyznyrzutowaniazmienisirwnierozmiarwywie-tlanegopunktuowielkocijednostkowej(moewynosikilkalubkilkanaciepikseli).Zagadnienietojestszczeglnieistotneprzyimporcieobrazkw,jakrwniepodczaswykorzystywa-nia bitmap, ktrych wymiary s okrelane w pikselach. Rezultatnieskorelowaniawymiarwoknagrafikiipaszczyznyrzuto-wania przedstawia rysunek 4.1.Rozdzia 4. Obiekty podstawowe | 75Rysunek 4.1. Zaleno wymiarw wywietlania obiektu, ktregowymiary okrelane s w pikselach i w punktachObrazekzlewejstronyzostawykonanyzwykorzystaniemprocedury glDrawPixels(), tzn.narysowanogopikselami,na-tomiast ten z prawej strony jest tekstur naoon na kwadrato takich samychwymiarach,aleokrelonychwpunktach.Wy-miary obrazka wynosz128na128pikseli,wymiarykwadratu128na128punktw.OknografikiokreloneprocedurglViewPort() ma wymiary 600 na 600 pikseli, a wymiary pasz-czyznyrzutowaniazdefiniowaneprocedurglOrtho()wyno-sz 400 na 400 punktw. Jak wynika z przedstawionego rys...</p>