Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it L'avatar di Razorblade
    Registrato dal
    Feb 2002
    Messaggi
    1,308

    Gestione avanzata collisioni

    Ciao a tutti,
    premetto che sono abbastanza nuovo del mondo actionscript, sto attualmente studiando questo linguaggio e a questo scopo, sto realizzando un giochino tipo arkanoid ( per chi non lo conoscesse http://it.wikipedia.org/wiki/Arkanoid ).
    Però mi trovo di fronte ad un problema che non so gestire, ovvero, qual è il metodo più corretto e meno macchinoso possibile per far rimbalzare la pallina sulla barra e sulle pareti con la corretta angolazione?
    Grazie

  2. #2
    Flash di suo per le collisioni mette a disposizione solo l'hitTest, che però non va molto bene per le forme non quadrate (e quindi nel caso di arkanoid, avendo la pallina, non è l'ideale).
    Puoi basarti sulla distanza tra gli elementi (nel caso di pallina e "blocco", calcoli la distanza tra il centro della pallina e il perimetro del blocco: se questa è minore o uguale al raggio, i due oggetti sono in collisione).

    Altrimenti puoi usare uno dei motori fisici (APE, FisixEngine, ...) reperibili sul web e realizzati in Actionscript, però la maggior parte di quelli un po' più avanti con lo sviluppo è in Actionscript 3 ed è quindi richiesto Flash CS3.

    Per arkanoid comunque dovrebbe bastarti calcolare la distanza tra gli elementi basandoti sul raggo e poi un po' di matematica per calcolare il rimbalzo

  3. #3
    Utente di HTML.it L'avatar di Razorblade
    Registrato dal
    Feb 2002
    Messaggi
    1,308
    Ciao,
    grazie per la risposta, ero già a conoscenza del metodo hitTest ed immaginavo ci fosse qualcosa di più avanzato. Darò un'occhiata ai motori fisici di cui parli, penso che troverò le risposte che cerco.
    Ciao!

  4. #4
    Originariamente inviato da Razorblade
    Ciao,
    grazie per la risposta, ero già a conoscenza del metodo hitTest ed immaginavo ci fosse qualcosa di più avanzato. Darò un'occhiata ai motori fisici di cui parli, penso che troverò le risposte che cerco.
    Ciao!
    Considera che purtroppo motori fisici in Actionscript ne sono "iniziati" molti, ma finiti pochi...cioè la maggior parte è rimasta per un motivo o per l'altro ad uno stato di alpha/beta.
    Questo non vuol dire che alcuni siano comunque validi, specialmente per giochi abbastanza "classici" o con collisioni non particolarmente complesse (come può essere il caso di Arkanoid), ma se hai bisogno di maggiore flessibilità o di forme particolari può essere difficile reperire un buon motore.

    Recentemente io ho usato APE (http://www.cove.org/ape/), che è sviluppato in Actionscript3, e già la versione 0.45a offre buone performance e per un Arkanoid potrebbe andare benissimo , tra l'altro è anche abbastanza ben documentato.
    Puoi anche dare un'occhiata alla sezione "physics" del laboratorio di Andrè Michelle (http://lab.andre-michelle.com/tag/physics/), dove sono presenti due "motiri" (Revive e PopShapes), ma privi di documentazione in quanto direi più "prove" che altro, quindi un po' più ostici da usare.

    Un altro ancora è Fisix Engine (http://www.fisixengine.com/), rimasto però in versione 0.5 alpha.

    Per Actionscript 2 potrei consigliarti un'occhiata a Flade (http://www.cove.org/flade/), rimasto in versione 0.6 però probabilmente già con feature interessanti.

    Buon divertimento

  5. #5
    Utente di HTML.it L'avatar di Razorblade
    Registrato dal
    Feb 2002
    Messaggi
    1,308
    Grazie 1000,
    sei stato gentilissimo!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.