Autore Topic: Game Design  (Letto 1358 volte)

Offline Giak

  • Utente junior
  • **
  • Post: 52
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    transformer tf101
  • Sistema operativo:
    ubuntu 12.10
Game Design
« il: 23 Maggio 2013, 21:48:21 CEST »
0
salve mi chiamo giacomo e sono uno studente al terzo anno di informatica. per la prima volta mi trovo di fronte alla programmazione grafica e nello specifico a dover programmare un gioco su android. mi trovo un po spaesato nello scegliere classi e implementazione.

il gioco che vorrei programmare è ispirato a "Asteroid",  "Space invaders";  solo che vorrei renderlo più dinamico dando l'impressione che la navicella viaggi in uno spazio infinito verticale. (come si implementa lo spostamento? tenendo fissi i protagonisti (navicelle) e spostando sotto una texture che simula visivamente lo spostamento nello spazio?)

quello che vorrei iniziare a capire è quali classi utilizzare e come implementare la parte di drawing.

leggendo il reto meier cap 11 ho visto che per disegnare da thread non UI si usano le surfaceview, anche se non ho ben capito che si utilizzino.
mi consigliate di usare un unico canvas per tutto lo schermo? o view multiple?

sò di essere stato molto generico e anche confusionario ma pur conoscendo java e android sono un pò confuso e ho bisogno di essere inquadrato sul come procedere. sarei felice anche se mi linkaste siti, tutorial, codici open source o qualsiasi altro materiale pensate possa essermi utile.

infiniti grazie. Giacomo.

Offline rs94

  • Utente normale
  • ***
  • Post: 227
  • Respect: +21
    • Mostra profilo
  • Dispositivo Android:
    Sony Ericsson Xperia Arc S
  • Sistema operativo:
    Windows 8
Re:Game Design
« Risposta #1 il: 23 Maggio 2013, 22:49:50 CEST »
0
Per giochi 2d su android secondo me la soluzione è http://www.andengine.org/

Diciamo che ti facilita molto le cose, fornendoti metodi per caricare sprite, texture, sfondi, gestire la fisica, ecc...

Dopo lo sbattimento iniziale per capire un po come funziona ti accorgerai che è una manna dal cielo

Un consiglio... Il forum di andengine è ricco di esempi e tutorial. Dacci un occhio
L'unica certezza è il dubbio.
Dubitare di se stessi è il primo segno di intelligenza.

Offline GennyAndroid

  • Utente junior
  • **
  • Post: 115
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Samsung Galaxy Ace
  • Play Store ID:
    Gennaro Petito
  • Sistema operativo:
    Windows 7
Re:Game Design
« Risposta #2 il: 24 Maggio 2013, 00:04:15 CEST »
0
io ho realizzato un gioco simile a quello che intendi fare tu con il solo ausilio dei canvas riuscendo a mantenere gli FPS abbastanza alti.

Quindi per la mia esperienza ti consiglio di utilizzare i Canvas senza l'ausilio di librerie esterne.

Offline Giak

  • Utente junior
  • **
  • Post: 52
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    transformer tf101
  • Sistema operativo:
    ubuntu 12.10
Re:Game Design
« Risposta #3 il: 24 Maggio 2013, 21:16:13 CEST »
0
Ho continuato a curiosare in giro per cercare di farmi un idea più chiara e ho trovato un ottima presentazione in italiano di andegine, penso fatta da un professore.

devo dire che effettivamente mi ha convinto più di altre librerie trovate in rete. esistono dei link alla documentazione? qualcosa tipo Package Index | Android Developers  senza mi sentirei perso. hanno prodotto una documentazione vero?

Offline rs94

  • Utente normale
  • ***
  • Post: 227
  • Respect: +21
    • Mostra profilo
  • Dispositivo Android:
    Sony Ericsson Xperia Arc S
  • Sistema operativo:
    Windows 8
Re:Game Design
« Risposta #4 il: 24 Maggio 2013, 22:56:43 CEST »
0
Sinceramente non ti so dire di preciso.... Andengine si basa tutto sul forum, quindi non penso esista una documentazione ufficiale (spero di essere smentito)
L'unica certezza è il dubbio.
Dubitare di se stessi è il primo segno di intelligenza.

Offline Eu4ia

  • Utente junior
  • **
  • Post: 93
  • Respect: +16
    • Mostra profilo
  • Play Store ID:
    Eu4ia
  • Sistema operativo:
    Ubuntu 11.10 + Windows 7
Re:Game Design
« Risposta #5 il: 25 Maggio 2013, 00:07:08 CEST »
0
Ho continuato a curiosare in giro per cercare di farmi un idea più chiara e ho trovato un ottima presentazione in italiano di andegine, penso fatta da un professore.

devo dire che effettivamente mi ha convinto più di altre librerie trovate in rete. esistono dei link alla documentazione? qualcosa tipo Package Index | Android Developers  senza mi sentirei perso. hanno prodotto una documentazione vero?

Ciao Giak, potresti postare il link della documentazione che hai trovato? Grazie
Se ti sono stato utile premi "Thanks" ;-)

Offline Giak

  • Utente junior
  • **
  • Post: 52
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    transformer tf101
  • Sistema operativo:
    ubuntu 12.10
Re:Game Design
« Risposta #6 il: 25 Maggio 2013, 11:14:39 CEST »
0
Ciao Giak, potresti postare il link della documentazione che hai trovato? Grazie

non ho trovato una documentazione ma una presentazione è molto diverso. ho visto c'è un wiki non ufficiale ma effettivamente la documentazione scarseggia parecchio. ho scaricato il codice da https://github.com/nicolasgramlich/AndEngine ma devo ancora mettere a posto eclipse.

non sono tanto sicuro di usare questa libreria, ci rifletterò un po, anche perché il mio è un progetto a fini didattici quindi vorrei comunque capire bene come funzionano le cose su android e non imparare solo ad usare una libreria.

Offline Giak

  • Utente junior
  • **
  • Post: 52
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    transformer tf101
  • Sistema operativo:
    ubuntu 12.10
Re:Game Design
« Risposta #7 il: 27 Maggio 2013, 15:50:16 CEST »
0
ho iniziato a scrivere un po di codice. essenzialmente per la parte di gaming vero e proprio il tutto si riduce ad una surfaceView e un thread che fa un loop di drawing. è effettivamente cosi?

Offline Giak

  • Utente junior
  • **
  • Post: 52
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    transformer tf101
  • Sistema operativo:
    ubuntu 12.10
Re:Game Design
« Risposta #8 il: 31 Maggio 2013, 11:18:40 CEST »
0
sto andando avanti con la scrittura del codice e per ora non sono dovuto ricorrere a librerie esterne. il motore grafico è composto essenzialmente da un thread che in reazione agli eventi di touch disegna il canvas fornitogli dalla sourfaceView.

tra un pò dovro iniziare con le ottimizzazioni, per ora imbianco di nero lo sfondo e poi ci ridisegno sopra ogni volta tutto il contenuto.

si fà effettivamente cosi o sarebbe meglio definire delle regioni da non re-imbiancare?

inoltre tra poco dovrei iniziare a lavorare sulla texture da usare come sfondo, per simulare lo spostamento verticale nello spazio.

avete qualche link da consigliarmi? immagino dovrò fare prefetch della texture e altre ottimizzazioni.

un atro tema da approfondire è quello di come limitare gli FPS, per ora il motore grafico gira in un while(true) .