3. cvičení výsledek
Entry 3, 11.3.2021, 2.5 hodiny
Každý objekt ve hře je GameObject. K nim můžeme přidávat komponenty (buď předchystané nebo náš c# kod).
Komponenta: Sprite renderer nastavuje materiál, ze kterého má být GO vyroben.
Skript/komponent je c# class, která dědí od MonoBehaviour (tam jsou reference na GO, Transform,Start,Update...)
Názvy funkcí:
Awake() - volá se první, i když komponenta neni aktivovana
Start() - po awaku, pred prvnim updatem, jenom, kdyz je komponenta aktivovana
oboje se zavolá max. jednou
Update() - jednou za frame - pohybovani s objekty, dostavani vstupu
FixedUpdate() - volá se vždy po stanoveném čase, upravování objektu podlehajicich fyzice
LateUpdate() - jednou za frame, po zavolání updatu
OnDestroy()
Jak implementovat pohyb doprava (bullet):
metody na transformu(transform je zděděn z monoBehaviour):
transform.rotate(v), transform.translate(v), jako argument se dává immutable typ Vector3 v
Debuging: class Debug... Debug.log(string msg)
Jak zaridit smooth pohyb bullet: pomocí *deltaTime, nebo FixedUpdate
Komponenta: Rigidbody2D umožnuje fyziku: gravitace, tahání, síly, točivost
-kinematic x non-kinematic
Komponenta: Collider - kolize, triggery, ColliderEnter2D, ColliderExit2D
Získání jakékoliv komponenty pomocí gameObject.GetComponent<T>() - drahé
Jak znicit kulku na kolizi s něčím: máme vrsty (layers) a centrálně se nastavuje přes collision matrix co s čím má kolidovat, ničení: funkce Destroy(gameObject)
Mohu implementovat funkce, které mají dané názvy a triggerují se při tom, co je v jejich názvu:
OnCollider() , OnBecameInvisible()...
Jak spawnovat kulky po stisku klávesy H
Pro input od hráče existuje classa Input, funkce Instantiate - priste doresit, jak ji pouzivat, zatim mi to moc nejde
Project A
Status | Released |
Author | dadebeats |
Tags | mff-gdintro-2022-a |
More posts
- 4. cvikoMar 30, 2022
- 3.bMar 26, 2022
- PROJECT AMar 10, 2022
- 2. cvičení výsledekMar 09, 2022
- 1. cvičení výsledekFeb 28, 2022
Leave a comment
Log in with itch.io to leave a comment.