Előadást letölteni
Az előadás letöltése folymat van. Kérjük, várjon
1
Számítógépes grafika 3. gyakorlat
2
Eddig Window programozási alapok Üres ablak létrehozása Kép betöltése
Képek mozgatása Ablak manipulálása
3
Mai órán 3D-s alapismeretek Vertexek használata (program)
Shader programozás Vertexek manipulálása shader programokkal
4
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
5
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
6
Direct3D primitívjei D3DPT_POINTLIST D3DPT_LINELIST D3DPT_LINESTRIP
D3DPT_TRIANGLELIST D3DPT_TRIANGLESTRIP D3DPT_TRIANGLEFAN
7
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
8
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.
9
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
10
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.
11
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.
12
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.
13
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...
14
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
15
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
16
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
17
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ó
18
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 ...
19
CG műveletek Vektor műveletek - dot - cross Egyéb - lerp Bővebben:
20
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
Hasonló előadás
© 2024 SlidePlayer.hu Inc.
All rights reserved.