Adesso che abbiamo capito (per grandi linee) come funziona lo ZOrder, vediamo di applicarlo. Vi starete chiedendo: "Ok, so a cosa serve, come faccio ora a calcolarlo?". Per farlo dobbiamo ricorrere ad un po' di logica: supponiamo che il nostro schermo (intendo la finestra di gioco con schermo) sia 800×600 e che la parte inferiore dello schermo sia quella "più vicina" a noi e la parte iniziale dello schermo sia la parte "più lontana" come nello schema (GUARDATE LA FIGURA). Il quadrato (rettangolo più che altro) rappresenta lo schermo di gioco. Ma come facciamo a disegnare l'albero o il personaggio a quell'altezza? Modificando la Y dello sprite? Ma se il personaggio si trova a Y = 0 vuol dire che si trova nella parte più lontana dello schermo e quindi nell'ultima fascia dello ZOrder mentre se lo mettiamo a Y = 600 (altezza dello schermo) si trova alla parte più vicina dello schermo e quindi si trova "avanti" a tutto. Questo cosa vuol dire? Che la posizione è funzione della Y dello sprite. Quindi possiamo calcolare la fascia dello ZOrder in questo modo: ZOrder = (Y + Altezza sprite) / Altezza Schermo
Bisogna aggiungere l'altezza dello sprite per il semplice motivo che la Y indica il vertice sinistro-alto dell'immagine, mentre per lo ZOrder ci serve sapere la fine (il "piede") dello sprite. Ma non ci serve proprio il piede, ma il valore un po' superiore, poichè la fine dell'immagine indica la punta del piede (o magari può essere un immagine più lunga e quindi sfasare). Ci serve dunque sapere il punto del "tallone" dell'immagine: ZOrder = (Y + Altezza Sprite ? NPixel) / Altezza Schermo
NPixel ci indica di quanto si sposta il tallone dalla fine dell'immagine. Io preferisco tagliare l'immagine sempre in 2 parti: la parte alta e la parte bassa (in un personaggio le gambe e il busto). Quindi, invece di prendere il tallone, prendiamo la metà dello sprite e quindi NPixel = Altezza Sprite / 2
Sostituendo:
ZOrder = (Y + Altezza Sprite ? (Altezza Sprite /2) ) / Altezza Schermo
Semplificando:
ZOrder = (Y + Altezza Sprite / 2) / Altezza Schermo
Dovremmo trovarci bene in quasi tutte le situazioni. La formula dello ZOrder qui sopra và bene solamente per uno schermo fisso (dove la mappa non è scrollabile) quindi và rivista, ma sono particolari che analizzeremo quando, appunto, imposteremo la "telecamera" per il nostro gioco.
Sweet Vengeance della Freank-Expo
Autore: Freank
|
News di attualità
LA CAVALLERIA E IL...
RIFLESSIONI Nell'illustrazione: Galielo...
Pubblicare un gioco...
Spesso creiamo giochi amatoriali e una volta...
LA CAVALLERIA E IL...
Nell'illustrazione: tortura sotto...
Juventus, Conte...
La Juventus occupa il primo posto in...
Kamasutra: molto...
Parlando di Kamasutra, quello che si profila...
|