<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="hu">
	<id>https://vik.wiki/index.php?action=history&amp;feed=atom&amp;title=2006.01.10.</id>
	<title>2006.01.10. - Laptörténet</title>
	<link rel="self" type="application/atom+xml" href="https://vik.wiki/index.php?action=history&amp;feed=atom&amp;title=2006.01.10."/>
	<link rel="alternate" type="text/html" href="https://vik.wiki/index.php?title=2006.01.10.&amp;action=history"/>
	<updated>2026-04-27T12:20:41Z</updated>
	<subtitle>Az oldal laptörténete a wikiben</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://vik.wiki/index.php?title=2006.01.10.&amp;diff=138291&amp;oldid=prev</id>
		<title>Unknown user: Új oldal, tartalma: „{{GlobalTemplate|Infoalap|SzgGrafVizsga20060110}}  [http://info.sch.bme.hu/document.php?cmd=download_proc&amp;tmp_page=&amp;doc_id=10711 infosite alapján]  ==1. == &lt;b&gt;Írja fe…”</title>
		<link rel="alternate" type="text/html" href="https://vik.wiki/index.php?title=2006.01.10.&amp;diff=138291&amp;oldid=prev"/>
		<updated>2012-10-21T20:16:27Z</updated>

		<summary type="html">&lt;p&gt;Új oldal, tartalma: „{{GlobalTemplate|Infoalap|SzgGrafVizsga20060110}}  [http://info.sch.bme.hu/document.php?cmd=download_proc&amp;amp;tmp_page=&amp;amp;doc_id=10711 infosite alapján]  ==1. == &amp;lt;b&amp;gt;Írja fe…”&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Új lap&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{GlobalTemplate|Infoalap|SzgGrafVizsga20060110}}&lt;br /&gt;
&lt;br /&gt;
[http://info.sch.bme.hu/document.php?cmd=download_proc&amp;amp;tmp_page=&amp;amp;doc_id=10711 infosite alapján]&lt;br /&gt;
&lt;br /&gt;
==1. ==&lt;br /&gt;
&amp;lt;b&amp;gt;Írja fel a projektív sík egy körének egyenletét (kör egyenlet homogén koordinátákban annak analógiájára, ahogyan az egyenes egyenletét a síkban, és a sík egyenletét a térben bevezettük). Mi lesz abból a körből, amelynek középpontja egy ideális ponton van?&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Decartes koordinátákban egy x0, y0 középpontú, R sugarú kör egyenlete: &amp;lt;math&amp;gt; (x-x_{0})^2 + (y-y_{0})^2 = R^2 &amp;lt;/math&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
A projektív síkra lépéshez áttérünk homogén koordinátákra: &amp;lt;math&amp;gt;x = \frac{X}{h}&amp;lt;/math&amp;gt; , &amp;lt;math&amp;gt;y = \frac{Y}{h}&amp;lt;/math&amp;gt; , &amp;lt;math&amp;gt;x_{0} = \frac{X_{0}}{h_{0}}&amp;lt;/math&amp;gt; , &amp;lt;math&amp;gt;y_{0} = \frac{Y_{0}}{h_{0}}&amp;lt;/math&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
Behelyettesítve:	(X/h - X0/h0)2 + (Y/h - Y0/h0) 2 = R2&amp;lt;br&amp;gt;&lt;br /&gt;
Átszorozva (h h0)2 , és innentől megengedve, hogy ezek zérus értéket is felvehessenek, kapjuk a projektív síkon lévő kör egyenletét homogén koordinátákban: (X h0 - X0 h)2 + (Y h0 - Y0 h) 2 = (R h h0)2 &amp;lt;br&amp;gt;&lt;br /&gt;
Ha a középpont ideális pont, akkor h0=0, de X0 és Y0 nem lehet egyszerre 0 (a 0,0,0 nem érvényes). &amp;lt;br&amp;gt;&lt;br /&gt;
Behelyettesítve: (X0 h)2 + (Y0 h) 2 = 0, azaz h=0. &amp;lt;br&amp;gt;&lt;br /&gt;
Ez pedig az ideális egyenes egyenlete, hiszen aX+bY+ch=0 alakú (tehát egyenes), és csak ideális pontok elégítik ki a h=0-t. Tehát a körből az ideális egyenes lesz.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==2. ==&lt;br /&gt;
&amp;lt;b&amp;gt;Írja le, hogy mi történik a csúcspont árnyaló (vertex shader) kimenete és a pixel árnyaló (fragment shader) bemenete között egy GL_TRIANGLES primitív feldolgozása során! A leírásnak olyan részletesnek kell lennie, hogy egy koordinátageometriában jártas programozó implementálni tudja az egyes lépéseket. Összesen 5p.&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* 1. A kimeneti regiszterekben (POSITION, TEXCOORD0..) a hardver összevár három csúcspontot, amelyek egy háromszöget alkotnak (0.5p).&lt;br /&gt;
* 2. A háromszöget homogén-koordinátákban a Sutherland-Hodgeman algoritmussal vágja az alábbi egyenletekkel definiált vágósíkokra: -w&amp;lt;x&amp;lt;w, -w&amp;lt;y&amp;lt;w, -w&amp;lt;z&amp;lt;w (azaz egy [x,y,z,w] pont akkor számít belső pontnak, ha mind a 6 egyenlőtlenség teljesül) (1p). A vágóalgoritmus egyenként dolgozza fel a vágósíkokat, és vágja a háromszöget. Ha egy két két végpontja közül pontosan az egyik sérti meg az adott egyenlőtlenséget, akkor azt kicseréli a metszéspontra. Példaul a &amp;amp;#8211;w&amp;lt;x esetén a [x1,y1,z1,w1] és [x2,y2,z2,w2] végpontú élre az	-w1&amp;amp;#61655;t -w2&amp;amp;#61655;(1-t) = x1&amp;amp;#61655;t +x2&amp;amp;#61655;(1-t) egyenletet oldja meg t-re és a metszéspontot a [x1,y1,z1,w1] &amp;amp;#61655;t + [x2,y2,z2,w2] &amp;amp;#61655;(1-t) kifejezésbe helyettesíti be. Ugyanezt teszi az összes regiszterekben lévő csúcspont tulajdonsággal (pl. szín, textúrakoordináta) (1p).&lt;br /&gt;
* 3. A kapott sokszöget újraháromszögesíti (0.5p).&lt;br /&gt;
* 4. Alkalmazza a képernyő transzformációt, azaz a [-1,1]x[-1,1]x[-1,1] kockát a glViewport-tal beállított [viewport.left,viewport.right]x[viewport.bottom,viewport.top]x[0,1]-re képezi le (megjegyzés, a z tartomány lehet más is, de ezt nem tanultuk, aki mégis tudja, az plusz pontot kap) (0.5p).&lt;br /&gt;
* 5. A háromszög xy vetületének kitöltéséhez kiszámítja az inkremenseket a z-re és az összes tulajdonságra (szín, textúra koordináták) (a képleteket illetően lásd a következő feladatot) (0.5p).&lt;br /&gt;
* 6. A háromszöget pásztánként kitölti meglátogatva azokat a pixeleket, úgy, hogy inkrementális elven az összes csúcsponttulajdonságot a belső pixelre lineárisan interpolálja (1p).&lt;br /&gt;
* 7. Meghívja a pixel árnyalót.&lt;br /&gt;
Olyan nyalánkságokat, mint például az &amp;amp;#8222;early z-cull&amp;amp;#8221; nem tanultunk, ezért nem kell tudni. Aki leírta, annak többletpont jár.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==3. ==&lt;br /&gt;
&amp;lt;b&amp;gt;Adott egy háromszög képernyő koordinátarendszerben a következő csúcsokkal: (0,0,0), (10, 0, 10), (8, 10, 4). Mekkora azon két pont z koordinátáinak különbsége, amelyek az (5,5) illetve a (6,5) pixelen keresztül látszanak? Pontozás, képlet: 2p, számítás 3p.&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A háromszög síkjának egyenlete nx &amp;amp;#61655; x + ny &amp;amp;#61655; y + nz &amp;amp;#61655; z + d = 0, ahol a [nx , ny, nz] a háromszög síkjának normálvektora. &lt;br /&gt;
Ebből: z(x,y) = -d/ nz - nx/nz &amp;amp;#61655; x - ny/nz &amp;amp;#61655; y.  (1p)&lt;br /&gt;
Azaz a kért különbség: z(x+1,y) - z(x,y) = - nx/nz  (1p) &lt;br /&gt;
Akkor most számokkal. A normál vektor a két élvektor vektoriális szorzatával kapható meg (1p):&lt;br /&gt;
  (2p).	Tehát a kért különbség: 100/100 = 1&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==4. ==&lt;br /&gt;
&amp;lt;b&amp;gt;&lt;br /&gt;
Egy diffúz felületet változó erősségű égboltfény világít meg egy adott hullámhosszon, amelyen a felület albedója 1. A megvilágítás erőssége az alábbi függvénnyel jellemezhető: &lt;br /&gt;
1/cosT [W/st/m^2], ha T &amp;gt; 45 fok,	illetve sqrt(2) [W/st/m^2], ha T &amp;lt;= 45 fok, ahol T a felület normálisa és az égboltpont iránya közötti szög. Mekkora sugársűrűség éri a szemünket az adott hullámhosszon, ha a nézeti irány éppen 60 fokot zár be a felületi normálistól, és 3 méter távolságból szemléljük a diffúz felületet? Pontozás: adott szituációra felírt képlet 2p, számítás 3p.&lt;br /&gt;
&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Először is diffúz felületeknél a nézeti irány lényegtelen, a sugársűrűség pedig nem változik a távolsággal, tehát ezek az adatok nem kellenek, és a BRDF 1/? (1p). &amp;lt;br&amp;gt;&lt;br /&gt;
Áttérve gömbi koordináták szerinti integrálásra, és az integrálási tartományt két részre bontva az eltérő bejövő sugársűrűség függvény tartománya szerint:&lt;br /&gt;
&lt;br /&gt;
	 {{InLineImageLink|Infoalap|SzgGrafVizsga20060110|grafika_4feladat.PNG}}&lt;br /&gt;
&lt;br /&gt;
-- [[HoaiNam|nam]] - 2007.01.06.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Infoalap]]&lt;/div&gt;</summary>
		<author><name>Unknown user</name></author>
	</entry>
</feed>