|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Member
Iscritto dal: Sep 2004
Città: Sardegna
Messaggi: 98
|
[JAVA] Fluidità movimento personaggio in un Video Game
Ciao a tutti!
Sto costruendo un videogioco in Java. Ho creato lo scenario di un gioco tipo "pacman" in cui viene caricato un labirinto nel cui interno si muovono dei nemici (in maniera casuale) e un personaggio principale (tramite tastiera). Il tutto viene svolto caricando lo scenario del gioco e i personaggi come immagini GIF, tutte della stessa dimensione. Proprio per questo i personaggi si muovono in "corridoi" del labirinto in cui passano "a incastro",ossia occupano tutto il corridoio perfettamente. Il mio problema è: siccome il personaggio viene mosso da tastiera, ad ogni incrocio, se devo effettuare una svolta, devo riuscire a fare combacciare perfettamente (pixel per pixel) l'immagine del mio personggio con il corridoio in cui devo effettuare la svolta altrimenti non riesco ad entrare!! Avete qualche soluzione al problema? |
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Dec 2002
Messaggi: 3359
|
Puoi usare due diverse soluzioni, la prima è che invece di spostare il personaggio per pixel, lo sposti su una griglia, questo implica che il tuo "pac-man" avrà posizioni prestabilite e ti risulterà tutto più semplice.
Un'altra è quello di fare in modo che quando il personaggio cambia direzione controlli se sbatte e in tal caso si autoaggiusta per infilarsi nel corridorio, è un pelino più complicata ma fattibilissima. In pratica potresti fare una cosa del genere: controlli se il giocatore ha deciso di cambiare direzione, se si controlli a che distanza ti trovi dall'incrocio più vicino, poi fai vari casi a seconda della distanza, ossia, se se molto lontano non fai nulla(il giocatore sarà matto per volere cambiare direzione in un corridorio senza incroci) se sei abbastanza vicino, nell'ordine di 10-20 pixel puoi fare in modo che pac-man si avvici automaticamente all'incrocio ad una certa velocità(ovviamente più bassa di quella normale) se invece se molto vicino all'incorocio 1-5 pixel puoi fagli fare un salto alla posizione perfetta in modo che entri nel corridorio. Ecco da fare è una cavolata e penso che non si noterebbero molto gli aggiustamenti. Ultima modifica di MEMon : 12-09-2006 alle 11:52. |
![]() |
![]() |
![]() |
#3 |
Senior Member
Iscritto dal: Dec 2002
Messaggi: 3359
|
Poi ce ne sono altre come quella di realizzare un collision response molto fedele alla realtà, che ti eviterebbe vari casini, ma per un pac-man puoi anche non scomodarti troppo per farlo.
|
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 04:13.