Számítógépes grafika 3. gyakorlat.

Slides:



Advertisements
Hasonló előadás
OpenGL 2. gyakorlat Hapák József
Advertisements

2010/2011 ősz Klár Gergely  A DirectX egy alacsonyszintű API gyűjtemény  Multimédiás alkalmazások futtatására, írására szolgál  Részei.
Grafikus Hardver Alapok
Programozás III STRING-XML.
C++ programozási nyelv Gyakorlat hét
Programozási alapismeretek 6. előadás. ELTE Szlávi-Zsakó: Programozási alapismeretek 6.2/  Rekordok/struktúrák.
Geometriai Transzformációk
Geometriai transzformációk
Bevezetés.  A számítógépes grafika inkrementális képszintézis algoritmusának hardver realizációja  Teljesítménykövetelmények:  Animáció: néhány nsec.
13.a CAD-CAM informatikus
Programozás II. 3. Gyakorlat C++ alapok.
Grafika a programban Készítette: Pető László. Bevezetés Valójában nem a célobjektumra rajzolunk, hanem annak festővászon területére (canvas). Csak olyan.
Transzformációk kucg.korea.ac.kr.
WEB Technológiák Dr. Pance Miklós – Kolcza Gábor Miskolci Egyetem.
WSDL alapismeretek A WSDL (Web Services Description Language – Web szolgáltatások leíró nyelv) egy XML-alapú nyelv a Web szolgáltatások leírására és azok.
A HTML alapjai Havlik Barnabás Készítette:
Számítógépes grafika OpenGL 1. gyakorlat.
Web-grafika (VRML) 10. gyakorlat Kereszty Gábor. Script típusok Elemi típusok: szám: egész vagy lebegőpontos – int / float – 1 / 1.1 string: ‘Hello World!’
Számítógép memória jellemzői
Web-grafika II (SVG) 2. gyakorlat Kereszty Gábor.
A GIMP képszerkesztő program bemutatása Készítette: Rokonál Zoltán
Többdimenziós kockák síkbeli megjelenítése
Lineáris programozás Definíció: Olyan matematikai programozási feladatot nevezünk lineáris programozási feladatnak, amelyekben az L halmazt meghatározó.
Fejlett grafikai algoritmusok Megvilágítási modellek
Diplomamunka Geometriai invariánsokat interpoláló rekurzívan finomítható felületek Valasek Gábor ELTE IK, 2008.
Geometriai invariánsokat interpoláló rekurzívan finomítható felületek
Számítástechnikai szoftver üzemeltető
Számítógépes grafika 5. gyakorlat. Előző órán Textúrázási módok Pixel shader használata.
Számítógépes Grafika Programtervező informatikus (esti)‏ Textúrázás.
2008/2009 tavasz Klár Gergely  A DirectX egy alacsonyszintű API gyűjtemény  Multimédiás alkalmazások futtatására, írására szolgál 
2008/2009 tavasz Klár Gergely  Gyakorlatok időpontjai: ◦ Szerda 10:05–11:35 ◦ Csütörtök 10:00+ε –11:30+ε  Gyakvez: ◦ Klár Gergely ◦
Bevezetés az alakmodellezésbe I. Budapesti Műszaki Főiskola Neumann János Informatikai Főiskolai Kar A Műszaki Tervezés Rendszerei 2000/2001 tanév, I.
Grafikus tervezőrendszerek programozása 7. előadás.
Grafikus tervezőrendszerek programozása 11. előadás.
DirectX9 empty project Szécsi László. Visual Studio Első indításkor C++ választása.
Environment mapping Szécsi László. Új osztály: Lab3EnvMap copy&paste: Lab2Trafo.h -> Lab3EnvMap.h copy&paste: Lab2Trafo.cpp -> Lab3EnvMap.cpp copy&paste:
Transzformációk, textúrák, árnyalás Szécsi László.
DirectX9 empty project Szécsi László. Project létrehozása Microsoft DirectX SDK (August 2008) telepítése Start Menu \ Microsoft DirectX SDK (August 2008)\
Rendering pipeline Ogre3D
Textúrák Grafikus játékok fejlesztése Szécsi László g07-texture.
Grafikus játékok fejlesztése Szécsi László t09-texture
Pipeline Vertex shader Fragment shader. Transzformációs modul A modellünket a saját koordinátarendszerében adjuk meg Azonban a saját koordinátarendszerükben.
Számítógépes grafika DirectX 2. gyakorlat. Emlékeztető Előző órán áttekintettük a szükséges WinAPI- s alapokat Illetve röviden beletekintettünk a félév.
Számítógépes grafika DirectX 5. gyakorlat. Emlékeztető Háromdimenziós alapok befejezése Textúrázás.
OpenGL 4 shaderek, GLSL Valasek Gábor
GPGPU A grafikus hardver általános célú felhasználása
Jeni László Attila Klár Gergely
Web-grafika II (SVG) 6. gyakorlat Kereszty Gábor.
Nevezetes algoritmusok: Fa megvalósítása Készítette: Várkonyi Tibor Zoltán.
2.2. Az egyenes és a sík egyenlete
2. gyakorlat DirectX 2007/2008 tavasz Klár Gergely
Webprogramozó tanfolyam
Bevezetés a számítógépi grafikába 2. Paraméteres görbék Paraméteres görbe: 2D-ben: paraméter: általában: kikötések: legyen folytonos legyen folytonosan.
Számítógépes grafika gyakorlat DirectX segítség A következő dolgokra van szükség: CG Toolkit: 
Programozás III KIVÉTEL.
Informatikai eszközök a virtuális valóság szolgálatában Hapák József ELTE-IK X. Eötvös Konferencia.
Számítógépes grafika OpenGL 5. gyakorlat.
Elindult a Vistánk. A Vista véleménye a hardverről.
Számítógépes grafika gyakorlat: DirectX 2007/2008 tavasz Klár Gergely
Számítógépes Grafika OpenGL 4 shaderek, GLSL. OpenGL 4 A következő programozható fázisok vannak a 4.x-es OpenGL-ben: Vertex shader Tesselation control.
Számítógépes grafika DirectX 7. gyakorlat. Emlékeztető Múlt órán mesheket és transzformációkat használtunk Most primitívkirajzoláshoz nézünk meg egy hasznos.
Opencms modul fejlesztés Krizsán Zoltán. Modulok fajtái Nincs előírás, csak tipikus tennivalók: –Content type: új típus(oka)t vezet be. –Template: új.
Bevezetés.  Miért …  … egyszálúan programozunk?  … probléma ez?  Hogyan …  … változik ez?  … tudjuk kihasználni?  Megéri-e párhuzamosítani?
2004 május 27. GÉPÉSZET Komplex rendszerek szimulációja LabVIEW-ban Lipovszki György Budapesti Műszaki Egyetem Mechatronika, Optika és Gépészeti.
OpenGL 2. gyakorlat Valasek Gábor
Vizualizáció és képszintézis
OpenGL II.
C/C++, hobbi játékprogramozás
Bevezetés Tematika Számonkérés Irodalom
Bevezetés GPGPU Alkalmazások.
Előadás másolata:

Számítógépes grafika 3. gyakorlat

Eddig Window programozási alapok Üres ablak létrehozása Kép betöltése Képek mozgatása Ablak manipulálása

Mai órán 3D-s alapismeretek Vertexek használata (program) Shader programozás Vertexek manipulálása shader programokkal

3D alapok Programjainkban ún. modellekkel fogunk dolgozni Modellek készülhetnek általunk DX-ben, vagy egy külső program által létrehozva, amit a programunkba importálunk Ez utóbbi a gyakoribb – komplex objektumok megjelenítése

3D alapok A modellek vertexekből állnak. A vertexek egy megadott össze(nem)kötése ad pontokat, vonalakat, háromszögeket, háromszögláncot, stb. Ezek összessége primitíveket alkot. A primitívek összessége 3D-s térbeli entitást eredményez. Mi általában háromszögekkel fogunk dolgozni

Direct3D primitívjei D3DPT_POINTLIST D3DPT_LINELIST D3DPT_LINESTRIP D3DPT_TRIANGLELIST D3DPT_TRIANGLESTRIP D3DPT_TRIANGLEFAN

Vertexek Gyakorlatilag a csúcspontok De nem csak a koordinátákat tárolhatjuk Normális, szín, stb Vertexek mindig vertex bufferben tárolandók A vertex bufferek erőforrások

Erőforrások DX-ben Minden erőforrás rendelkezik az alábbi tulajdonságokkal: - USAGE: felhasználási mód - FORMAT: adatformátum - POOL: memóriatípus, ahová kerül - TYPE: típus, lehet vertex buffer, render cél, stb.

Erőforrások DX-ben Usage Az alkalmazásnak meg kell mondania, milyen módon szeretné használni az erőforrást D3DUSAGE_POINTS: pont sprite- okat tartalmazó buffer D3DUSAGE_WRITEONLY: csak írni szeretnénk az adott buffert

Erőforrások DX-ben Format Az erőforrás tárolási formátumát jelöli Az erőforrás típusától függenek az értékei Más a back bufferhez, a vertex bufferhez, a megjelenítési felületekhez, stb.

Erőforrások DX-ben Pool Ez határozza meg, hogy az adott erőforrás hová kerül Pl. videókártya-memória, rendszermemória, stb. Ez NEM változtatható futás során. D3DPOOL_DEFAULT: az erőforrás a felhasználása szerinti legjobb helyre kerül.

Erőforrások DX-ben Pool D3DPOOL_MANAGED: amint szükséges, a videókártya által elérhető memóriába másolódnak az erőforrások D3DPOOL_SYSTEMMEM: rendszermemóriába. Ezek nem érhetők el Direct3D Device által, de a lost device sem érinti.

Erőforrások DX-ben Type A típus futási időben derül ki az erőforrást létrehozó eljárástól függően. A CreateTexture eljárás pl értelemszerűen egy textúra típust hoz létre. A CreateVertexBuffer vertex buffer típust...

Vertex bufferek IDirect3DVertexBuffer9 interfész Vertex adatok tároló memóriaterület A csúcsok benne transzformálhatók (eltolás, skálázás, forgatás), világíthatóak, stb Eleve transzformált pontok (RHW) Egy vertex buffert a képességei írnak le

FVF Flexible Vertex Format Leszűkíthető, hogy a csúcspontokkal mit akarunk megcsinálni Az FVF segítségével adhatjuk meg, hogy a vertex bufferben tárolt csúcsokkal mit szeretnénk kezdeni. D3DFVF_XYZ, D3DFVF_XYZRHW, D3DFVF_NORMAL, D3DFVF_DIFFUSE

Lássuk A lunyi.web.elte.hu címről A 3. óra mappájában Az 1-es vagy a 2-es kódot nézzük

CG C for Graphics NVidia fejlesztette az évezred elején (MS) C-n alapuló magas szintű nyelv a grafikus hardver programozásához HLSL vagy GLSL kódot generál a CG fordító

CG típusok Szokásos C-s adattípusok További alap adattípusok: - half: 16 bites lp - fixed: 12 bites fp - sampler: textúrához Plusz - float3, float4x4 ...

CG műveletek Vektor műveletek - dot - cross Egyéb - lerp Bővebben: http://http.developer.nvidia.com/Cg/index_stdlib.html

Lássuk A lunyi.web.elte.hu címről A 3. óra mappájában Az 3-as vagy a 4-es kódot nézzük