Differences

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

Link to this comparison view

pjv:laboratoare:2023:04 [2023/10/23 09:53]
alexandru.gradinaru
pjv:laboratoare:2023:04 [2024/10/07 10:48] (current)
alexandru.gradinaru
Line 1: Line 1:
-===== Sisteme de animatie =====+===== 4. Sisteme de animatie =====
  
 ==== Cerinte ===== ==== Cerinte =====
  
-TBU+Sa se realizeze un sistem de interfata grafica pentru urmatoarele evenimente:​ 
 +  - o animatie de loading la pornirea scenei/la schimbarea scenei, care sa dureze cel putin 1s 
 +  - o animatie de MultiKill/​Achievement,​ atunci cand o valoare de prag 5 este depasita se afiseaza Starea 1 (animatia 1), iar atunci cand este depasita valoarea de prag 10, se intra in Starea 2 (animatia 2). Pentru gestiunea starilor se va folosi Animator Controller, iar pentru setarea valorilor de prag se va folosi un script C#.
  
  
-==== Documentatie video ===== +Cele animatii trebuie ​sa fie realizate prin metode diferite ​de animatie 2D.
-TBU +
- +
- +
-==== Documentatie extinsa text ===== +
-TBU +
- +
- +
-===== Programarea animatiilor ===== +
- +
-==== Cerinte ===== +
- +
-<note important>​Puteti porni de la scenele create in Lab 1</​note>​ +
- +
-<note tip>​Resurse folosite: +
-  * [[https://​assetstore.unity.com/​packages/​3d/​environments/​fantasy/​fantasy-forest-environment-free-demo-35361|Fantasy Forest Environment - Free Demo]] +
-</​note>​ +
- +
-Realizati o scena de joc similara cu un joc de Duck Hunt 3D +
- +
-  - Mediul:  +
-    - un teren simplu si ceva vegetatie +
-  - Playerul: +
-    - este reprezentat de o camera statica in scena (e suficient sa aveti doar camera, nu exista miscare din partea jucatorului) +
-    - are posiblitatea de a trage inspre inamici in moduri: +
-      - left click: lanseaza un proiectil fizic care mere inspre directia une a fost apasat click (cu anumite reguli: fie are o durata de viata, fie pana a nimerit ceva, fie adaugati o forta combinata cu reguli de distrugere etc.) +
-      - right click: damage instant - se realizeaza cu un raycast dinspre camera spre inamic si atinge instant locul in care a fost apasat click +
-  - Inamicii: +
-    - exista inamici 3D animati care se deplaseaza inspre camera incotinuu +
-    - inamicii se instantiaza (spawneaza) incontinuu (puteti pune anumite reguli - de ex sa fie max 5 in scena la un moment dat) intr-o zona din scena care sa fie vizibila ​de catre camera) +
-    - inamicii au comportament fizic (coloziuni, sunt afectati de gravitatie etc.) +
-    - inamicii au 2 animatii posibile: run si hit (alergat, si o animatie ​pentru cand au fost doborati/​atinsi) +
-    - inamicii sunt distrusi in momentul in care i-a nimerit playerul (cu o animatie scurta, apoi dispar din scena) +
-    - inamicii se misca incontinuu spre player (camera) +
-  - GUI:  +
-    - In momentul in care au fost doborati 5 inamici, apare in mijlocul ecranului o imagine ​2D animata +
-    - In momentul in care au fost doborati 10 inamici, apare in mijlocul ecranului o alta imagine 2D animata print-o metoda diferita fata de cea afisata la 5 inamici doborati+
  
  
 ==== Documentatie video ===== ==== Documentatie video =====
 +Inregistrare pe MS Teams
  
  
- 
-<​html><​br></​html>​ 
 ==== Documentatie extinsa text ===== ==== Documentatie extinsa text =====
  
- 
- 
-<​html><​br></​html>​ 
-==== Sumar documentatie ===== 
  
 ==== Animatii 2D in Unity ==== ==== Animatii 2D in Unity ====
Line 85: Line 46:
   * jump = 38 - 48   * jump = 38 - 48
 {{ :​pjv:​laboratoare:​managingstates13.jpg?​direct&​300 |}} {{ :​pjv:​laboratoare:​managingstates13.jpg?​direct&​300 |}}
 +
 +=== Bone-based 2D ===
 +
 +Incepand cu versiunea din 2018 (2018.2.0f2),​ Unity are suport si pentru animatii Bone-based pentru 2D, functionalitate accesibila prin instalarea pachetului de 2D Animation.
 +
 +Puteti folosi imaginea de mai jos ca exemplu: {{ :​pjv:​laboratoare:​plunkahgreen.png?​direct&​200 |}}
 +
 +Fluxul de lucru:
 +
 +Se construieste ierarhia de oase în editor (Sprite Editor > Bone Editor).
 +{{ :​pjv:​laboratoare:​boneeditor.png?​direct&​300 |}}
 +
 +Se genereaza geometria și se atribuie greutăți ale pielii în editor (Sprite Editor > Geometry And Weight Editor).
 +{{ :​pjv:​laboratoare:​geowaiteditor.png?​direct&​300 |}}
 +
 +Se adauga componenta ''​Sprite Skin''​ pentru a genera oasele.
 +{{ :​pjv:​laboratoare:​bonehierarchy.png?​direct&​300 |}}
 +
 +Mai multe detalii aici: 
 +  * [[https://​github.com/​Unity-Technologies/​2d-animation-samples/​blob/​master/​Documentation/​2DAnimation.md]]
 +  * [[https://​blogs.unity3d.com/​2018/​11/​09/​getting-started-with-unitys-2d-animation-package/​]]
 +  * [[https://​docs.unity3d.com/​Packages/​com.unity.2d.animation@1.0/​manual/​index.html]]
 +
 +Urmeaza crearea de animatii pentru obiect folosind oasele.
 +
  
 === Hierahical animation === === Hierahical animation ===
  
-Folosirea animatiilor ​pe baza de oase necesita mai multa munca.+Folosirea animatiilor ​ierarhice ​necesita mai multa munca.
 {{ :​pjv:​laboratoare:​02.png?​direct&​300 |}} {{ :​pjv:​laboratoare:​02.png?​direct&​300 |}}
  
Line 125: Line 111:
 Pentru a crea o noua animatie folositi butonul de Create new Clip (spre exemplu pentru Jump): {{ :​pjv:​laboratoare:​16_1_.png?​direct&​300 |}} Pentru a crea o noua animatie folositi butonul de Create new Clip (spre exemplu pentru Jump): {{ :​pjv:​laboratoare:​16_1_.png?​direct&​300 |}}
  
-=== Bone-based 2D === 
  
-Incepand cu versiunea din 2018 (2018.2.0f2),​ Unity are suport si pentru ​animatii ​Bone-based ​pentru ​2D, functionalitate accesibila prin instalarea pachetului de 2D Animation.+==== Crearea de animatii pentru ​obiecte 3D ====
  
-Puteti folosi imaginea ​de mai jos ca exemplu: {{ :​pjv:​laboratoare:​plunkahgreen.png?​direct&​200 |}}+Crearea animatiilor se poate face folosind utilitarul ​de animatie (Window > Animation), similar ​ca in spatiul 2D.
  
-Fluxul ​de lucru: +Daca este vorba de personaje, ​de regula animatiile ​se importa impreuna cu modelul 3D, folosind ​un sistem de scheletizare.
- +
-Se construieste ierarhia ​de oase în editor (Sprite Editor > Bone Editor). +
-{{ :​pjv:​laboratoare:​boneeditor.png?​direct&​300 |}} +
- +
-Se genereaza geometria și se atribuie greutăți ale pielii în editor (Sprite Editor > Geometry And Weight Editor). +
-{{ :​pjv:​laboratoare:​geowaiteditor.png?​direct&​300 |}} +
- +
-Se adauga componenta ''​Sprite Skin''​ pentru a genera oasele. +
-{{ :​pjv:​laboratoare:​bonehierarchy.png?​direct&​300 |}} +
- +
-Mai multe detalii aici:  +
-  * [[https://​github.com/​Unity-Technologies/​2d-animation-samples/​blob/​master/​Documentation/​2DAnimation.md]] +
-  * [[https://​blogs.unity3d.com/​2018/​11/​09/​getting-started-with-unitys-2d-animation-package/​]] +
-  * [[https://​docs.unity3d.com/​Packages/​com.unity.2d.animation@1.0/​manual/​index.html]] +
- +
-Urmeaza crearea de animatii pentru obiect ​folosind ​oasele.+
  
    
-=== Animator Controller ===+==== Animator Controller ​====
  
 Urmatorul pas este sa configuram aceste animatii astfel incat sa le putem folosi, si sa putem tranzitiona intre ele. Pentru acest lucru, vom folosi un ''​Animator Controller''​. Acest controller functioneaza ca un automat de stari, fiecare stare putand fi o animatie. Urmatorul pas este sa configuram aceste animatii astfel incat sa le putem folosi, si sa putem tranzitiona intre ele. Pentru acest lucru, vom folosi un ''​Animator Controller''​. Acest controller functioneaza ca un automat de stari, fiecare stare putand fi o animatie.
pjv/laboratoare/2023/04.1698044014.txt.gz · Last modified: 2023/10/23 09:53 by alexandru.gradinaru
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