XNA colisioni

di
Anonimizzato10204
il
18 risposte

XNA colisioni

Che sistema si usa per valutare la collisione di due Sprite se la forma non è rettangolare?

18 Risposte

  • Re: XNA colisioni

    Stai parlando del 2D o del 3D?
  • Re: XNA colisioni

    2D, ho degli Sprite in parte trasparenti e vorrei la collisione quando si urtano le parti visibili.
  • Re: XNA colisioni

    Ma quando parli di sprite cosa intendi delle Texture2D? Oppure ti sei creato delle classi Sprite che si tengono anche la posizione?
  • Re: XNA colisioni

    È vero ho preso spunto dal tutorial su XNA su questo sito e ho fatto una classe che contiene la posizione.
  • Re: XNA colisioni

    È vero ho preso spunto dal tutorial su XNA su questo sito e ho fatto una classe che contiene la posizione.
  • Re: XNA colisioni

    Pure io ho letto l' ultimo articolo sulle collisioni, dove viene considerata la collisione quando i due rettangoli si intersecano e mi sono fatto la stessa domanda.

    Beh, potrebbero esserci delle migliorie legate alla forma particolare della tua immagine, se ad esempio si trattasse di sfere potresti considerare la collisione quando la distanza tra i due oggetti è minore della somma dei raggi
  • Re: XNA colisioni

    Per le sfere ok, mi chiedevo come fare per forme irregolari.
  • Re: XNA colisioni

    Potresti vedere se la tua immagine è inscrivibile dentro un insieme di rettangoli o cerchi, poi visto che hai già una classe che incapsula lo sprite ti tieni questa lista di forme e vedi se intersecano l' altro oggetto.
  • Re: XNA colisioni

    Però quando rilevo la collisione questa è già avvenuta. Come faccio a beccare proprio il momento esatto?
  • Re: XNA colisioni

    Beh, tu conoscevi lo stato all' istante precedente, se le traiettorie sono semplici ad esempio traiettorie rettilinee, non ti dovrebbe essere difficile calcolare il momento esatto della collisione.
  • Re: XNA colisioni

    Si, però quel momento è già passato.
  • Re: XNA colisioni

    Beh, e tu fa due volte il calcolo.
  • Re: XNA colisioni

    Cosa intendi dire?
  • Re: XNA colisioni

    Prima calcoli l' istante in cui le due traiettorie si intersecano, calcoli le posizioni e le nuove direzioni a quell' istante, e poi (se non vi sono altre collisioni) calcoli la posizione al momento attuale. In pratica continui ad avanzare nel tempo di collisione in collisione fino ad arrivare al momento attuale.

    Non sono sicuro di essere stato chiarissimo
Devi accedere o registrarti per scrivere nel forum
18 risposte