OKI 2. Kolokvijum Flashcards
Objekati igre (GO)
su osnovni objekti na sceni koji predstavljaju aktivne učesnike igre (PC i NPC karakteri) ili statične
elemente (rekvizite i scenografija)
Dodavanjem komponenti (Rigidbody2D, Collider2D, skripte…) se definiše ponašanje objekta na sceni i međuodnos sa
drugim GO na sceni
GO se može izdvojiti od drugih objekata na sceni tagom, slojem, imenom
Resursi igre (Assets) su
teksture, skripte, 3D modeli, zvuk…. Asset Store
Prefab ili prefabrikovani objekat igre
predstavlja šablon objekta igre sa odgovarajućim komponentama i vrednostima
parametara tih komponenti.
Mogu se koristiti vise puta u sceni I u vise scena I nalaze se u asset folderu
Kada se doda Prefab u scenu, kreira se njegova instanca
Sve instance određenog objekta uvek imaju iste osobine - ako promenimo neku osobinu prefaba, ova promena biće
ažurirana automatski kod svih instanci
Scena
Sadrzi okruzenje i menije igre
Kamere
se koriste za prikazivanje sveta igre igracu,
Uvek mora biti jedna kamera na sceni, a moze ih biti i vise, npr ekran za vise igraca.
I one se takodje mogu animirati i kontrolisati fizikom.
Svetla
definišu boju i atmosferu na sceni, a teksture definišu oblik i izgled scene
Korisnički interfejs (UI)
predstavlja skup elemenata ulazne/izlazne komunikacije preko kojih se igrač povezuje sa svetom
igre - u svakoj igrici mora postojati grafički oblik uvida u stanje karaktera, njegovog ‘zdravlja’ , pokupljenih poena,
napredovanje kroz nivo itd.
To se postize ubacivanjem u hijerarhiju Canvas, Text, Image, Button…
Sistem događaja (Event System)
povezuje komande od strane korisnika (unos preko tastature, džojstika ili klik miša) sa
GO na kojem je prikačena skripta koja omogućava i zahteva komandu od korisnika
KOMPONENTE OBJEKATA IGRE
(Transform, Animator, Collider2D, Rigidbody2D, Sprite Renderer…)
Ponašanje objekta igre odredjuju komponente koje su vezane za njega (prikazane u prozoru Inspektora)
Transform (pozicija, rotacija, velicina) obavezna za sve objekte igre
Animator dodaje se pri kreiranju nove animacije
Collider se koristi za definisanje prostora koji zauzima GO na sceni i može učestvovati u interakcijama i u aktiviranju
događaja
Rigidbody uloga mu je da doda objektu igre određenu masu kako bi ga pokretale spoljašnje sile kontrolisane skriptom ili
prouzrokovane interakcijom sa drugim objektima igre
SpriteRenderer zbog njega se prikazuje 2D grafika u igri (3D – MeshRendered)
Sprite:
: 2D grafički objekti u projektu, kreirani prema pravilu „u stepenu dvojke“ – 2
n
x 2m
Spritesheet
obuhvata više pojedničnih sprajtova na istom listu Spritesheet se u 3D igrama nazivaju atlasi
Da bi bila aktivna opcija isecanja pojedinačnih sličica iz Spritesheet-a, potrebno je promeniti Sprite Mode na Multiple
Načini isecanja pojedinačnih slika:
▪ Automatic ▪ Grid By Cell Size ▪ Grid By Cell Count
Dve vrste igara na osnovu kreiranja ponavljajuce pozadine
sprite-based i tiled-based
Tilemap
sluzi za kreiranje 2D nivoa od pojedinačnih pločica i koriste se Tilemap Renderer i Tilemap Collider 2D
Sorting layer
– određivanje rasporeda renderovanja sprajtova na sceni
Alati za rada sa sprajtovima:
▪ Sprite Editor – koristi se da se isecanje manjih slika iz velike slike
▪ Sprite Creator – koristi se za kreiranje placeholder sprajtova
▪ Sprite Packer – koristi se za optimizaciju korišćenja sprajtove
Pixel per Unit
definiše kako će se dimenzije sprajta u pikselima preračunati u Unity jedinice
Retro igre su koristile tiles
16x16, pa se podešavalo 16 Pixels per Unit
Pixel per Unit je bitan kada
definišemo veličinu kamere. Ako je pojedinačni sprajt od kojeg gradimo pozadinu 16x16,
onda se može podesiti da je Pixel per Unit 16. Ako želimo da ekran bude visine 224px, onda podešavamo veličinu kamere
kao jednu polovinu visine ekrana u Unity jedinicama što bi bilo 112/16 = 7
Animacija
kompjuterskim igrama pruža dinamiku i time čini da elementi igre deluju prirodnije, obezbedjuje igrivost,
neko desavanje, kretanje
*frejm (kadar) – vremenska sekvenca u animaciju koja moze sadrzatijednu sliku, ilustraciju…
Animacija se ili uvozi u Unity ili se kreiraju u Unity okruženju
Klipovi animacija se podesavaju pomoću Animator Controller
Prozor Animation omogućava kreiranje i uređivanje klipova animacije
Može se animirati: Pozicija, rotacija i skala objekta igre, boja materijala, intenzitet sveta, jačina zvuka…
Vrste animacija
▪ spritesheet animacija
Ova vrsta animacija se kreira od niza sprajtova koje se ponavljaju u beskonačnoj petlji, animator nema uticaja, kreira se
automatski, moze se uticati na kadrove od kojih će animacija biti sastavljena i brzinu
▪ keyframe animacija
Vrši se u Animation kartici, u ključnim (key) frejmovima menjaju se vrednosti dimenzija objekta i njegove pozicije u
prostoru, objekat koji se animira se najčešće sastoji od više sastavnih delova
▪ uvezena animacija iz drugog programa
Već gotove ili bazične animacije rađene u drugom softveru, uglavnom se izvoze kao sekvenca slika što je nešto slično
sprite sheet animaciji
Objekat igre koji je animiran ima komponentu
Animator
Animator je
je prozor u kom se sagleda svaka kreirana animacija i kako i pod kojim uslovom će se ona aktivirati, koliko će
trajati, kakva će biti tranzicija između animacija itd. gde se stanja pojavljuju kao čvorovi povezani linijama
Preko parametara bool, float ili integer definišu se uslovi početka animacije, tranzicija u sledeću animaciju itd.
Blend čvorovi kada je potrebno napraviti fin prelaz između sličnih animacija
Detektovanje sudara
se koristi radi provere da li je došlo do sudara između dva objekata u igri i kako se telo ponaša u
tom slučaju. Objekat u igri koji se može sudariti se naziva kolajder(nevidljiv u igri) I dodaje se komponentom Collider 2D
Kolajderi u zavisno od geometrijskog oblika: ▪ Kružni ▪ Kvadratni ▪ Poligonalni kolajder ▪ Kolajder ivica …
Vrste kolajdera:
- Statični kolajder se ne pomera nikad za vreme igranja igre (zid, pod, čvrsti stolovi itd.)
- Pasivni kolajder je onaj koji se može premestiti u toku igren npr. karakter ga pomeri i može pravilno primiti fiziku.
Naziva se pasivni jer nikada ne kreira neki pokret ili silu (sanduci, kutije, novčići itd.) - Aktivni kolajder je onaj koji se može pokrenuti i koji ima RigidBody komponentu (glavni karakter, neprijatelj itd.)
Tri vrste događaja koji se dešavaju zbog detektovanja sudara:
- Događaj prilikom dodira
- Događaj prilikom dužeg dodira
- Događaj prilikom razdvajanja
Samosudaranje (Self-collision)
Na primer: kosa karaktera koja dodiruje sopstveno rame, ruka karaktera koja dodiruje
svoje telo ili krila leptira koja se međusobno dodiruju
3 minimalna fizicka svojstva povezana sa kolajderom:
- Pozicija
- Brzina
- Ubrzanje
▪ Zahtevi za simulaciju fizike u realnom vremenu su:
- Efikasnost
- Stabilnost
- Jednostavnost
- Realizam
-Mehanizmi fizike se sastoje od tri glavna podsistema:
jedan koji izračunava novi položaj određenog fizičkog svojstva,
drugi koji detektuje sudare između objekata i treci koji je zadužen za upravljanje sudarima