3D képszintézis fizikai alapmodellje

Slides:



Advertisements
Hasonló előadás
1 Hernyák Zoltán Programozási Nyelvek II. Eszterházy Károly Főiskola Számítástudományi tsz.
Advertisements

L ÁTHATÓSÁG MEGHATÁROZÁSA tavaszi félév.
1. foreach( fejlesztő in Lurdyház ) { fejlesztő.Agy. Delete If( delegate ( Content c ) { return c.ContainsAny( „Win32 / User32.dll”, „GDI”,„GDI+”,„WindowsForms”,
Az elektromos mező feszültsége
Árnyalás – a felületi pontok színe A tárgyak felületi pontjainak színezése A fényviszonyok szerint.
 Árnyalási egyenlet  Saját emisszió  Adott irányú visszaverődés.
2D képszintézis Szirmay-Kalos László.
Globális illumináció (GI)
2D grafikus rendszerek Szirmay-Kalos László. 2D grafikus editor: GUI, use-case, dinamikus modell L L L R LD LU MouseLDown első pont MouseLDown második...
Analitikus (koordináta) geometriai gyorstalpaló
Inkrementális 3D képszintézis
GPU Szirmay-Kalos László.
Geometriai modellezés
Sugárkövetés: ray-casting, ray-tracing
2D képszintézis Szirmay-Kalos László. Számítógépes grafika feladata képszintézis Virtuális világ modell modellezés Metafórák: 2D rajzolás világ = sík.
Geometriai modellezés
Térfogatvizualizáció Szirmay-Kalos László. Térfogati modellek v(x,y,z) hőmérséklet sűrűség légnyomás potenciál anyagfeszültség... v(x,y,z) tárolás: 3D.
Sugárkövetés: ray-casting, ray-tracing Szirmay-Kalos László.
3D képszintézis fizikai alapmodellje
FelültöltésVHDL Felültöltés (Overloading) n Áttekintés n Példák.
 Lineáris egyenlet  algebrai egyenlet  konstansok és első fokú ismeretlenek  pl.: egyenes egyenlete  Lineáris egyenletrendszer  lineáris egyenletek.
TRANZIENS ADATTÁROLÁS State objektum Egy alkalmazásszintű gyűjtemény (Dictionary), mely Tombstone esetén megőrzi tartalmát a memóriában kulcs/érték párokként.
Csala Péter ANDN #4. 2 Tartalom  C# - ban előre definiált típusok  Változók  Változókkal műveletek  Elágazás  Ciklus.
Számítógépes grafika, PPKE-ITK, Benedek Csaba, D képszintézis 4. előadás.
Számítógépes grafika, PPKE-ITK, Benedek Csaba, 2010 Geometriai modellezés 2. előadás.
Színek és megvilágítás
A virtuális technológia alapjai Dr. Horváth László Budapesti Műszaki Főiskola Neumann János Informatikai Kar, Alkalmazott.
WC 1/4. ACID SELECT UPDATE INSERT ERSTE BANK ME TRANZAKCIÓK 2/4.
Tervminták megvalósítása B formális nyelven Papp Olga Vadász Péter.
Könyvtár, csomag és alprogramokVHDL Könyvtár, csomag és alprogram n Library és use n Package n Alprogramok –Procedure –Function –Resolution function Egy.
AAO Csink László november.
Térfogatvizualizáció Szirmay-Kalos László. Térfogati modellek v(x,y,z) hőmérséklet sűrűség légnyomás potenciál anyagfeszültség... v(x,y,z) tárolás: 3D.
Pixel műveletek, képek Szirmay-Kalos László.
Sugárkövetés: ray-casting, ray-tracing
Térfogatvizualizáció
Vektorok különbsége e-x = [ex-xx ey-xy ez-xz] e e-x x szempozíció
Motor II. Env map Spotlight Szécsi László. Letöltés /code/E/code/EggCoreSecondBase.zip Kibontani (vagy előző labor folyt.):
Vízfelület Szécsi László. Nyílt víz a nyílt óceánon a felületi cseppecskék körmozgást végeznek trochoid hullámforma hullámhossz hullámmagasság amplitúdó.
Transzformációk, textúrák, árnyalás Szécsi László.
Játékfejlesztés.
V. labor Thread, animáció. Animáció A figurák a lépés kijelölése után nem rögtön az új helyen teremnek, hanem egyenes vonal mentén mozognak a cél felé.
OIS. Kezdeti teendők Letöltés: OgreLabControllersBase.zip Kicsomagol, betölt:.sln Additional include és library path beállítása Working directory beállítása.
SzgLab 3. Java. I. labor Alapok, OOP váz, megjelenítés konzolon.
Sugárkövetés: ray-casting, ray-tracing
Térfogatvizualizáció
2D képszintézis Szirmay-Kalos László.
Analitikus geometria gyorstalpaló
Számítógépes grafika Bevezetés
3D képszintézis fizikai alapmodellje Szirmay-Kalos László Science is either physics or stamp collecting. Rutherford.
II. labor Lépések kezelése. Új metódus a Square osztályba public static int letterToFileIndex(char letter) throws NumberFormatException { int i = 0; for.
III. labor AWT, eseménykezelés Applet. Új class: ButtonView import java.awt.*; import java.awt.event.*; import java.util.LinkedList; public class ButtonView.
Kamera, 3D, transzformációk Szécsi László. Math.zip kibontása az Egg projectkönyvtárba – float2, foat3, float4 típusok, HLSL-ben megszokott műveletekkel.
User interface Szécsi László. Egg projectben DXUTgui.cpp – CDXUTDialogResourceManager::CDXUTDialogReso urceManager() m_SpriteBufferBytes11 = 0; ezt kihagyták,
 Kvantált kép fényesség értékei: G [ 0, Gmax ]  G fényességű pontok száma: P(G)
GPGPU labor IX. Lineáris egyenletrendszerek megoldása.
GPGPU labor II. GPU mint vektor processzor. Kezdeti teendők Tantárgy honlapja, Bevezetés – Alap könyvtárak letöltése Tantárgy honlapja, GPU mint vektor.
STABILIZÁLT DC TÁPEGYSÉG
Árnyalás – a felületi pontok színe A tárgyak felületi pontjainak színezése A fényviszonyok szerint.
Sugárkövetés: ray-casting, ray-tracing Szirmay-Kalos László.
Árnyalás – a felületi pontok színe A tárgyak felületi pontjainak színezése A fényviszonyok szerint.
Egyenesvonalú (lineáris) adatszerkezetek
Brightr Megvilágítás modellezése. Csapattagok  Illés László  Palatinus Endre  Provits Milán  Török Péter.
Fotorealisztikus képszintézis valós időben Szirmay-Kalos László, Csébfalvi Balázs BME IIT.
Számítógépes grafika, PPKE-ITK, Benedek Csaba, 2010 Színek és megvilágítás 5. előadás.
Számítógépes grafika, PPKE-ITK, Benedek Csaba, 2010 Geometriai modellezés 2. előadás.
Vizualizáció és képszintézis
6. A 3D grafika alapjai 6.1. A 3D szerelőszalag fölépítése 6.2. Térbeli alakzatok képe 6.3. Térbeli képelemek és modell-adatszerkezetek 6.4. Képelemek.
Vizualizáció és képszintézis
Árnyalás - a képpontok színe.
World map.
Előadás másolata:

3D képszintézis fizikai alapmodellje Szirmay-Kalos László

Képszintézis = valós világ illuziója  Tone mapping  pixel Virtuális világ színérzet Valós világ Sugársűrűség = egységnyi látható felület egységnyi térszögbe kisugárzott teljesítménye  

Ugyanolyan teljesítmény F(DA1, Dw1) = F(DA2, Dw2) Dw1 DA1 2 DA2 cos2 DA2 Dw2 r1 pixel r2 r22 r12 Dw1 Dw2 DA2 cos2 DA1 cos1 = = F(DA1, Dw1) F(DA2, Dw2) DA1 cos1 Dw1 DA2 cos2 Dw2 = = L

Sugársűrűség (Radiancia): L(x,w) Egy egységnyi látható felület által egységnyi térszög alatt kibocsátott teljesítmény [Watt/ sr/ m2] V dw dF  L(x,V) = dF / (dA cos  dw) dA

Fény-felület kölcsönhatás Sugársűrűség = Bejövő BRDF Geometria L(x,V) = Lin(x, L)  fr (L,x,V)  cos’ Helmholtz törvény: V ’ L fr (L,x,V) = fr (V,x,L) Ilumination computation can also be interpreted as the solution of an integral equation, called the rendering equation. This equation expresses the radiance of a point into a given direction as the sum of the own emission of this surface and the reflection of the radiance of those points that are visible from here. From mathematical point of view, the rendering problem is equivalent to the solution of this integral equation at every visible point, that is for every pixel of the screen. Lin x ’

Spektrális versus RGB képszintézis Le() F () Képszintézis Színleképzés R, G, B f r() szorzás lineáris Le[r], Le[g], Le[b] Le() Színleképzés Képszintézis R, G, B Színleképzés f r() f r[r], f r[g], f r[b]

Sima felületek Lin  F Lin Lin (1-F) 1 2 1 2 F = + (n -1)2 + k2 ’ ’ Lin  F Lin sin’ n = Lin (1-F)  sin 2 2 1 2 cos - (n+k j ) cos’ 1 2 cos ’ - (n+k j ) cos F = + cos+ (n+k j ) cos’ cos’+ (n+k j ) cos (n -1)2 + k2 F  F0 + (1-F0)  (1-cos’)5, F0 = (n+1)2 + k2

Fresnel függvény F (, ’) F(, ’)   ’ ’ arany ezüst

Tükörirány számítása N a a x cos a = - (v·N) v + N cosa v + N cosa vr L = vr, V= v ReflectDir( L, N, V ) { L = V - N * (N * V) * 2; } a a x cos a = - (v·N) vr = v + 2 cos a N

Törési irány N a N N = cosb = 1-sin2b = 1-sin2a/n2 sin a v + Ncosa Snellius- Descartes sin a v + Ncosa n = sin b v a v +Ncosa Nsinb N N = sina -Ncosb vt = N sinb - Ncosb b vt = v /n + N(cosa/n- cosb) cosb = 1-sin2b = 1-sin2a/n2 vt vt = v/n + N (cosa/n -(1-(1-cos2 a)/n2))

Fénytörő anyagok

Sima felület class IdealSurface { Color F; double n; public: void ReflectionDir(Vec& L, Vec& N, Vec& V) { double cosa = -N * V; L = V + N * cosa * 2; } BOOL RefractionDir(Vec& L, Vec& N, Vec& V, BOOL out) { double cn = n; if ( !out ) cn = 1.0/cn; double disc = 1 - (1 - cosa * cosa) / cn / cn; if (disc < 0) return FALSE; L = N * (cosa / cn - sqrt(disc)) + V / cn; return TRUE; };

Rücskös felületek Cook-Torrance He-Torrance q’

Diffúz visszaverődés q’ Radiancia a nézeti iránytól független L Helmholtz: a megvilágítási iránytól is független A BRDF konstans: N L q’ fr (L,x,V) = kd(l)

Lambert törvény Lref = Lin kd cos+’ q’ Pont/irány fényforrásra válasz cos’ = N·L

Spekuláris visszaverődés: Phong modell cosy = R·V R R q’ q’ = diffúz + y V V Kell egy függvény, ami nagy y=0 -ra és gyorsan csökken Lref = Lir ks (cos+y)n fr (L,x,V) = ks cosn y /cos’ Nem szimmetrikus!

Diffúz+Phong anyagok diffúz „Saját szín” Phong diffúz + Phong n= műanyagoknál hullámhossz független Phong diffúz + Phong n= 5 10 20 50

Phong-Blinn modell (OpenGL) Felezővektor H H = (L+V)/|L+V| N q’ cos+d = N·H V L Lref = Lir ks (cos+d)n fr (L,x,V) = ks cosn d /cos’

Képszintézis R, G, B L () Le() L () f r()  pixel Virtuális világ L () Le() L () f r()  Pixelben látható felület meghatározása A látható pont szem irányú sugársűrűsége

Megoldási kompromisszumok pixel lokális illumináció rekurzív sugárkövetés globális illumináció