Differences

This shows you the differences between two versions of the page.

Link to this comparison view

egc:teme:2019:02 [2019/11/08 16:10]
maria_anca.balutoiu
egc:teme:2019:02 [2019/11/12 07:57] (current)
alexandru.gradinaru
Line 1: Line 1:
 ===== Tema 2 - Avion cu Motor ===== ===== Tema 2 - Avion cu Motor =====
  
-**Responsabili:​** Alex Grădinaru, Anca Băluțoiu +  * **Responsabili:​** Alex Grădinaru, Anca Băluțoiu 
- +  ​* ​**Lansare:​** 8 noiembrie 
-**Lansare:​** 8 noiembrie +  ​* ​**Termen de predare:** 29 noiembrie 2019, ora 23:55 (30 și 1 nu se vor considera întârziere) 
- +  ​* ​**Notă: Orice informație ce nu a fost acoperită în acest document este la latitudinea voastră!**
-**Termen de predare:** 29 noiembrie 2019, ora 23:55 (30 și 1 nu se vor considera întârziere) +
- +
-**Notă: Orice informație ce nu a fost acoperită în acest document este la latitudinea voastră!**+
  
 În cadrul temei 2 trebuie să implementați un joc în care sunteți un aviator ce nu trebuie să se lovească de obstacole și nici să rămână fără combustibil pentru avion. ​ În cadrul temei 2 trebuie să implementați un joc în care sunteți un aviator ce nu trebuie să se lovească de obstacole și nici să rămână fără combustibil pentru avion. ​
Line 14: Line 11:
  
 <​html>​ <​html>​
-<iframe width="​560"​ height="​315"​ src="​https://​www.youtube.com/​embed/​s6gM2GBF3Ek?​rel=0"​ frameborder="​0"​ allow="​accelerometer;​ autoplay; encrypted-media;​ gyroscope; picture-in-picture"​ allowfullscreen></​iframe>​+<p style="​text-align:​center;​margin:​auto;">​ 
 +<iframe width="​560"​ height="​315"​ src="​https://​www.youtube.com/​embed/​s6gM2GBF3Ek?​rel=0"​ frameborder="​0"​ allow="​accelerometer;​ autoplay; encrypted-media;​ gyroscope; picture-in-picture"​ allowfullscreen ​style="​text-align:​center;​margin:​auto;"​></​iframe
 +</p>
 </​html>​ </​html>​
  
Line 31: Line 30:
  
 === Construcția Scenei === === Construcția Scenei ===
-  * **Avionul** +  * **Avionul:** Pentru a crea avionul, veți folosi mai multe forme simple. De exemplu, puteți folosi cuburi de mărimi și culori diferite. Astfel, puteți avea două cuburi pentru aripi, un cub pentru coadă, un cub pentru corp, un cub pentru cap, un cub pentru elice și un cub pentru suportul de elice. De asemenea, elicea avionului trebuie să se rotească în continuu (exemplu în figura de mai jos).
-Pentru a crea avionul, veți folosi mai multe forme simple. De exemplu, puteți folosi cuburi de mărimi și culori diferite. Astfel, puteți avea două cuburi pentru aripi, un cub pentru coadă, un cub pentru corp, un cub pentru cap, un cub pentru elice și un cub pentru suportul de elice. De asemenea, elicea avionului trebuie să se rotească în continuu (exemplu în figura de mai jos).+
  
 {{ :​egc:​teme:​2019:​constructia_avionului.png?​nolink&​300 |}} {{ :​egc:​teme:​2019:​constructia_avionului.png?​nolink&​300 |}}
  
  
-  * **Norii** +  * **Norii:** Norii vor fi și ei, la rândul lor, construiți din mai multe forme simple. Puteți să îi construiți,​ folosind 4 cuburi poziționate aleator unul lângă altul. Un exemplu de nor aveți în figura de mai jos. Norii trebuie să aibă o animație (de exemplu să se rotească anumite cuburi din componența lor).
-Norii vor fi și ei, la rândul lor, construiți din mai multe forme simple. Puteți să îi construiți,​ folosind 4 cuburi poziționate aleator unul lângă altul. Un exemplu de nor aveți în figura de mai jos. Norii trebuie să aibă o animație (de exemplu să se rotească anumite cuburi din componența lor).+
  
 {{ :​egc:​teme:​2019:​norii.png?​nolink&​300 |}} {{ :​egc:​teme:​2019:​norii.png?​nolink&​300 |}}
  
  
-  * **Marea** +  * **Marea:** Pentru a crea marea deasupra căreia zboară avionul, veți folosi un cilindru pe care îl veți plasa centrat în partea de jos a ecranului. Pentru realism, marea va avea valuri generate și se va roti în continuu. ​Valurile vor fi realizate ​în Vertex Shader prin deformări aleatoare, dar care sa asigure o continuitate in timp (de exemplu ​se pot defini varfuri interioare cilindrului cu pozitii distorsionate ca in figura, iar apoi se poate aplica in vertex shader o rotație în jurul poziției inițiale pentru fiecare vertex al cilindrului,​ fiecare astfel de rotație având viteză și rază aleatoare ​definita pentru vertexul respectiv)
-Pentru a crea marea deasupra căreia zboară avionul, veți folosi un cilindru pe care îl veți plasa centrat în partea de jos a ecranului. Pentru realism, marea va avea valuri generate și se va roti în continuu. ​Acest lucru va fi realizat ​în Vertex Shader prin deformări aleatoare (de exemplu ​prin aplicarea unei rotații în jurul poziției inițiale pentru fiecare vertex al cilindrului,​ fiecare astfel de rotație având viteză și rază aleatoare).+
  
 {{ :​egc:​teme:​2019:​marea.png?​nolink&​400 |}} {{ :​egc:​teme:​2019:​marea.png?​nolink&​400 |}}
  
  
-  * **Obstacole** +  * **Obstacole:** Obstacolele vor fi reprezentate în scenă prin obiecte de culoare roșie (de exemplu sfere) cu o animație de rotație. În momentul coliziunii cu avionul acestea dispar iar jucătorul pierde o viață
-Obstacolele vor fi reprezentate în scenă prin obiecte de culoare roșie (de exemplu sfere) cu o animație de rotație. În momentul coliziunii cu avionul acestea dispar iar jucătorul pierde o viață.+ 
 +  * **Combustibil:​** Alimentarea avionului se poate face din zbor prin colectarea obiectelor de combustibil. Acestea vor fi reprezentate de obiecte cu o culoare turcoaz, vor dispuse într-o înșiruire arcuită și vor avea o animație de rotire permanentă. Pot fi reprezentate spre exemplu prin obiecte de tip Teapot. În momentul coliziunii cu avionul acestea dispar, iar combustibilul avionului va crește.
  
-  * **Combustibil** +<note tip>Mai multe informatii despre coliziuni si cum se pot implementa ​in 3D: 
-Alimentarea avionului ​se poate face din zbor prin colectarea obiectelor de combustibil. Acestea vor fi reprezentate de obiecte cu o culoare turcoaz, vor dispuse într-o ​inșiruire arcuită și vor avea o animație de rotire permanentăPot fi reprezentate spre exemplu prin obiecte de tip Teapot. În momentul coliziunii cu avionul acestea dispar, iar combustibilul avionului va crește.+  * [[https://​developer.mozilla.org/​en-US/​docs/​Games/​Techniques/​3D_collision_detection]] 
 +</​note>​
  
  
Line 78: Line 76:
  
 === Notare (150p) === === Notare (150p) ===
-  * Construcția avionului (30p) +  * Construcția avionului (total 30p) 
-  * Componente (10p) +    * Componente (10p) 
-  * Deplasare (10p) +    * Deplasare (10p) 
-  * Animații (10p)  +    * Animații (10p)  
-  * Construcția mediului (70p) +  * Construcția mediului (total 70p) 
-  * Marea (30p) +    * Marea (obiect + deformare animata in shader) ​(30p) 
-  * Norii (15p) +    * Norii (15p) 
-  * Combustibil (15p) +    * Combustibil (15p) 
-  * Obstacole (10p)+    * Obstacole (10p)
   * Interfața cu utilizatorul (10p)   * Interfața cu utilizatorul (10p)
   * Implementarea camerei third person (20p)   * Implementarea camerei third person (20p)
egc/teme/2019/02.1573222257.txt.gz · Last modified: 2019/11/08 16:10 by maria_anca.balutoiu
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0