1
Linguaggi di programmazione e scripting / Collisioni di oggetti 2d
« il: 19 Dicembre 2014, 16:51:29 »
Salve a tutti specialmente a TheKaneB
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
semplice algoritmo
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
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