This shows you the differences between two versions of the page.
egc:teme:2017:01 [2017/10/20 17:04] alexandru.gradinaru [Bonusuri posibile] |
egc:teme:2017:01 [2019/10/22 06:31] (current) alexandru.gradinaru |
||
---|---|---|---|
Line 31: | Line 31: | ||
Ciocnirea sau atingerea a doua obiecte se defineste prin termenul de coliziune. Determinarea coliziunii poate fi simplificata prin aproximarea caracterului cu un cerc. | Ciocnirea sau atingerea a doua obiecte se defineste prin termenul de coliziune. Determinarea coliziunii poate fi simplificata prin aproximarea caracterului cu un cerc. | ||
- | <note tip>Mai multe informatii despre metode de coliziune: | + | <note tip>Mai multe informatii despre ce reprezinta coliziunea si cum se poate implementa: |
- | * https://developer.mozilla.org/en-US/docs/Games/Techniques/2D_collision_detection | + | * [[https://developer.mozilla.org/en-US/docs/Games/Techniques/2D_collision_detection]] |
- | * https://developer.mozilla.org/en-US/docs/Games/Techniques/3D_collision_detection | + | * [[https://learnopengl.com/In-Practice/2D-Game/Collisions/Collision-detection]] |
- | * https://studiofreya.com/3d-math-and-physics/collision-theory/ | + | * [[https://www.youtube.com/watch?v=aTbw71EpamY]] |
- | * Google search :) | + | * [[https://developer.mozilla.org/en-US/docs/Games/Techniques/3D_collision_detection]] |
</note> | </note> | ||
Line 44: | Line 44: | ||
**Geometrie minimala** | **Geometrie minimala** | ||
* Astronaut <-> triunghi | * Astronaut <-> triunghi | ||
- | * Asteroizii <-> discuri de cerc cu rotatie, translatie sau scalare permanenta (discretizarea punctelor poate fi facuta cu un pas mai mare astfel incat sa fie observata mai bine rotatia acestora) | + | * Asteroizii <-> discuri de cerc (minim 8 varfuri) cu rotatie, translatie sau scalare permanenta (discretizarea punctelor poate fi facuta cu un pas mai mare astfel incat sa fie observata mai bine rotatia acestora) |
* Platformele <-> suprafete rectangulare fixe in spatiu | * Platformele <-> suprafete rectangulare fixe in spatiu | ||
- | **Implementare suficienta - clarificari** | + | **Implementare suficienta** |
* Scena este fixa (nu se misca odata cu astonautul si nu exista spatiu din scena care sa nu se vada in ecran, nefiind astfel necesara miscarea ferestrei) - peretii scenei pot fi considerati platforma de stationare sau de reflexie, la alegerea voastra | * Scena este fixa (nu se misca odata cu astonautul si nu exista spatiu din scena care sa nu se vada in ecran, nefiind astfel necesara miscarea ferestrei) - peretii scenei pot fi considerati platforma de stationare sau de reflexie, la alegerea voastra | ||
- | * Pentru obstacole sunt suficiente urmatoarele: | + | * Pentru obstacole sunt minime urmatoarele: |
* 1 platforma de stationare | * 1 platforma de stationare | ||
* 1 platforma de reflexie | * 1 platforma de reflexie | ||
- | * Minim 1 asteroid cu fiecare animatie (un asteroid cu rotatie, unul cu translatie si unul cu scalare) sau 2 asteroizi cu transformari compuse (ex: 1 asteroid cu scalare si translatie si 1 asteroid cu rotatie si traslatie). | + | * 1 asteroid cu fiecare animatie (un asteroid cu rotatie, unul cu translatie si unul cu scalare) sau 2 asteroizi cu transformari compuse (ex: 1 asteroid cu scalare si translatie si 1 asteroid cu rotatie si translatie). |
* 1 platforma finala | * 1 platforma finala | ||
* Orice nu este mentionat sau specificat explicit este lasat la latitudinea voastra | * Orice nu este mentionat sau specificat explicit este lasat la latitudinea voastra | ||
Line 61: | Line 61: | ||
<note important> | <note important> | ||
- | Puteti sa folositi ce culori doriti atat timp cat este observata clar distinctia dintre obiecte. | ||
Alte aspecte ce nu au fost prezentate raman la latitudinea voastra. | Alte aspecte ce nu au fost prezentate raman la latitudinea voastra. | ||
</note> | </note> | ||
Line 67: | Line 66: | ||
<note tip> | <note tip> | ||
* Se poate utiliza framework-ul de laborator sau o implementare proprie. | * Se poate utiliza framework-ul de laborator sau o implementare proprie. | ||
- | * Plecand de la pozitia mouse-ului in pixeli si cunoscand spatiul logic utilizat puteti sa calculati pozitia logica a cursorului pentru a determina directia de deplasare. | ||
* Documentatia pentru evenimentele de mouse se gaseste in fisierul [[https://github.com/UPB-Graphics/Framework-EGC/blob/master/Source/Core/Window/InputController.h|/Core/Window/InputController.h]] | * Documentatia pentru evenimentele de mouse se gaseste in fisierul [[https://github.com/UPB-Graphics/Framework-EGC/blob/master/Source/Core/Window/InputController.h|/Core/Window/InputController.h]] | ||
</note> | </note> | ||
Line 78: | Line 76: | ||
<note> | <note> | ||
* in mod normal arhiva trebuie sa contina toate resursele necesare compilarii si rularii | * in mod normal arhiva trebuie sa contina toate resursele necesare compilarii si rularii | ||
- | * inainte de a face arhiva asigurativa ca ati dat clean la proiect | + | * inainte de a face arhiva asigurati-va ca ati dat clean la proiect |
* click dreapta pe proiect in **Solution Explorer** -> **Clean Solution**, sau | * click dreapta pe proiect in **Solution Explorer** -> **Clean Solution**, sau | ||
* stergeti folderul __**/Visual Studio/obj**__ | * stergeti folderul __**/Visual Studio/obj**__ |