Unity (tsz. Unities)
A Unity egy keresztplatformos játékmotor, amely lehetővé teszi a játékok és interaktív alkalmazások fejlesztését. Az egyik legnépszerűbb eszköz a független fejlesztők és nagy stúdiók körében is.
A Unity nemcsak játékokhoz, hanem más interaktív alkalmazásokhoz is használható:
✅ Videójátékok (2D és 3D)
✅ Virtuális valóság (VR) és kiterjesztett valóság (AR)
✅ Interaktív vizualizációk (pl. építészet, mérnöki modellek)
✅ Animációs filmek és reklámok
✅ Oktatási alkalmazások
Ez a fő fejlesztői környezet, ahol a játék készítése történik. Főbb elemei:
- Hierarchy (Hierarchia): Itt láthatók a jelenetben lévő objektumok.
- Scene (Jelenet): A játék vizuális szerkesztőfelülete.
- Game (Játék nézet): Itt lehet futtatni és tesztelni a játékot.
- Inspector (Ellenőrző panel): Az objektumok tulajdonságai és komponensei állíthatók be itt.
- Project (Projekt ablak): Az összes fájl és asset elérhető itt.
A Unity GameObject-eket használ, amelyeket komponensekkel lehet testre szabni.
Példa: Egy játékos karakter egy GameObject lehet, amelyhez ezek a komponensek tartoznak:
- Transform (pozíció, forgás, méret)
- Rigidbody (fizika és gravitáció)
- Collider (ütközésérzékelés)
- Script (C# kód) – pl. mozgás vezérlése
A Unity C# nyelvet használ a játéklogika létrehozásához. Példa egy egyszerű mozgási scriptre:
using UnityEngine;
public class PlayerMovement : MonoBehaviour
{
public float speed = 5f;
void Update()
{
float moveX = Input.GetAxis("Horizontal") * speed * Time.deltaTime;
float moveY = Input.GetAxis("Vertical") * speed * Time.deltaTime;
transform.Translate(moveX, moveY, 0);
}
}
Ebben a kódban:
- Az Update() metódus minden képkockánál (frame) lefut.
- Az Input.GetAxis() figyeli a billentyűzet bemenetét.
- A transform.Translate() mozgatja az objektumot.
A Unity beépített fizikai motorral rendelkezik, amely lehetővé teszi az ütközések, gravitáció és mozgás szimulációját.
Példa egy gravitációt kikapcsoló Rigidbody beállítására:
void Start()
{
GetComponent<Rigidbody>().useGravity = false;
}
A Unity saját animációs rendszert használ (Animator). Példa egy karakter futás animációjára:
1️⃣ Importáljuk az animációt (pl. .fbx fájl).
2️⃣ Hozzáadjuk egy GameObjecthez az Animator komponenst.
3️⃣ Átállítjuk a paramétereket és animációkat az Animator Controllerben.
A Unity beépített UI-rendszere segít menük és gombok létrehozásában.
Gyakori UI elemek:
- Text – Szöveg megjelenítése
- Button – Kattintható gomb
- Image – Képek megjelenítése
- Slider – Csúszka pl. hangerőhöz
Példa egy gomb eseményre C#-ban:
using UnityEngine;
using UnityEngine.UI;
public class ButtonExample : MonoBehaviour
{
public Button myButton;
void Start()
{
myButton.onClick.AddListener(TaskOnClick);
}
void TaskOnClick()
{
Debug.Log("Gombra kattintottak!");
}
}
A Unity lehetővé teszi a játékok exportálását különböző platformokra:
📌 Windows / Mac / Linux – Standalone játékok
📌 Android / iOS – Mobiljátékok
📌 WebGL – Böngészőben futtatható játékok
📌 PlayStation / Xbox / Switch – Konzolok
1️⃣ File → Build Settings menü megnyitása.
2️⃣ Platform kiválasztása (pl. Windows, Android).
3️⃣ Player Settings beállítása (ikon, név, verzió).
4️⃣ Build gomb megnyomása és kész!
A Unity Asset Store egy piactér, ahol ingyenes és fizetős modelleket, zenéket, kódokat és egyéb eszközöket lehet vásárolni.
Példa népszerű assetekre:
✅ 3D modellek (karakterek, épületek)
✅ 2D sprite csomagok
✅ Hang- és zeneanyagok
✅ Kész játékrendszerek (pl. FPS, RPG template-ek)
A Unity egy erőteljes és sokoldalú játékmotor, amely alkalmas 2D/3D játékok, VR/AR alkalmazások és interaktív programok készítésére. C# alapú programozással és a vizuális eszközök kombinálásával könnyen kezelhető mind kezdők, mind haladó fejlesztők számára.