Jypeli 10
The simple game programming library
Jypeli.Camera luokkareferenssi

Kamera. Määrittää mikä osa pelitasosta on kerralla näkyvissä. Lisää...

Luokan Jypeli.Camera luokkakaavio
Jypeli.PositionalRW Jypeli.Positional

Julkiset jäsenfunktiot

void Follow (params GameObject[] gameobjects)
 Seuraa yhtä tai useampaa peliobjektia. Lisää...
 
void FollowX (params GameObject[] gameobjects)
 Seuraa jotakin peliobjektia X- eli vaakasuunnassa. Lisää...
 
void FollowY (params GameObject[] gameobjects)
 Seuraa jotakin peliobjektia Y- eli pystysuunnassa. Lisää...
 
void Move (Vector v)
 Liikuttaa kameraa. Lisää...
 
void Reset ()
 Resetoi kameran (keskittää, laittaa zoomin oletusarvoon ja lopettaa seuraamisen). Lisää...
 
Vector ScreenToWorld (Vector point)
 Muuntaa annetun pisteen ruutukoordinaateista maailmankoordinaatteihin. Lisää...
 
Vector ScreenToWorld (Vector point, Layer layer)
 Muuntaa annetun pisteen ruutukoordinaateista maailmankoordinaatteihin ottaen huomioon oliokerroksen suhteellisen siirtymän. Lisää...
 
void StopFollowing ()
 Lopettaa olio(iden) seuraamisen. Lisää...
 
Vector WorldToScreen (Vector point)
 Muuntaa annetun pisteen maailmankoordinaateista ruutukoordinaatteihin. Lisää...
 
Vector WorldToScreen (Vector point, Layer layer)
 Muuntaa annetun pisteen maailmankoordinaateista ruutukoordinaatteihin ottaen huomioon oliokerroksen suhteellisen siirtymän. Lisää...
 
void Zoom (double zoom)
 Zoomaa. Lisää...
 
void ZoomTo (BoundingRectangle rectangle)
 Sijoittelee kameran annettuun suorakulmioon Lisää...
 
void ZoomTo (BoundingRectangle rectangle, double borderSize)
 Sijoittelee kameran annettuun suorakulmioon annetulla marginaalilla Lisää...
 
void ZoomTo (double left, double bottom, double right, double top)
 Zoomaa ja sijoittaa kameran niin, että parametreina annettua alue näkyy kokonaan ruudulla. Lisää...
 
void ZoomTo (Vector bottomLeft, Vector topRight)
 Zoomaa ja sijoittaa kameran niin, että parametreina annettua alue näkyy kokonaan ruudulla. Lisää...
 
void ZoomToAllObjects ()
 Keskittää ja zoomaa kameran niin, että kaikki objektit näkyvät ruudulla. Lisää...
 
void ZoomToAllObjects (double borderSize)
 Zoomaa ja sijoittaa kameran siten, että kaikki pelioliot ovat yhtäaikaa näkyvissä. Lisää...
 
void ZoomToLevel ()
 Zoomaa ja keskittää kameran siten, että koko kenttä on näkyvissä kerralla. Lisää...
 
void ZoomToLevel (double borderSize)
 Zoomaa ja keskittää kameran siten, että koko kenttä on näkyvissä kerralla. Tällöin kamera ei seuraa mitään oliota. Lisää...
 

Paketin funktiot

 Camera ()
 Luo uuden kameran. Lisää...
 
void Update (Time time)
 Ajetaan kun pelitilannetta päivitetään. Lisää...
 
void ZoomTo (double left, double bottom, double right, double top, double borderSize)
 

Paketin attribuutit

bool _stayInLevel = false
 
double _zoomFactor = 1.0
 

Ominaisuudet

GameObject FollowedObject [getset]
 Olio, jota kamera seuraa. Jos null, mitään oliota ei seurata. Lisää...
 
Vector FollowOffset [getset]
 Jos kamera seuraa oliota, tällä voi säätää missä kohtaa ruutua pelaaja näkyy. Toisin sanoen ruutukoordinaateissa kerrotaan, kuinka kaukana ruudun keskustasta seurattava olio näkyy. Lisää...
 
bool FollowsX [getset]
 Seurataanko oliota (FollowedObject) x- eli vaakasuunnassa. Lisää...
 
bool FollowsY [getset]
 Seurataanko oliota (FollowedObject) y- eli pystysuunnassa. Lisää...
 
double FollowXMargin [getset]
 Jos kamera seuraa useita olioita, tällä voi säätää kuinka paljon vasempaan ja oikeaan reunaan jätetään tyhjää tilaa. Lisää...
 
double FollowYMargin [getset]
 Jos kamera seuraa useita olioita, tällä voi säätää kuinka paljon ylä- ja alareunaan jätetään tyhjää tilaa. Lisää...
 
Vector Position [getset]
 Kameran sijainti. Lisää...
 
bool StayInLevel [getset]
 Jos tosi, kamera ei mene koskaan kentän ulkopuolelle. Lisää...
 
Vector Velocity [getset]
 Kameran liikkumisnopeus. Lisää...
 
double X [getset]
 Kameran paikan X-koordinaatti. Lisää...
 
double Y [getset]
 Kameran paikan Y-koordinaatti. Lisää...
 
double ZoomFactor [getset]
 Kameran zoomauskerroin. Oletuksena 1.0. Mitä suurempi zoomauskerroin, sitä lähempänä kamera on (esim 2.0 on 2 x lähempänä) ja toisinpäin. Lisää...
 
- Ominaisuudet inherited from Jypeli.PositionalRW
new Vector Position [getset]
 Paikka. Lisää...
 
new double X [get]
 Paikan X-koordinaatti. Lisää...
 
new double Y [get]
 Paikan Y-koordinaatti. Lisää...
 
- Ominaisuudet inherited from Jypeli.Positional
Vector Position [get]
 Paikka. Lisää...
 
double X [get]
 Paikan X-koordinaatti. Lisää...
 
double Y [get]
 Paikan Y-koordinaatti. Lisää...
 

Yksityiset jäsenfunktiot

void doZoomToAllObjects (double borderSize)
 
void updateAvgPoint ()
 

Yksityiset attribuutit

Vector _pos = Vector.Zero
 
List< GameObjectfollowedObjects = null
 

Yksityiskohtainen selite

Kamera. Määrittää mikä osa pelitasosta on kerralla näkyvissä.

Määrittely tiedoston Camera.cs rivillä 39.

Rakentajien & purkajien dokumentaatio

◆ Camera()

Jypeli.Camera.Camera ( )
package

Luo uuden kameran.

Määrittely tiedoston Camera.cs rivillä 157.

Viittaukset Jypeli.Camera.FollowsX, Jypeli.Camera.FollowsY, Jypeli.Camera.FollowXMargin ja Jypeli.Camera.FollowYMargin.

Jäsenfunktioiden dokumentaatio

◆ doZoomToAllObjects()

void Jypeli.Camera.doZoomToAllObjects ( double  borderSize)
private

◆ Follow()

void Jypeli.Camera.Follow ( params GameObject[]  gameobjects)

Seuraa yhtä tai useampaa peliobjektia.

Parametrit
gameobjectsSeurattavat peliobjektit.

Määrittely tiedoston Camera.cs rivillä 244.

Viittaukset Jypeli.Camera.FollowedObject, Jypeli.Camera.followedObjects, Jypeli.Camera.FollowsX, Jypeli.Camera.FollowsY ja Jypeli.Camera.updateAvgPoint().

Viitattu Jypeli.Camera.FollowX() ja Jypeli.Camera.FollowY().

◆ FollowX()

void Jypeli.Camera.FollowX ( params GameObject[]  gameobjects)

Seuraa jotakin peliobjektia X- eli vaakasuunnassa.

Parametrit
gameobjectsSeurattavat peliobjektit.

Määrittely tiedoston Camera.cs rivillä 265.

Viittaukset Jypeli.Camera.Follow(), Jypeli.Camera.FollowsX ja Jypeli.Camera.FollowsY.

◆ FollowY()

void Jypeli.Camera.FollowY ( params GameObject[]  gameobjects)

Seuraa jotakin peliobjektia Y- eli pystysuunnassa.

Parametrit
gameobjectsSeurattavat peliobjektit.

Määrittely tiedoston Camera.cs rivillä 276.

Viittaukset Jypeli.Camera.Follow(), Jypeli.Camera.FollowsX ja Jypeli.Camera.FollowsY.

◆ Move()

void Jypeli.Camera.Move ( Vector  v)

Liikuttaa kameraa.

Parametrit
vKameran liikevektori.

Määrittely tiedoston Camera.cs rivillä 212.

Viittaukset Jypeli.Camera.Position, Jypeli.Vector.X, Jypeli.Vector.Y ja Jypeli.Camera.ZoomFactor.

◆ Reset()

void Jypeli.Camera.Reset ( )

Resetoi kameran (keskittää, laittaa zoomin oletusarvoon ja lopettaa seuraamisen).

Määrittely tiedoston Camera.cs rivillä 232.

Viittaukset Jypeli.Camera.Position, Jypeli.Camera.StopFollowing(), Jypeli.Camera.Velocity, Jypeli.Vector.Zero ja Jypeli.Camera.ZoomFactor.

Viitattu Jypeli.Game.ClearAll().

◆ ScreenToWorld() [1/2]

Vector Jypeli.Camera.ScreenToWorld ( Vector  point)

Muuntaa annetun pisteen ruutukoordinaateista maailmankoordinaatteihin.

Määrittely tiedoston Camera.cs rivillä 167.

Viittaukset Jypeli.Camera.Position ja Jypeli.Camera.ZoomFactor.

Viitattu Jypeli.Mouse.GetPositionOnWorld(), Jypeli.TouchPanel.IsBeingTouched(), Jypeli.Mouse.IsCursorOn(), Jypeli.Camera.ScreenToWorld() ja Jypeli.Camera.Update().

◆ ScreenToWorld() [2/2]

Vector Jypeli.Camera.ScreenToWorld ( Vector  point,
Layer  layer 
)

Muuntaa annetun pisteen ruutukoordinaateista maailmankoordinaatteihin ottaen huomioon oliokerroksen suhteellisen siirtymän.

Määrittely tiedoston Camera.cs rivillä 184.

Viittaukset Jypeli.Vector.ComponentProduct(), Jypeli.Layer.IgnoresZoom, Jypeli.Camera.Position, Jypeli.Layer.RelativeTransition, Jypeli.Camera.ScreenToWorld() ja Jypeli.Camera.ZoomFactor.

◆ StopFollowing()

void Jypeli.Camera.StopFollowing ( )

Lopettaa olio(iden) seuraamisen.

Määrittely tiedoston Camera.cs rivillä 286.

Viittaukset Jypeli.GameObject.Destroy(), Jypeli.Camera.FollowedObject ja Jypeli.Camera.followedObjects.

Viitattu Jypeli.Camera.Reset().

◆ Update()

◆ updateAvgPoint()

◆ WorldToScreen() [1/2]

Vector Jypeli.Camera.WorldToScreen ( Vector  point)

Muuntaa annetun pisteen maailmankoordinaateista ruutukoordinaatteihin.

Määrittely tiedoston Camera.cs rivillä 175.

Viittaukset Jypeli.Camera.Position ja Jypeli.Camera.ZoomFactor.

Viitattu Jypeli.Game.IsObjectOnScreen() ja Jypeli.Camera.WorldToScreen().

◆ WorldToScreen() [2/2]

Vector Jypeli.Camera.WorldToScreen ( Vector  point,
Layer  layer 
)

Muuntaa annetun pisteen maailmankoordinaateista ruutukoordinaatteihin ottaen huomioon oliokerroksen suhteellisen siirtymän.

Määrittely tiedoston Camera.cs rivillä 198.

Viittaukset Jypeli.Vector.ComponentProduct(), Jypeli.Layer.IgnoresZoom, Jypeli.Camera.Position, Jypeli.Layer.RelativeTransition, Jypeli.Camera.WorldToScreen() ja Jypeli.Camera.ZoomFactor.

◆ Zoom()

void Jypeli.Camera.Zoom ( double  zoom)

Zoomaa.

Parametrit
zoomZoomauskerroin. Ykköstä suurempi (esim. 1.5) lähentää ja ykköstä pienempi (esim. 0.5) zoomaa kauemmas.

Määrittely tiedoston Camera.cs rivillä 224.

Viittaukset Jypeli.Camera.ZoomFactor.

◆ ZoomTo() [1/5]

void Jypeli.Camera.ZoomTo ( BoundingRectangle  rectangle)

Sijoittelee kameran annettuun suorakulmioon

Parametrit
rectangle

Määrittely tiedoston Camera.cs rivillä 324.

Viittaukset Jypeli.BoundingRectangle.Bottom, Jypeli.BoundingRectangle.Left, Jypeli.BoundingRectangle.Right, Jypeli.BoundingRectangle.Top ja Jypeli.Camera.ZoomTo().

◆ ZoomTo() [2/5]

void Jypeli.Camera.ZoomTo ( BoundingRectangle  rectangle,
double  borderSize 
)

Sijoittelee kameran annettuun suorakulmioon annetulla marginaalilla

Parametrit
rectangle
borderSize

Määrittely tiedoston Camera.cs rivillä 335.

Viittaukset Jypeli.BoundingRectangle.Bottom, Jypeli.BoundingRectangle.Left, Jypeli.BoundingRectangle.Right, Jypeli.BoundingRectangle.Top ja Jypeli.Camera.ZoomTo().

◆ ZoomTo() [3/5]

void Jypeli.Camera.ZoomTo ( double  left,
double  bottom,
double  right,
double  top 
)

Zoomaa ja sijoittaa kameran niin, että parametreina annettua alue näkyy kokonaan ruudulla.

Parametrit
leftAlueen vasemman reunan x-koordinaatti.
bottomAlueen alareunan y-koordinaatti.
rightAlueen oikean reunan x-koordinaatti.
topAlueen yläreunan y-koordinaatti.

Määrittely tiedoston Camera.cs rivillä 371.

Viittaukset Jypeli.Camera.ZoomTo().

◆ ZoomTo() [4/5]

void Jypeli.Camera.ZoomTo ( double  left,
double  bottom,
double  right,
double  top,
double  borderSize 
)
package

◆ ZoomTo() [5/5]

void Jypeli.Camera.ZoomTo ( Vector  bottomLeft,
Vector  topRight 
)

Zoomaa ja sijoittaa kameran niin, että parametreina annettua alue näkyy kokonaan ruudulla.

Parametrit
bottomLeftAlueen vasen alanurkka.
topRightAlueen oikea ylänurkka.

Määrittely tiedoston Camera.cs rivillä 315.

Viittaukset Jypeli.Vector.X, Jypeli.Vector.Y ja Jypeli.Camera.ZoomTo().

Viitattu Jypeli.Camera.doZoomToAllObjects(), Jypeli.Camera.ZoomTo() ja Jypeli.Camera.ZoomToLevel().

◆ ZoomToAllObjects() [1/2]

void Jypeli.Camera.ZoomToAllObjects ( )

Keskittää ja zoomaa kameran niin, että kaikki objektit näkyvät ruudulla.

Määrittely tiedoston Camera.cs rivillä 343.

Viittaukset Jypeli.Camera.ZoomToAllObjects().

Viitattu Jypeli.Camera.ZoomToAllObjects().

◆ ZoomToAllObjects() [2/2]

void Jypeli.Camera.ZoomToAllObjects ( double  borderSize)

Zoomaa ja sijoittaa kameran siten, että kaikki pelioliot ovat yhtäaikaa näkyvissä.

Parametrit
borderSizeReunalle jätettävä tila (jos negatiivinen, niin osa kentästä jää piiloon).

Määrittely tiedoston Camera.cs rivillä 352.

Viittaukset Jypeli.Game.DoNextUpdate() ja Jypeli.Camera.doZoomToAllObjects().

◆ ZoomToLevel() [1/2]

void Jypeli.Camera.ZoomToLevel ( )

Zoomaa ja keskittää kameran siten, että koko kenttä on näkyvissä kerralla.

Määrittely tiedoston Camera.cs rivillä 394.

Viittaukset Jypeli.Camera.ZoomToLevel().

Viitattu Jypeli.Camera.ZoomToLevel().

◆ ZoomToLevel() [2/2]

void Jypeli.Camera.ZoomToLevel ( double  borderSize)

Zoomaa ja keskittää kameran siten, että koko kenttä on näkyvissä kerralla. Tällöin kamera ei seuraa mitään oliota.

Parametrit
borderSizeReunalle jätettävä tila (jos negatiivinen, niin osa kentästä jää piiloon).

Määrittely tiedoston Camera.cs rivillä 403.

Viittaukset Jypeli.Level.Bottom, Jypeli.Camera.FollowedObject, Jypeli.Game.Instance, Jypeli.Level.Left, Jypeli.Game.Level, Jypeli.Level.Right, Jypeli.Level.Top ja Jypeli.Camera.ZoomTo().

Jäsendatan dokumentaatio

◆ _pos

Vector Jypeli.Camera._pos = Vector.Zero
private

Määrittely tiedoston Camera.cs rivillä 43.

Viitattu Jypeli.Camera.Update().

◆ _stayInLevel

bool Jypeli.Camera._stayInLevel = false
package

Määrittely tiedoston Camera.cs rivillä 45.

◆ _zoomFactor

double Jypeli.Camera._zoomFactor = 1.0
package

Määrittely tiedoston Camera.cs rivillä 46.

◆ followedObjects

List<GameObject> Jypeli.Camera.followedObjects = null
private

Ominaisuuksien dokumentaatio

◆ FollowedObject

GameObject Jypeli.Camera.FollowedObject
getset

Olio, jota kamera seuraa. Jos null, mitään oliota ei seurata.

Määrittely tiedoston Camera.cs rivillä 116.

Viitattu Jypeli.Camera.Follow(), Jypeli.Camera.StopFollowing(), Jypeli.Camera.Update(), Jypeli.Camera.updateAvgPoint() ja Jypeli.Camera.ZoomToLevel().

◆ FollowOffset

Vector Jypeli.Camera.FollowOffset
getset

Jos kamera seuraa oliota, tällä voi säätää missä kohtaa ruutua pelaaja näkyy. Toisin sanoen ruutukoordinaateissa kerrotaan, kuinka kaukana ruudun keskustasta seurattava olio näkyy.

Pelaajan näyttäminen ruudun alareunassa, vaakasuunnassa keskellä:

Camera.Follow( pelaaja );
Camera.FollowOffset = new Vector( 0, Screen.Height * 0.4 );
Camera()
Luo uuden kameran.
Definition: Camera.cs:157

Määrittely tiedoston Camera.cs rivillä 140.

Viitattu Jypeli.Camera.Update().

◆ FollowsX

bool Jypeli.Camera.FollowsX
getset

Seurataanko oliota (FollowedObject) x- eli vaakasuunnassa.

Määrittely tiedoston Camera.cs rivillä 121.

Viitattu Jypeli.Camera.Camera(), Jypeli.Camera.Follow(), Jypeli.Camera.FollowX(), Jypeli.Camera.FollowY() ja Jypeli.Camera.Update().

◆ FollowsY

bool Jypeli.Camera.FollowsY
getset

Seurataanko oliota (FollowedObject) y- eli pystysuunnassa.

Määrittely tiedoston Camera.cs rivillä 126.

Viitattu Jypeli.Camera.Camera(), Jypeli.Camera.Follow(), Jypeli.Camera.FollowX(), Jypeli.Camera.FollowY() ja Jypeli.Camera.Update().

◆ FollowXMargin

double Jypeli.Camera.FollowXMargin
getset

Jos kamera seuraa useita olioita, tällä voi säätää kuinka paljon vasempaan ja oikeaan reunaan jätetään tyhjää tilaa.

Määrittely tiedoston Camera.cs rivillä 146.

Viitattu Jypeli.Camera.Camera() ja Jypeli.Camera.updateAvgPoint().

◆ FollowYMargin

double Jypeli.Camera.FollowYMargin
getset

Jos kamera seuraa useita olioita, tällä voi säätää kuinka paljon ylä- ja alareunaan jätetään tyhjää tilaa.

Määrittely tiedoston Camera.cs rivillä 152.

Viitattu Jypeli.Camera.Camera() ja Jypeli.Camera.updateAvgPoint().

◆ Position

◆ StayInLevel

bool Jypeli.Camera.StayInLevel
getset

Jos tosi, kamera ei mene koskaan kentän ulkopuolelle.

Määrittely tiedoston Camera.cs rivillä 107.

Viitattu Jypeli.Camera.Update().

◆ Velocity

Vector Jypeli.Camera.Velocity
getset

Kameran liikkumisnopeus.

Määrittely tiedoston Camera.cs rivillä 62.

Viitattu Jypeli.Camera.Reset() ja Jypeli.Camera.Update().

◆ X

double Jypeli.Camera.X
getset

Kameran paikan X-koordinaatti.

Määrittely tiedoston Camera.cs rivillä 67.

Viitattu Jypeli.Camera.Update().

◆ Y

double Jypeli.Camera.Y
getset

Kameran paikan Y-koordinaatti.

Määrittely tiedoston Camera.cs rivillä 82.

Viitattu Jypeli.Camera.Update().

◆ ZoomFactor

double Jypeli.Camera.ZoomFactor
getset

Dokumentaatio tälle luokalle luotiin seuraavasta tiedostosta: