„SzgGrafVizsga20120523” változatai közötti eltérés
Új oldal, tartalma: „{{GlobalTemplate|Infoalap|SzgGrafVizsga20120523}} ==1. Feladat== Írjon Cg nyelven olyan csúcspont-árnyaló és képpont-árnyaló programokat, amelyekkel az [[OpenG…” |
|||
| 11. sor: | 11. sor: | ||
Írjon [[OpenGL]] programot, ami egy vulkanikus terepet jelenít meg. A terepen n darab vulkán van, mindegyik a '''2D középpontjával''' adott, és ismert, hogy működésük során exp(-r^2) magasságú kőzetet terítettek az eredetileg sík terepre, ahol r a vulkán közepétől való távolság a síkon. (Vagyis r^2 = (x-xi)^2 + (y-yi)^2, ahol (xi, yi) a vulkán középpontja). Az egyes vulkánok hozzájárulása összeadódott. | Írjon [[OpenGL]] programot, ami egy vulkanikus terepet jelenít meg. A terepen n darab vulkán van, mindegyik a '''2D középpontjával''' adott, és ismert, hogy működésük során exp(-r^2) magasságú kőzetet terítettek az eredetileg sík terepre, ahol r a vulkán közepétől való távolság a síkon. (Vagyis r^2 = (x-xi)^2 + (y-yi)^2, ahol (xi, yi) a vulkán középpontja). Az egyes vulkánok hozzájárulása összeadódott. | ||
A terepet rajzolja '''64x64''' felbontású magasságmezőként a | A terepet rajzolja '''64x64''' felbontású magasságmezőként a [-32..32, -32..32] tartományban. A csúcspontok normálvektorait számolja explicit módon a felület képletéből. A színteret az [[OpenGL]] nullás indexű fényforrása világítsa meg, annak alapértelmezett beállításai mellett. A '''kamera pozícióját, orientációját és egyéb paramétereit''' adottnak tekintheti, a transzformációs mátrixokat viszont önnek kell beállítania. Nem kell foglalkoznia a GLUT inicializálásával, és feltételezheti, hogy a következő callback függvényt regisztráltuk: | ||
glutDisplayFunc(onDisplay); | glutDisplayFunc(onDisplay); | ||