1
Jacek Jarnicki Jacek Jarnicki -- Instytut Cybernetyki Technicznej Politechniki WrocInstytut Cybernetyki Technicznej Politechniki Wrocłławskiejawskiej
1.1. UkUkłład przedmiotuad przedmiotu
semestr VI semestr VI -- 2020020200
2. 2. LiteraturaLiteratura•• J. D. J. D. FoleyFoley, A. , A. vanvan DammDamm i inni: i inni: Wprowadzenie do grafikiWprowadzenie do grafiki
komputerowej. komputerowej. WNT Warszawa 1995.WNT Warszawa 1995.•• Grafika komputerowa metody i narzGrafika komputerowa metody i narzęędzia, dzia,
pod red. pod red. Jana Jana ZabrodzkiegoZabrodzkiego: WNT Warszawa 1994: WNT Warszawa 1994..
•• IEEE IEEE ComputerComputer GraphicsGraphics andand ApplicationApplication..
WPROWADZENIE DO GRAFIKI WPROWADZENIE DO GRAFIKI KOMPUTEROWEJKOMPUTEROWEJ
Dr inDr inżż. Jacek Jarnicki Doc. . Jacek Jarnicki Doc. PWrPWr..Instytut Cybernetyki TechnicznejInstytut Cybernetyki Technicznej
p. 226 Cp. 226 C-- 3, tel. 3, tel. [email protected]@ict.pwr.wroc.pl
www.zsk.ict.pwr.wroc.plwww.zsk.ict.pwr.wroc.pl
Jacek Jarnicki Jacek Jarnicki -- Instytut Cybernetyki Technicznej Politechniki WrocInstytut Cybernetyki Technicznej Politechniki Wrocłławskiejawskiej
1. Pocz1. Począątki grafiki komputerowejtki grafiki komputerowej
2.2. Grafika komputerowa a dziedziny Grafika komputerowa a dziedziny pokrewnepokrewne
3.3. OmOmóówienie programu przedmiotu wienie programu przedmiotu
Plan wykPlan wykłładuadu
2
Jacek Jarnicki Jacek Jarnicki -- Instytut Cybernetyki Technicznej Politechniki WrocInstytut Cybernetyki Technicznej Politechniki Wrocłławskiejawskiej
1.1. PoczPocząątki grafiki komputerowejtki grafiki komputerowej
(x, y)(x, y)
tt11
tt22
fotoelementfotoelement
do komputerado komputerax = fx = fxx(t(t22--tt11))y = fy = fyy(t(t22--tt11))
19611961-- SketchpadSketchpad –– Ivan Ivan SutherlandSutherland (MIT)(MIT) pierwszy system dopierwszy system dorysowania przy pomocy komputera z pirysowania przy pomocy komputera z pióórem rem śświetlnymwietlnym
tt11 -- chwila rozpoczchwila rozpoczęęciaciawybierania ramki obrazuwybierania ramki obrazu
tt22 -- chwila zarejestrowaniachwila zarejestrowaniaplamki przez czujnik piplamki przez czujnik pióórara
Jacek Jarnicki Jacek Jarnicki -- Instytut Cybernetyki Technicznej Politechniki WrocInstytut Cybernetyki Technicznej Politechniki Wrocłławskiejawskiej
19611961-- SpacewarSpacewar –– SteveSteve Russell Russell (MIT) pierwsza gra video (MIT) pierwsza gra video (komputer PDP(komputer PDP--1)1)
1963 1963 -- SimulationSimulation ofof a a twotwo--girogiro gravitygravity attitudeattitude controlcontrol systemsystemE. E. ZajacZajac (Bell (Bell TelephoneTelephone), pierwszy film animowany ), pierwszy film animowany (komputer IBM 7090)(komputer IBM 7090)
3
Jacek Jarnicki Jacek Jarnicki -- Instytut Cybernetyki Technicznej Politechniki WrocInstytut Cybernetyki Technicznej Politechniki Wrocłławskiejawskiej
WWektorowyektorowy system wysystem wyśświetlania obrazuwietlania obrazu
UUxx
UUyy
UUxx=U=U00coscosωωtt
UUyy=U=U00sinsinωωtt
Jacek Jarnicki Jacek Jarnicki -- Instytut Cybernetyki Technicznej Politechniki WrocInstytut Cybernetyki Technicznej Politechniki Wrocłławskiejawskiej
CharakterystykaCharakterystyka systemsystemuu wektorowegowektorowego
rozdzielczorozdzielczośćść -- bardzobardzo dudużża (4096x4096),a (4096x4096),linielinie –– ciciąąggłłee, , cienkiecienkie,,zzłłoożżonoonośćść obrazuobrazu -- ograniczonaograniczona czasemczasem popośświatywiaty ekranuekranu,,wypewypełłnianienianie konturkonturóóww -- trudnetrudne,,kolorkolor -- brakbrak,,cenacena -- bardzobardzo wysokawysoka..
4
Jacek Jarnicki Jacek Jarnicki -- Instytut Cybernetyki Technicznej Politechniki WrocInstytut Cybernetyki Technicznej Politechniki Wrocłławskiejawskiej
RastrowyRastrowy system wysystem wyśświetlania wietlania
VIDEOVIDEORAMRAM
SterownikSterownik
graficznygraficzny
MagistralaMagistrala
pikselpiksel
EkranEkran
Jacek Jarnicki Jacek Jarnicki -- Instytut Cybernetyki Technicznej Politechniki WrocInstytut Cybernetyki Technicznej Politechniki Wrocłławskiejawskiej
CharakterystykaCharakterystyka systemsystemuu rastrowegorastrowego
rozdzielczorozdzielczośćść -- dudużża (a (np. 1280np. 1280xx10241024),),linie linie –– ””schodkoweschodkowe””,,zzłłoożżonoonośćść obrazu obrazu –– bardzo dubardzo dużżaa,,wypewypełłnianie konturnianie konturóów w -- łłatweatwe,,kolor kolor –– szeroko dostszeroko dostęępnypny,,cena cena -- niskaniska..
5
Jacek Jarnicki Jacek Jarnicki -- Instytut Cybernetyki Technicznej Politechniki WrocInstytut Cybernetyki Technicznej Politechniki Wrocłławskiejawskiej
2.2. Grafika komputerowa a dziedziny Grafika komputerowa a dziedziny pokrewnepokrewne
Rozpoznawanie Rozpoznawanie obrazuobrazu
Grafika Grafika komputerowakomputerowa
Przetwarzanie Przetwarzanie obrazuobrazu
……..
sphere(xsphere(x00, y, y00, z, z00, r), r)
……
A=[aA=[aijij]]
opisopis
obrazobraz
Jacek Jarnicki Jacek Jarnicki -- Instytut Cybernetyki Technicznej Politechniki WrocInstytut Cybernetyki Technicznej Politechniki Wrocłławskiejawskiej
3.3. Program przedmiotuProgram przedmiotu
1.1. WstWstęępp2.2. RasteryzacjaRasteryzacja (rysowanie odcinka i (rysowanie odcinka i łłuku)uku)3.3. WypeWypełłnianie konturnianie konturóóww4.4. Transformacje i ogTransformacje i ogóólna procedura wizualizacji 2lna procedura wizualizacji 2--DD5.5. Modele obiektModele obiektóów 3w 3--D (siatki wielobokD (siatki wielobokóów, rw, róównania)wnania)6.6. Modele obiektModele obiektóów 3w 3--D (krzywe D (krzywe HermitaHermita i i BezieraBeziera))7.7. Modele obiektModele obiektóów 3w 3--D (powierzchnie D (powierzchnie BezieraBeziera, , splinespline, NURBS), NURBS)8.8. RzutowanieRzutowanie9.9. Transformacje 3Transformacje 3--D, usuwanie elementD, usuwanie elementóów niewidocznychw niewidocznych10.10. Modele oModele ośświetlenia scen wietlenia scen 11.11. TeksturaTekstura12.12. Metoda Metoda śśledzenia promieni (ledzenia promieni (rayray tracingtracing))13.13. Metoda energetycznaMetoda energetyczna14.14. Podstawy teorii barw, modele liczbowe kolorPodstawy teorii barw, modele liczbowe koloróóww
6
Jacek Jarnicki Jacek Jarnicki -- Instytut Cybernetyki Technicznej Politechniki WrocInstytut Cybernetyki Technicznej Politechniki Wrocłławskiejawskiej
WizualizacjaWizualizacja 22--DD
Narysowanie obrazu wyNarysowanie obrazu wyśświetlanego w systemie rastrowym.wietlanego w systemie rastrowym.
Obiekty opisane w geometrii pObiekty opisane w geometrii płłaszczyzny Raszczyzny R2 2 trzeba narysowatrzeba narysowaććna pna płłaszczyaszczyźźnie Nnie N22. . Nie zawsze jest to takie proste jak pozornie moNie zawsze jest to takie proste jak pozornie możże sie sięę wydawawydawaćć..
Proste w RProste w R2 2 przecinajprzecinająą sisięę w jednym punkcie a ich obrazy w jednym punkcie a ich obrazy narysowane w Nnarysowane w N22 w trzech punktach.w trzech punktach.
Jacek Jarnicki Jacek Jarnicki -- Instytut Cybernetyki Technicznej Politechniki WrocInstytut Cybernetyki Technicznej Politechniki Wrocłławskiejawskiej
•• rysowanie dyskretnego obrazu odcinkarysowanie dyskretnego obrazu odcinka
•• rysowanie dyskretnego obrazu rysowanie dyskretnego obrazu łłuku okruku okręęgugu
•• wypewypełłnianie wielobokunianie wieloboku
•• wypewypełłnianie konturunianie konturu
•• transformacje elementarne w przestrzeni 2transformacje elementarne w przestrzeni 2--DD
•• wspwspóółłrzrzęędne jednorodnedne jednorodne
•• skskłładanie transformacji, transformacje zadanie transformacji, transformacje złłoożżoneone
•• ogogóólna procedura wizualizacji 2lna procedura wizualizacji 2--DD
•• algorytm obcinania (algorytm obcinania (clippingclipping))
Zagadnienia wizualizacji 2-D
7
Jacek Jarnicki Jacek Jarnicki -- Instytut Cybernetyki Technicznej Politechniki WrocInstytut Cybernetyki Technicznej Politechniki Wrocłławskiejawskiej
WizualizacjaWizualizacja 33--DD
Wygenerowanie obrazu w maksymalnym stopniu Wygenerowanie obrazu w maksymalnym stopniu przypominajprzypominająącego to, co widzimy patrzcego to, co widzimy patrząąc na c na śświat realny.wiat realny.
•• budowa budowa modelmodeluu sceny 3sceny 3--DD
•• rzutowanierzutowanie
•• usuwanie elementusuwanie elementóów niewidocznychw niewidocznych
•• generacja efektgeneracja efektóów wynikajw wynikająących z ocych z ośświetleniawietlenia
•• teksturowanie teksturowanie
•• metody zaawansowane (metody zaawansowane (rayray tracingtracing, , radiosityradiosity))
Jacek Jarnicki Jacek Jarnicki -- Instytut Cybernetyki Technicznej Politechniki WrocInstytut Cybernetyki Technicznej Politechniki Wrocłławskiejawskiej
•• modelemodele szkieletoweszkieletowe
•• modelemodele w postaci rw postaci róównawnańń matematycznychmatematycznych
•• konstrukcyjnakonstrukcyjna geometriageometria brybryłłowaowa ((solid solid modelingmodeling))
•• modele wykorzystujmodele wykorzystująące geometrice geometrięę frakatalnfrakatalnąą
•• inneinne modelemodele
ModeleModele obiektobiektóóww 33--DD
8
Jacek Jarnicki Jacek Jarnicki -- Instytut Cybernetyki Technicznej Politechniki WrocInstytut Cybernetyki Technicznej Politechniki Wrocłławskiejawskiej
ModelModelee szkieletowszkieletowe (e (wirewire frameframe representationrepresentation))
VV11, V, V22, , …… -- wierzchowierzchołłki ki ((vertexvertex))
EE11, E, E22, , …… -- krawkrawęędzie dzie ((edgeedge))
SS11, S, S22, , …… -- śściany ciany ((polygonpolygon--surfacesurface))
Jacek Jarnicki Jacek Jarnicki -- Instytut Cybernetyki Technicznej Politechniki WrocInstytut Cybernetyki Technicznej Politechniki Wrocłławskiejawskiej
( )( )( )v,ufz
1v,u0v,ufyv,ufx
z
y
x
=
≤≤==
( ) 0z,y,xf =
ModelModelee w postaci rw postaci róównawnańń analitycznychanalitycznych
•• rróównanie uwikwnanie uwikłłaneane
•• rróównania parametryczne (wnania parametryczne (powierzchniepowierzchnie BezieraBeziera, , BB--splinespline, , NURBS),NURBS),
9
Jacek Jarnicki Jacek Jarnicki -- Instytut Cybernetyki Technicznej Politechniki WrocInstytut Cybernetyki Technicznej Politechniki Wrocłławskiejawskiej
Konstrukcyjna geometria bryKonstrukcyjna geometria bry łłowa owa (solid (solid modelingmodeling))
Jacek Jarnicki Jacek Jarnicki -- Instytut Cybernetyki Technicznej Politechniki WrocInstytut Cybernetyki Technicznej Politechniki Wrocłławskiejawskiej
Modele Modele fraktalnefraktalne (przyk(przykłład)ad)
Kwaternion – ogólniejsza liczba zespolona.
)3()2()1()0( qkqjqiqq ⋅+⋅+⋅+=
daneqqqq 0c2j1j −+=+
10
Jacek Jarnicki Jacek Jarnicki -- Instytut Cybernetyki Technicznej Politechniki WrocInstytut Cybernetyki Technicznej Politechniki Wrocłławskiejawskiej
RzutowanieRzutowanie ((projectionprojection))
Na ekranie pojawi siNa ekranie pojawi sięę siatka linii, odpowiadajsiatka linii, odpowiadająących wszystkim cych wszystkim krawkrawęędziom modelu szkieletowego.dziom modelu szkieletowego.
rzutnia (ekran)rzutnia (ekran)
obiektobiekt
obserwatorobserwatorRzut perspektywicznyRzut perspektywiczny
Jacek Jarnicki Jacek Jarnicki -- Instytut Cybernetyki Technicznej Politechniki WrocInstytut Cybernetyki Technicznej Politechniki Wrocłławskiejawskiej
Usuwanie z obrazu elementUsuwanie z obrazu elementóów niewidocznychw niewidocznych
Wielobokom siatki modelu szkieletowego przypisano kolory Wielobokom siatki modelu szkieletowego przypisano kolory a nasta nastęępnie usunipnie usunięęto z obrazu elementy niewidoczne dla to z obrazu elementy niewidoczne dla obserwatora.obserwatora.
•• algorytm sortowania algorytm sortowania śściancian•• algorytm zalgorytm z--buforabufora
rzutnia rzutnia (ekran)(ekran)
obiektobiekt
obserwatorobserwator
11
Jacek Jarnicki Jacek Jarnicki -- Instytut Cybernetyki Technicznej Politechniki WrocInstytut Cybernetyki Technicznej Politechniki Wrocłławskiejawskiej
OOśświetlenie sceny wietlenie sceny
Wprowadzono Wprowadzono źźrróóddłło o śświatwiatłła i przypisano wielobokom siatki a i przypisano wielobokom siatki charakterystyki charakterystyki śświetlne powierzchni.wietlne powierzchni.
•• powierzchnie matowepowierzchnie matowe•• powierzchnie lustrzane powierzchnie lustrzane •• obiekty przezroczysteobiekty przezroczyste
•• źźrróóddłła rozproszonea rozproszone•• źźrróóddłła punktowea punktowe
rzutnia rzutnia (ekran)(ekran)
obserwatorobserwator
źźrróóddłło o śświatwiatłłaa
Jacek Jarnicki Jacek Jarnicki -- Instytut Cybernetyki Technicznej Politechniki WrocInstytut Cybernetyki Technicznej Politechniki Wrocłławskiejawskiej
Tekstura Tekstura
Wielobokom siatki przypisano bardziej subtelne charakterystyki Wielobokom siatki przypisano bardziej subtelne charakterystyki powierzchni (teksturpowierzchni (teksturęę).).
•• generacja teksturygeneracja tekstury•• odwzorowania geometryczne teksturodwzorowania geometryczne tekstur•• filtracja teksturfiltracja tekstur
rzutnia rzutnia (ekran)(ekran)
obserwatorobserwator
źźrróóddłło o śświatwiatłłaa
chropowatochropowatośćść
12
Jacek Jarnicki Jacek Jarnicki -- Instytut Cybernetyki Technicznej Politechniki WrocInstytut Cybernetyki Technicznej Politechniki Wrocłławskiejawskiej
Metoda Metoda śśledzenia promieni (ledzenia promieni (rayray--tracingtracing))
obserwatorobserwator
źźrróóddłło o śświatwiatłłaa
obiekt 2obiekt 2
obiekt 1obiekt 1
ekranekran
pikselpiksel
( ( xxpp , , yypp ))
Dwa obiekty, kula i płaszczyzna