„Számítógépes grafika és képfeldolgozás - Vizsga, 2013.06.19.” változatai közötti eltérés

A VIK Wikiből
Ugrás a navigációhoz Ugrás a kereséshez
a (Hryghr átnevezte a(z) Grafika vizsga 20130619 lapot Számítógépes grafika és képfeldolgozás - Vizsga, 2013.06.19. lapra átirányítás nélkül)
 
(9 közbenső módosítás, amit 3 másik szerkesztő végzett, nincs mutatva)
4. sor: 4. sor:
  
 
;Módosítsa a kódot úgy, hogy a S-D helyett egy Donatellácska-Győzike törvényt használjon, ami annyiban tér el a S-D-től, hogy minden sin helyett cos áll. (15p)
 
;Módosítsa a kódot úgy, hogy a S-D helyett egy Donatellácska-Győzike törvényt használjon, ami annyiban tér el a S-D-től, hogy minden sin helyett cos áll. (15p)
 +
Megjegyzés: Konkrét sinus egy se volt benne (így leírva), inkább azonosságok (is) kellettek, pl.: 1 - cosa*cosa, azaz 1 - cos négyzet, ami nem más mint a sin négyzet, a sin négyzet + cos négyzet = 1 átalakításból.<br /><br />
  
 
==2. feladat==
 
==2. feladat==
Vertex shaderes feladat. Adott egy kódrészlet, "meghibásodott az a memóriaterület", ami pont a három állapot (state.matrix.mvp, state.matrix.modelview, state.modelview.intrans) értékét tárolja, alakítsuk át a kódot úgy, hogy az értékük nélkül is ugyan azt a képet kapjuk.<br />
+
Vertex shaderes feladat. Adott egy kódrészlet, "meghibásodott az a memóriaterület", ami pont a három állapot (state.matrix.mvp, state.matrix.modelview, state.modelview.invtrans) értékét tárolja, alakítsuk át a kódot úgy, hogy az értékük nélkül is ugyan azt a képet kapjuk. (Adott volt a CPU program(glscale+gluLookAt+glvertex utasítások voltak főleg), meg a Vertex shader program, de csak az utóbbin változtathattunk. + Ismeretlen fragmens shader) (15pont) <br />
 
<br />
 
<br />
...<br />
+
 
uniform float4x4 MVP : state.matrix.mvp<br />
+
void VertexShader (<br />
uniform float4x4 MV : state.matrix.modelview<br />
+
in float4 position : POSITION,<br />
uniform float4x4 MVIT : state.matrix.modelview.invtrans<br />
+
in float3 normal : NORMAL,<br />
...<br />
+
in ... view : VIEW, //? Nem biztos<br />
 +
uniform float4x4 MVP : state.matrix.mvp,<br />
 +
uniform float4x4 MV : state.matrix.modelview,<br />
 +
uniform float4x4 MVIT : state.matrix.modelview.invtrans,<br />
 +
out float4 hposition : POSITION,<br />
 +
out ..., <br />
 +
out ...) {<br />
 
hposition = mul(MVP, position);<br />
 
hposition = mul(MVP, position);<br />
float4 cp = mul(MV, position);<br />
+
view = mul(MV, position);<br />
cnormal = mul(MVIT, normal).xyz;<br />
+
cnormal = mul(MVIT, normal).xyz; //Szerintem ez nem így volt, de nem emlékszem rá, hogy mi volt itt pontosan<br />
...
+
}
  
 
== Bónusz kérdések ==
 
== Bónusz kérdések ==
22. sor: 29. sor:
 
Darabja 1 pontért a hőségre való tekintettel.
 
Darabja 1 pontért a hőségre való tekintettel.
  
#
+
# Hatásmetszet (Talán, nem biztos.)
 
#
 
#
 
# CSG
 
# CSG
 
# Z-fighting
 
# Z-fighting
 
#
 
#
 +
 +
[[Category:Infoalap]]

A lap jelenlegi, 2014. január 3., 20:08-kori változata

1. feladat

Adott volt egy C++ kód, ami a visszaverődést, beletörést és a Fresnel függvényt valósította meg a Snellius-Descartes törvény alapján.

Módosítsa a kódot úgy, hogy a S-D helyett egy Donatellácska-Győzike törvényt használjon, ami annyiban tér el a S-D-től, hogy minden sin helyett cos áll. (15p)

Megjegyzés: Konkrét sinus egy se volt benne (így leírva), inkább azonosságok (is) kellettek, pl.: 1 - cosa*cosa, azaz 1 - cos négyzet, ami nem más mint a sin négyzet, a sin négyzet + cos négyzet = 1 átalakításból.

2. feladat

Vertex shaderes feladat. Adott egy kódrészlet, "meghibásodott az a memóriaterület", ami pont a három állapot (state.matrix.mvp, state.matrix.modelview, state.modelview.invtrans) értékét tárolja, alakítsuk át a kódot úgy, hogy az értékük nélkül is ugyan azt a képet kapjuk. (Adott volt a CPU program(glscale+gluLookAt+glvertex utasítások voltak főleg), meg a Vertex shader program, de csak az utóbbin változtathattunk. + Ismeretlen fragmens shader) (15pont)

void VertexShader (
in float4 position : POSITION,
in float3 normal : NORMAL,
in ... view : VIEW, //? Nem biztos
uniform float4x4 MVP : state.matrix.mvp,
uniform float4x4 MV : state.matrix.modelview,
uniform float4x4 MVIT : state.matrix.modelview.invtrans,
out float4 hposition : POSITION,
out ...,
out ...) {
hposition = mul(MVP, position);
view = mul(MV, position);
cnormal = mul(MVIT, normal).xyz; //Szerintem ez nem így volt, de nem emlékszem rá, hogy mi volt itt pontosan
}

Bónusz kérdések

Darabja 1 pontért a hőségre való tekintettel.

  1. Hatásmetszet (Talán, nem biztos.)
  2. CSG
  3. Z-fighting