Unityben készítek egy 2D-s játékot. Azt szeretném beállítani, hogy a pálya széltében töltse be a képeryőt de úgy, hogy ne lógjon túl. Hogyan tudnám ezt scriptileg megcsinálni, hogy bepozícionálja a kamerát?
> a pálya széltében töltse be a képernyőt
Ha jól értem azt akarod, hogy pontosan 6 egységet lásson a kamera szélességében?
A ortogonális kameráknak van egy Camera.orthographicSize tulajdonsága, ez azt mondja meg hány egységet lát a kamera magasságában. Neked a szélességet kell beállítani. Ezért azt tanácsolom, hogy a Kamera gameobject-ed Start() scriptjében állítsd be annak megfelelően, hogy mekkora a kamera aspektusa (Camera.aspect), ez a szám adja meg a képernyő szélességének és magasságának az arányszámát.
Start()
{
Camera.main.orthographicSize = 6.0f / Camera.main.aspect;
}
Referencia:
2-es, köszönöm a választ!
Igen, 6 egységnyit kell látni! (háttér szélessége 6 egység)
Viszont nem 6-ot, hanem annak a felét, vagyis 3-at kellett osztanom.
Amikor 6-al osztottam, akkor fele akkora volt a háttér.
És most mikor 3-al osztottam, akkor pontosan illeszkedett.
> És most mikor 3-al osztottam, akkor pontosan illeszkedett.
Tényleg, igaz. A középponttól nézve kell számítani. Ha kell még segítség írj nyugodtan.
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!