Visualizza post

Questa sezione ti permette di visualizzare tutti i post inviati da questo utente. N.B: puoi vedere solo i post relativi alle aree dove hai l'accesso.


Topics - Thejuster

Pagine: [1]
1
Linguaggi di programmazione e scripting / Collisioni di oggetti 2d
« il: 19 Dicembre 2014, 16:51:29 »
Salve a tutti specialmente a TheKaneB :D

chiedo a lui specialmente, essendo un esperto in questo settore può aiutarmi.

Ho un piccolo problemino con il mio algoritmo di collisioni di 2 oggetti in DirectX
e non capisco perché non funziona a dovere

Struttura degli ostacoli

Codice: [Seleziona]
List<_obstacle> Ostacoli = new List<_obstacle>();
 
public struct _obstacle
{
   public int id;
   public int x;
   public int y;
 
}




semplice algoritmo


Codice: [Seleziona]


for(int i = 0; i < Ostacoli.Count; i++)
{
 
   //Verifica
 
  if( Tizio_X >= Ostacoli[i].x && Tizio_X <= Ostacoli[i].x + 32 && Tizio_Y >= Ostacoli[i].y && Tizio_Y <= Ostacoli[i].y + 32)
{
 
 // Collisione
 
}
 
 
}




Cosa succede?

Succede che la collisione su asse Y viene rilevata ma su X no.
Quindi il player gli passa per mezzo ma non lo supera.

ecco un esempio di cosa succede





Cosa c'è di sbagliato?

PS: Il player misura 32x64 px   gli ostacoli  32x32

Pagine: [1]