This shows you the differences between two versions of the page.
ppbg:tema:2024 [2024/12/10 19:52] andrei.lambru |
ppbg:tema:2024 [2024/12/10 19:57] (current) andrei.lambru |
||
---|---|---|---|
Line 180: | Line 180: | ||
Rezultatul vizual din imagine este obținut după aplicarea deformării pe baza curburii, dar coordonata (x, 0, z) păstrată în cea de-a doua textură de culoare este cea calculată înainte de realizarea curburii. Această coordonată este utilizată pentru specificarea locației de destinație a elicopterului, fără să se țină cont de deformarea suprafeței asteroidului. Aceasta din urmă este doar un efect vizual realizat în vertex shader, cum s-a menționat anterior. | Rezultatul vizual din imagine este obținut după aplicarea deformării pe baza curburii, dar coordonata (x, 0, z) păstrată în cea de-a doua textură de culoare este cea calculată înainte de realizarea curburii. Această coordonată este utilizată pentru specificarea locației de destinație a elicopterului, fără să se țină cont de deformarea suprafeței asteroidului. Aceasta din urmă este doar un efect vizual realizat în vertex shader, cum s-a menționat anterior. | ||
- | Pentru a extrage coordonata (x, 0, z) din cea de-a doua textură de culoare din obiectul de tip framebuffer creat de voi, la momentul apăsării butonului dreapta de la mouse de către utilizator, trebuie extrasă informația din pixelul in dreptul căruia se afla cursorul la momentul apăsării butonului. Codul pentru acest proces arată în felul următor: | + | Pentru a extrage coordonata (x, 0, z) din cea de-a doua textură de culoare din obiectul de tip framebuffer creat de voi, la momentul apăsării butonului dreapta de la mouse de către utilizator, trebuie extrasă informația din pixelul în dreptul căruia se află cursorul la momentul apăsării butonului. Codul pentru acest proces arată în felul următor: |
<code cpp> | <code cpp> | ||
Line 197: | Line 197: | ||
=== Selecție obiect === | === Selecție obiect === | ||
- | Pentru a realiza procesul de selecție a unui obiect, se păstrează suplimentar în canalul A din cea de-a doua textură de culoare a obiectului de tip framebuffer creat de voi un identificator pentru toate obiectele din scenă. O prezentare vizuala a acestor identificatori, sub formă de nuanțe de gri, se poate vedea în imaginea de mai jos. | + | Pentru a realiza procesul de selecție a unui obiect, se păstrează suplimentar în canalul A din cea de-a doua textură de culoare a obiectului de tip framebuffer creat de voi un identificator pentru toate obiectele din scenă. O prezentare vizuală a acestor identificatori, sub formă de nuanțe de gri, se poate vedea în imaginea de mai jos. |
{{ :ppbg:tema:selection.png?700 |}} | {{ :ppbg:tema:selection.png?700 |}} | ||
Line 210: | Line 210: | ||
=== Comportament cameră observator === | === Comportament cameră observator === | ||
- | În situația în care se utilizează framework-ul de laborator, pentru desenarea geometriei din perspectiva camerei observator, se poate utiliza obiectul de tip ''Camera'', după cum urmeaza: | + | În situația în care se utilizează framework-ul de laborator, pentru desenarea geometriei din perspectiva camerei observator, se poate utiliza obiectul de tip ''Camera'', după cum urmează: |
<code cpp> | <code cpp> | ||
auto camera = GetSceneCamera(); | auto camera = GetSceneCamera(); | ||
- | // pozitia relativa a camerei fata de pozitia personajului | + | // pozitia relativa a camerei fata de pozitia elicopterului |
glm::vec3 relativeCameraPosition = ...; | glm::vec3 relativeCameraPosition = ...; | ||
Line 274: | Line 274: | ||
* Implementare inamici ce se deplaseaza in aer, precum elicopterul controlat de catre jucator | * Implementare inamici ce se deplaseaza in aer, precum elicopterul controlat de catre jucator | ||
* Implementare actiune de atac a jucatorului si a inamicilor | * Implementare actiune de atac a jucatorului si a inamicilor | ||
+ | * Introducerea iluminarii: | ||
+ | * Introducerea umbrelor | ||
+ | * Introducerea iluminarii volumetrice | ||
* Orice aduce îmbunătățiri vizuale jocului | * Orice aduce îmbunătățiri vizuale jocului | ||