This shows you the differences between two versions of the page.
egc:laboratoare:01 [2022/10/10 16:31] andrei.lambru [Cerințe generale de laborator] |
egc:laboratoare:01 [2024/10/06 15:43] (current) silviu.stancioiu00 [Laboratorul 1] |
||
---|---|---|---|
Line 227: | Line 227: | ||
* Pentru generarea soluției pentru platforma dorită, urmați pașii de instalare și generare descriși la [[https://github.com/UPB-Graphics/gfx-framework|GFX Framework]] | * Pentru generarea soluției pentru platforma dorită, urmați pașii de instalare și generare descriși la [[https://github.com/UPB-Graphics/gfx-framework|GFX Framework]] | ||
- | == Visual Studio 2019 == | + | == Visual Studio 2022 == |
- | * În cadrul laboratorului vom utiliza [[https://www.visualstudio.com/vs/community/|Visual Studio 2019 Community Edition]] | + | * În cadrul laboratorului vom utiliza [[https://www.visualstudio.com/vs/community/|Visual Studio 2022 Community Edition]] |
* Installer-ul de Visual Studio vine cu posibilitatea de a instala modular doar ceea ce este necesar. Pentru acest laborator trebuie instalat doar modulul default **Desktop development with C++**, care se regăsește în **Workloads** | * Installer-ul de Visual Studio vine cu posibilitatea de a instala modular doar ceea ce este necesar. Pentru acest laborator trebuie instalat doar modulul default **Desktop development with C++**, care se regăsește în **Workloads** | ||
* După generarea cu CMake, framework-ul va conține in folderul de **/build** un proiect pentru Visual Studio: __GFXFramework.sln__ | * După generarea cu CMake, framework-ul va conține in folderul de **/build** un proiect pentru Visual Studio: __GFXFramework.sln__ | ||
Line 290: | Line 290: | ||
// implementeaza operatia de clear | // implementeaza operatia de clear | ||
- | void glClear(GL_COLOR_BUFFER_BIT); | + | void glClear(GLbitfield mask); |
</code> | </code> | ||
Line 316: | Line 316: | ||
- Descărcați framework-ul, compilați și rulați proiectul | - Descărcați framework-ul, compilați și rulați proiectul | ||
- | * Trebuie să deschideți proiectul GFXFramework.sln (din folderul de __/build__) în Visual Studio 2019 | + | * Trebuie să deschideți proiectul GFXFramework.sln (din folderul de __/build__) în Visual Studio 2022 |
- Încărcați un alt model 3D și randați-l în scenă la o poziție diferită față de cele 2 cuburi | - Încărcați un alt model 3D și randați-l în scenă la o poziție diferită față de cele 2 cuburi | ||
* __/assets/models__ conține o serie de modele 3D ce pot fi încărcate | * __/assets/models__ conține o serie de modele 3D ce pot fi încărcate | ||
Line 329: | Line 329: | ||
<hidden> | <hidden> | ||
+ | Cerinte alternative: | ||
+ | * 3.1 La apăsarea unei taste să se faca toggle intre utilizarea apelului glClear si neutilizarea lui, sa vada rezultatul care apare cand nu se sterge ecranul. | ||
+ | * 3.2 La apasarea a 3 taste diferite sa schimbe culoarea de ștergere a ecranului. Fiecare tasta schimba explicit o anumita culoare: tasta 1 -> rosu, tasta 2 -> galbel si tasta 3 -> cyan. In felul acesta se obisnuiesc putin si cu modelul de culoare. | ||
+ | * 4.1 Unul dintre cele 3 forme prin care se cicleaza sa fie format din doua modele 3d, de exemplu teapot care sta pe box. | ||
+ | * 5.1 Sa se aplice deplasarea pe obiectul prin care se cicleaza | ||
+ | * 5.2 Suplimentar, la apasarea tastelor Z si X sa se schimbe scara obiectului, continuu, cu window->KeyHold(). | ||
+ | |||
Bonusuri posibile: | Bonusuri posibile: | ||
* Rotația continuă a unui obiect în jurul unui punct, cu o anumită rază. | * Rotația continuă a unui obiect în jurul unui punct, cu o anumită rază. |