This shows you the differences between two versions of the page.
egc:laboratoare:09 [2020/12/14 22:22] florin_eugen.iancu [Adaugarea unei texturi] |
egc:laboratoare:09 [2021/11/12 19:22] (current) victor.asavei [Cerinte laborator] |
||
---|---|---|---|
Line 126: | Line 126: | ||
{{ egc:laboratoare:lab9texturephoto5.png |}} | {{ egc:laboratoare:lab9texturephoto5.png |}} | ||
+ | |||
+ | Elementele individuale ale unui ''vec4'' pot fi accesate utilizand numele componentelor:\\ | ||
+ | - Pentru date geometrice: ''x, y, z, w''\\ | ||
+ | - Pentru date legate de culori (red, green, blue, alpha): ''r, g, b, a''\\ | ||
+ | - Pentru date de texturare: ''s, t, p, q''\\ | ||
Pentru a omite desenarea fragmentelor care nu sunt vizibile se foloseste directiva de shader ''discard''. | Pentru a omite desenarea fragmentelor care nu sunt vizibile se foloseste directiva de shader ''discard''. | ||
Line 211: | Line 216: | ||
* Ex: Faceti alpha discard daca valoarea ''alpha'' este mai mica de 0.5f | * Ex: Faceti alpha discard daca valoarea ''alpha'' este mai mica de 0.5f | ||
- Creati si incarcati pe GPU o textura random | - Creati si incarcati pe GPU o textura random | ||
- | * completati functia ''Laborator9::CreateRandomTexture'' | + | * completati functia ''Lab9::CreateRandomTexture'' |
* ! generati mipmaps : ''glGenerateMipmap(GL_TEXTURE_2D);'' | * ! generati mipmaps : ''glGenerateMipmap(GL_TEXTURE_2D);'' | ||
* textura va fi folosita in cadrul randarii pe cubul din stanga | * textura va fi folosita in cadrul randarii pe cubul din stanga | ||
Line 231: | Line 236: | ||
Bonus: | Bonus: | ||
- | - Sa se trimita timpul aplicatiei ''Engine::GetElapsedTime()'' catre fragment shader si sa se utilizeze pentru a cicla prin textura de pe globul pamantesc (pe coordonata OY) (doar pentru acel obiect, deci e nevoie de si de o variabila uniform pentru a testa obiectul randat) | + | - Sa se trimita timpul aplicatiei ''Engine::GetElapsedTime()'' catre fragment shader si sa se utilizeze pentru a cicla prin textura de pe globul pamantesc (pe coordonata OX) (doar pentru acel obiect, deci e nevoie de si de o variabila uniform pentru a testa obiectul randat) |
- Sa se roteasca spre directia camerei (doar pe OY) quadul cu textura de iarba astfel incat sa fie orientat tot timpul catre camera. <hidden>Sa se randeze inca de 2 ori aceasi textura in aceasi pozitie dar cu o rotatie (fata de cea pricipala) de +- 30 grade. | - Sa se roteasca spre directia camerei (doar pe OY) quadul cu textura de iarba astfel incat sa fie orientat tot timpul catre camera. <hidden>Sa se randeze inca de 2 ori aceasi textura in aceasi pozitie dar cu o rotatie (fata de cea pricipala) de +- 30 grade. | ||
</hidden> | </hidden> |