sabato 28 maggio 2011

Android + Unity: primi commenti

Se non mi fossero capitati una serie di bugs e rallentamenti del cavolo, sarei anche felice.
Invece non lo sono, diciamo non particolarmente, per adesso.

Ho finalmente creato la mia prima app dal progetto su cui sto lavorando in ufficio. Ho seguito passo passo la guida di installazione dell'SDK di Android e poi ho proceduto con la creazione dell'app da Unity.
Intanto sono partiti un sacco di errori che nella versione "locale" non c'erano. Poco male, dovrei mettere lo #pragma strict da subito, ma appena ho inserito la riga di codice su alcuni file, diverse chiamate standart corrette non ne volevano sapere di funzionare fino a, ahimè, un riavvio del programma. Ovviamente ho perso un sacco di tempo prima di intuirlo.
...che poi, a dirla tutta, Unity mi è pure crashato diverse volte (6?) mentre un paio di volte dopo che ho alterato molteplici classi, riferimenti e nomi ho rilanciando l'app, scattava da morire, spaventandomi tanto da farmi credere di aver commesso qualche misterioso grosso errore. Solo dopo una serie di prove senza risultato, il sano riavvio ha fatto ritornare le cose apposto senza fare nulla. Un po' di amaro in bocca mi è venuto, si.

Per quanto riguarda l'esportazione, grazie all'SDK posso caricare il gioco su un emulatore.
Peccato che ci metta davvero troppo ad aprirsi e installare l'app e che sia alla fine praticamente ferma - le prestazioni sono davvero un disastro.
E, ancora peggio, la prima esportazione è andata a buon fine, poi il giorno dopo ho fatto un update dell'SDK e ho riesportato l'app e qui il dramma: unity si è freezato nella ricerca delle librerie di google.
L'ho lasciato fermo così per quasi una notte intera ma nulla, poi 2 giorni dopo, preoccupato che ci fosse qualche problema nel mio pc, ho cercato una soluzione online e sono caduto qui, scoprendo che è un problema abbastanza comune e che per risolvere i sistemi non sono proprio eleganti.
Stupido io a non cercare prima, però cmq mi ha fatto incazzare.
Per quantro riguarda la realizzazione dell'app in effetti mi sto divertendo a montarla e alcune cose sono andate molto bene. Altre lo sono un po' meno ma è obbligatorio l'uso costante della documentazione più la ricerca online di soluzioni e idee e se ne viene sempre fuori - in alcuni casi le cose sono davvero già pensate e fatte ma, ripeto, bisogna aver voglia di cercare e provare.
Sul fronte performance devo dire che raggruppare gruppi di pezzi per gestire singole chiamate al metodo Update ha dato i suoi frutti e l'app (cmq ancora di test) da 30 drawcall è passata a 16-20 con 7 livelli di parallasse (prima 2), personaggio animato che si muove, due ostacoli sempre mobili e un mega nemico (una png) che si muove con la BELLISSIMA classe iTween in loop infinito.

Per tirare le somme, il processo, almeno alle prime volte, non è proprio comodo e veloce ma forse sono stato abituato troppo bene con flash della CS5, almeno per quelle 15 prove che ho fatto.
Per contro la comunity Unity è davvero attiva e numerosa (forum e unity-answer) e mi ha permesso di salvarmi più volte da problemi e grossi grattacapi.
Un po' deludente invece il fatto che molti tutorial dal sito ufficiale siano datati e alcune volte pure non funzionino. Si riesce lo stesso, ma non mi dispiacerebbe una maggiore cura.

Il mio prossimo step è capire come montare gli elementi in gioco per popolare i livelli e far funzionare un primo prototipo di gioco dall'inizio alla fine.

sabato 21 maggio 2011

Eroe pronto

Questa sera mi sto passando una serie di immagini di Vanquish dal sito della platinum games.
Mi piace molto Vanquish (come non potrebbe..), anche se il personaggio principale, come design, mi è sempre sembrato mancare di carattere, almeno come ci si aspetta da un eroe in armatura cybernetica. Cmq, apparte tutto, sono dei bravissimi sviluppatori che stimo e apprezzerò probabilmente sempre.

Al contrario, sono decisamente contento del MIO personaggio principale: è finalmente finito e un esterno lo sta modellando. Credo che per il week end dovremmo vedere qualcosa che, spero, funzioni come lo fa su carta.
Da un amico artista/modellatore davvero bravo ho ricevuto un «Ottimo» anche se era aggiunto a un «Già visto, nulla di nuovo..». In effetti non voleva esserlo anche se, a ripensarci, sarebbe interessante che lo fosse seppur non sia sicuro di avere la facoltà di uscire da certi canoni.
In realtà negli indie mi pare manchi una simile direzione (classica invece nel mainstream). Di solito si prendono strade meno stereotipate (anche per mancanza di budjet e capacità) ma nel mio caso io volevo fare un eroe esattamente come l'ho disegnato e come l'ho visto su milioni di fumetti e riviste che ho amato. Insomma, credo di aver fatto centro. Si adatta bene al tipo di gioco e credo faccia abbastanza colpo, almeno tra i più "nerd" come me, che poi è il pubblico su cui puntiamo.

Ah, si, dovremmo esserci con il nome sia per il team, che per il gioco. Insomma, il progetto sta prendendo forma e fa davvero bene al mio morale e alla stanchezza accumulata con i disegni notturni.
Adesso sono sul design dei nemici - le pagine dei vari giochi della platinum fanno proprio una voglia a fare Bene.
Per la sett prossima devo finerne almeno un paio e vorrei creare una linea guida sullo stile dei vari "mostri".