Autore Topic: dead  (Letto 3021 volte)

Offline legacy

  • ASM Lover
  • *****
  • Post: 353
  • Karma: +14/-2
    • Mostra profilo
dead
« il: 30 ſettembre 2013, 02:39:44 »
dead
« Ultima modifica: 18 Gennaio 2020, 00:44:09 da legacy »

Offline TheKaneB

  • Human Debugger
  • *****
  • Post: 5292
  • Karma: +20/-23
    • Mostra profilo
    • http://www.antoniobarba.org
Re:A* search, dove e per cosa e' usato nei video games ?
« Risposta #1 il: 30 ſettembre 2013, 03:05:18 »
Si usa per calcolare i percorsi dei personaggi all'interno delle mappe. È usato praticamente in tutti i giochi che hanno qualche forma di mappa esplorabile.

Offline TheKaneB

  • Human Debugger
  • *****
  • Post: 5292
  • Karma: +20/-23
    • Mostra profilo
    • http://www.antoniobarba.org
Re:A* search, dove e per cosa e' usato nei video games ?
« Risposta #2 il: 30 ſettembre 2013, 03:10:42 »
Uhm... esiste un clone open di civilization, si chiama freeciv, forse contiene A*.
Prova anche a guardare nel codice di Sauerbraten e Nexuiz, che potrebbero avere qualche roba utile. Probabilmente anche su gamedev.net trovi vari tutorial e implementazioni in c e c++

Offline TheKaneB

  • Human Debugger
  • *****
  • Post: 5292
  • Karma: +20/-23
    • Mostra profilo
    • http://www.antoniobarba.org
Re:A* search, dove e per cosa e' usato nei video games ?
« Risposta #3 il: 30 ſettembre 2013, 03:16:41 »
Per risolvere un labirinto puoi tranquillamente usare una matrice di booleani per rappresentare le celle e applicare A* su questa matrice. Ti serviranno poi delle strutture di supporto, in particolare una priority queue per contenere i nodi in visita, e poi un flag e un intero su ogni cella della matrice per memorizzare lo stato della visita e il cammino parziale dall'origine fino a quella cella.
« Ultima modifica: 30 ſettembre 2013, 03:19:54 da TheKaneB »

Offline raistlin77it

  • Tech Guru
  • *****
  • Post: 221
  • Karma: +2/-0
    • Mostra profilo
Re:A* search, dove e per cosa e' usato nei video games ?
« Risposta #4 il: 30 ſettembre 2013, 10:00:08 »
qua c'è una bella spiegazione
http://www.policyalmanac.org/games/aStarTutorial.htm

fore questo link è più conciso :)  http://www.gotoandplay.it/_articles/2003/08/pathfinder2.php
« Ultima modifica: 30 ſettembre 2013, 10:11:57 da raistlin77it »

Offline xteamsoftware

  • Tech
  • *****
  • Post: 78
  • Karma: +0/-1
    • Mostra profilo
    • XTeam Software Solution
Re:A* search, dove e per cosa e' usato nei video games ?
« Risposta #5 il: 30 ſettembre 2013, 12:41:33 »
A* lo usiamo in Retaliation per cacolare il percorso più consono alle unità.

Si divide in 2 "parti" una con la verifica dei percorsi che calcola le posizioni per verificare la "spesa minore" (F) in funzione dei un calcolo euristico e della distanza dalle celle con il target; l'altra è il calcolo H ( euristico ) con i valori che influenzano il calcolo del percorso ( cose impassabili, nemici, terreni che rallentano, etc.. )

Offline xteamsoftware

  • Tech
  • *****
  • Post: 78
  • Karma: +0/-1
    • Mostra profilo
    • XTeam Software Solution
Re:A* search, dove e per cosa e' usato nei video games ?
« Risposta #6 il: 30 ſettembre 2013, 13:29:25 »
Retaliation ? Quella parte e' scritta in C++ o C o altro ?
Retaliation è scritto tutto in C++ quindi anche A* ;)

Citazione
+ o - e' l'approccio che sto seguendo io, ma per l'informazione topologica usate una matrice o un albero ?

Le mappe con le informazioni sui terreni sono una matrice multidimensionale ma, per il calcolo del percorso A*, uso un albero che mi permette di trovare il path dalla partenza alla fine senza rivedere tutte le celle.

Offline xteamsoftware

  • Tech
  • *****
  • Post: 78
  • Karma: +0/-1
    • Mostra profilo
    • XTeam Software Solution
Re:A* search, dove e per cosa e' usato nei video games ?
« Risposta #7 il: 30 ſettembre 2013, 14:20:52 »
Retaliation ( il gioco ) non ha i sorgenti pubblici ( anche perchè è sviluppato per NintendoDS ) infatti sarà tolto da SourceForge.

Solo l'editor di mappe avrà i sorgenti pubblici.


Offline xteamsoftware

  • Tech
  • *****
  • Post: 78
  • Karma: +0/-1
    • Mostra profilo
    • XTeam Software Solution
Re:A* search, dove e per cosa e' usato nei video games ?
« Risposta #8 il: 30 ſettembre 2013, 14:38:31 »
Incrocio XX XX ;D ;D

Se hai bisogno ti faccio avere i codici. Però non prima di stasera devo andare da un cliente :P

Tags: