Számítógépes Grafika 6. gyakorlat Programtervező informatikus (esti)‏ 2009/2010 őszi félév.

Slides:



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

Mellár János 3. óra Szeptember 16. v
ALAKZATOK TRANSZFORMÁCIÓJA ÚJ KÉPSÍKOK BEVEZETÉSÉVEL
Matematika II. 4. előadás Geodézia szakmérnöki szak 2010/2011. tanév Műszaki térinformatika ágazat tavaszi félév.
Inkrementális 3D képszintézis
Számítógépes Grafika 6. gyakorlat Programtervező informatikus (esti)‏ 2009/2010 őszi félév.
Transzformációk kucg.korea.ac.kr.
A számítógépi grafika matematikai háttere
Számítógépes grafika, PPKE-ITK, Benedek Csaba, D képszintézis 4. előadás.
2. előadás GÉPRAJZ, GÉPELEMEK I..
Számítógépes grafika OpenGL 1. gyakorlat.
Számítógépes Grafika 1-2. gyakorlat
3. Vetületi ábrázolások számítási eljárásai
DirectX a grafika laboron kívül. Mire lesz szükség Itt vannak a szükséges include és lib: iles/DXMinimalPack.zip.
Web-grafika II (SVG) 2. gyakorlat Kereszty Gábor.
P z : egy „elemi” projektív transzformáció M = ( m m m m ); P z = ( ) | m m m m | | | | m m m m | | | ( p p p p ) ( 0 0 r 1 ) az.
HTML oldal felépítése Készítette: Pataki Arnold
,,Én így tanítanám az informatikát”
Számítógépes Grafika 1. gyakorlat Programtervező informatikus (esti)‏ 2009/2010 őszi félév.
Többdimenziós kockák síkbeli megjelenítése
2D képszintézis és textúrák
Számítógépes Grafika 2. gyakorlat Programtervező informatikus (esti) 2011/2012 őszi félév.
3.3. Axonometrikus ábrázolások Rövid áttekintés
6. A 3D grafika alapjai 6.1. A 3D szerelőszalag fölépítése
3. Vetületi ábrázolások számítási eljárásai
Számítógépes Grafika 1-2. gyakorlat Programtervező informatikus (esti)‏ 2011/2012 őszi félév.
Számítógépes Grafika Programtervező informatikus (esti)‏ Textúrázás.
Web-grafika (VRML) 1. gyakorlat Nyitrai Erika Varga Balázs.
Számítógépes Grafika Megvilágítás Programtervező informatikus (esti)‏
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 ◦
XHTML – a tanultak összefoglalása
Prezentáció a prezentációról
1.Labor : Modellezés. Blender D:\GameDev\Blender3D\blender.exe D:\GameDev\Blender3D\blender.exe Ismerkedjünk az interface-el!!!
Hyper Text Markup Language
Honlap készítés 4. óra.
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 5. gyakorlat. Emlékeztető Háromdimenziós alapok befejezése Textúrázás.
Számítógépes Grafika 4. gyakorlat Programtervező informatikus (esti)‏ 2011/2012 őszi félév.
Számítógépes Grafika 7. gyakorlat Programtervező informatikus (esti)‏ 2009/2010 őszi félév.
Web-grafika II (SVG) 3. gyakorlat Kereszty Gábor.
Web-grafika II (SVG) 1. gyakorlat
Web-grafika II (SVG) 8. gyakorlat Kereszty Gábor.
Web-grafika II (SVG) 6. gyakorlat Kereszty Gábor.
– SQL 3: SELECT - 1. – Tarcsi Ádám, január 31. Adatbázis gyakorlat.
2.2. Az egyenes és a sík egyenlete
2. Koordináta-rendszerek és transzformációk
Grafikai lehetőségek WPF-ben Egyszerű grafika (Shape-ek)
Turócziné Kiscsatári Nóra
Számítógépes grafika I. AUTOCAD alapok 2. előadás.
Táblázatok.
Geometriai transzformációk
HIPERKOCKA.
Számítógépes grafika I. AUTOCAD alapok
Számítógépes Grafika 4. gyakorlat Programtervező informatikus (esti)‏ 2009/2010 őszi félév.
Számítógépes grafika OpenGL 5. gyakorlat.
Web-grafika (VRML) 1. gyakorlat Nyitrai Erika Varga Balázs alapján Kereszty Gábor.
ALAKZATOK TRANSZFORMÁCIÓJA ÚJ KÉPSÍKOK BEVEZETÉSÉVEL
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.
Web-grafika (VRML) 2. gyakorlat Nyitrai Erika Varga Balázs.
Számítógépes Grafika 3. gyakorlat Programtervező informatikus (esti)‏ 2009/2010 őszi félév.
Számítógépes Grafika 5. gyakorlat Programtervező informatikus (esti)‏ 2009/2010 őszi félév.
3.2. Axonometria – Műszaki rajzok párhuzamos vetítéssel
Perspektív projekció és kamera paraméterek. Szükséges transzformációk Világkoordináta rendszer (3D) Kamera koordinátarendszer (3D) Képsík koordináták.
1 Viewing Megtekintés. 2 Miről lesz szó? ► Modellek megtekintése különböző, vagy tetszőleges irányokból ► Nézőpont áthelyezése a háromdimenziós térben.
Készítette: Horváth Zoltán
Unity 3D alapok + gyakorlás.
Grafikus Rendszerek 6. Camera.
Táblázatok A táblázat megadása a tag használatával lehetséges. A és tageken belül: a és tagek között adhatjuk meg a.
ELEMI GEOMETRIAI ISMERETEK
Előadás másolata:

Számítógépes Grafika 6. gyakorlat Programtervező informatikus (esti)‏ 2009/2010 őszi félév

Információk Gyakorlati diák:

Utasítások size(w, h, m)‏ – Az m a módot határozza meg: JAVA2D: az alap renderelő, pontos és lassú P2D: Processing saját gyors, de rosszabb minőségű renderelője P3D: saját 3D-s renderelő, szintén gyors de pontatlan OgenGL PDF: negyedik paraméterben output fájl neve – A maximális szélesség és magasság az OS által korlátozott

OpenGL Nem elég a size-ban harmadik paraméternek megadni Importálni kell az OGL-t: import processing.opengl.*;

Képi koordinátarendszer

Processing 3D

OpenGL Az OpenGL jobbsodrású koordinátarendszert használ De nem kell ezzel foglalkozni Processing-ből akkor sem, ha az OpenGL renderer-t használjuk

Transzformációk translate(x, y, z) rotateX(a), rotateY(a), rotateZ(a): – „a” radiánnyi elforgatás adott tengely közül, ha „a”>0 akkor óra járásával ellentétes irányban – PI: beépített konstans – radians(angle): angle-t szögben értelmezve átváltja radiánba – degrees(rad): radiánból szögbe váltás scale(size), scale(x, y), scale(x, y, z): – Léptékezés

Transzformációk rotateX

Transzformációk rotateY

Transzformációk rotateZ

Transzformációk applyMatrix( n00, n01, n02, n03 n04, n05, n06, n07 n08, n09, n10, n11 n12, n13, n14, n15): – Tetszőleges affin transzformáció

Transzformációk A fenti transzformációk a koordinátarendszert transzformálják Egy transzformáció után következő újabb transzformáció már az új koordinátarendszert módosítja!

Transzformációk

1. Feladat Forgassuk a középpont körül ezt a téglalapot, a meglévő kódot nem módosítva már! void setup() { size(200, 200, P3D); } void draw() { background(140); rect(0, 0, 20, 40); }

Transzformációk

T1T1 T2T2 TnTn... p

Transzformációk T1T1 T2T2 TnTn... p = T 1 *T 2 *...*T n *p

Transzformációk pushMatrix(): – Elmenti az aktuális koordinátarendszert popMatrix(): – A legutoljára elmentett koordinátarendszert hívja vissza

Példa fill(0); rect(0, 0, 50, 50); pushMatrix(); translate(20, 20); fill(128); rect(0, 0, 50, 50); translate(10, 10); fill(255); rect(0, 0, 50, 50); popMatrix(); translate(10, 10); fill(170); rect(0, 0, 50, 50);

Példa fill(0); rect(0, 0, 50, 50); pushMatrix(); translate(20, 20); fill(128); rect(0, 0, 50, 50); translate(10, 10); fill(255); rect(0, 0, 50, 50); popMatrix(); translate(10, 10); fill(170); rect(0, 0, 50, 50);

Példa fill(0); rect(0, 0, 50, 50); pushMatrix(); translate(20, 20); fill(128); rect(0, 0, 50, 50); translate(10, 10); fill(255); rect(0, 0, 50, 50); popMatrix(); translate(10, 10); fill(170); rect(0, 0, 50, 50);

Példa fill(0); rect(0, 0, 50, 50); pushMatrix(); translate(20, 20); fill(128); rect(0, 0, 50, 50); translate(10, 10); fill(255); rect(0, 0, 50, 50); popMatrix(); translate(10, 10); fill(170); rect(0, 0, 50, 50);

Példa fill(0); rect(0, 0, 50, 50); pushMatrix(); translate(20, 20); fill(128); rect(0, 0, 50, 50); translate(10, 10); fill(255); rect(0, 0, 50, 50); popMatrix(); fill(170); rect(10, 10, 50, 50);

Transzformációk Először közös koordinátarendszerbe helyezzük a színtér alkotóelemeit - ez a világ transzformáció Utána az aktuális nézőpontunknak megfelelően tovább transzformálódik a színtér - ez a nézet transzformáció Végül pedig létrejön a 3D-s színterünk 2D-s vetülete - ez a vetítési transzformáció

Kamera center eye up X Y Z

Kamera camera(eyeX, eyeY, eyeZ, centerX, centerY, centerZ, upX, upY, upZ): – Két pont és egy vektor segítségével megadhatjuk

Vetítési transzformáció perspective(fov, aspect, zNear, zFar) – Perspektív transzformáció beállítása, aspect a szélesség/magasság arány

Vetítési transzformáció ortho(left, right, bottom, top, near, far): – Ortogonális vetítés – left, right: a vágótéglatest bal és jobb síkja – top, bottom: a vágótéglatest felső és alsó síkja – near: a legnagyobb távolság az origótól a nézőig – far: a legnagyobb távolság az origótól a nézőtől el

Beépített alakzatok sphere(radius) – Origó középpontú gömb box(size), box(w, h, d): – Origó középpontú, size élhosszúságú kocka, vagy w széles, h magas és d mély téglatest

Példa void setup() { size(400, 400, P3D); } void draw() { background(140); box(100); translate(150, 0, 0); box(50); camera( 200, 200, 0, 0, 0, 0, 0, -1, 0 ); }

2. Feladat Innen tölthetjük le az előbbit: 06/ForgAlap.zip 06/ForgAlap.zip Az egér jobbra-balra mozgatásával járjuk körbe a kockáinkat! A fel-le gomb segítségével közelítsünk/távolodjunk az origótól

3. Feladat Az „o” billentyű hatására váltsunk át ortogonális vetítésre A „p” billentyűvel térjünk vissza perspektívre

Feladat + Forogjon a kisebbik kocka a saját tengelyei körül illetve a nagyobbik kocka körül, mindhárom tengely mentén! Legyen kisebbik kockából 40, mind különböző pályán mozogjon Mindegyik kocka színe változzon folyamatosan, folytonosan

Néhány megjelenítési mód

4. Feladat A fenti három móddal történő megjelenítést valósítsuk meg az „1”, „2”, „3” gombokkal történő váltással!

Utasítások noFill(): – Nem lesz kitöltése a zárt alakzatoknak beginShape(), endShape(MODE): – Csúcspontokból (vertex) álló összetett alakzatok (shape) megjelenítése – A MODE határozza meg, miként értelmezendőek a beginShape() és endShape() hívások között definiált csúcspontok („összekötési szabály”)

Utasítások

5. Feladat Csináljunk egy tetraédert háromszöglistával! Kiindulás: 06/TetraederAlap.zip 06/TetraederAlap.zip