Crea un'applicazione di Flight Simulator 3D per iOS e Android - Esporta progetto

In questa serie di tutorial, creeremo un'applicazione di simulazione di volo utilizzando ShiVa3D Suite. Per costruire questa applicazione, tratteremo tutti gli argomenti necessari per creare giochi 3D, applicazioni educative e applicazioni 3D innovative. In questa esercitazione, la quarta e ultima puntata, ci concentreremo sull'esportazione dell'applicazione per più piattaforme.

La terza parte di questa serie si è concentrata sull'aggiunta del codice e dell'unità test del prodotto finale. Nella parte 4, l'ultima puntata della serie, esporteremo l'applicazione dall'editor ShiVa e importeremo nello strumento di authoring di ShiVa. Quindi, spiegheremo come convertire l'applicazione in un eseguibile specifico della piattaforma tramite lo strumento di authoring ShiVa. Le piattaforme che considereremo sono Android, iPad e iPhone. Daremo le immagini dello schermo del simulatore da dispositivi reali utilizzati per i test, un telefono Motorola Droid con Android OS 2.2, un iPad2 con iOS 4.3 e un iPod Touch con iOS 4.3. Infine, nelle "Considerazioni conclusive", daremo una conclusione alla serie.


Disponibile anche in questa serie:

  1. Crea un'applicazione di Flight Simulator 3D per iOS e Android - Panoramica teorica
  2. Crea un'applicazione di Flight Simulator 3D per iOS e Android - Creazione di ambienti
  3. Crea un'applicazione di Flight Simulator 3D per iOS e Android - Programmazione di simulatore
  4. Crea un'applicazione di Flight Simulator 3D per iOS e Android - Esporta progetto

Esportare il gioco

Attualmente, lo sviluppo del gioco Simulator è stato completato. Esporteremo ora il simulatore per due piattaforme diverse per l'authoring: iOS, per l'implementazione in dispositivi iPad e iPhone / iPod Touch e sistema operativo Android, per l'implementazione su dispositivi Android.

Esporta per iOS

In Data Explorer, sotto la cartella Giochi, seleziona Simulatore. Dal menu del tasto destro, seleziona Esporta gioco (se ti viene chiesto di salvare qualcosa con il gioco, seleziona Sì).


Dalla finestra di dialogo Esporta, lasciare che il nome del campo di esportazione sia "Simulatore". Assicurati che la casella di controllo Cartella locale sia selezionata e scegli una cartella locale per esportare il gioco. Inoltre, seleziona la casella di controllo Runtime package (.stk) e scegli iOS per la piattaforma corrispondente.


Premi "Esporta" per esportare il gioco. Potrebbe essere necessario un po 'di tempo per completare l'esportazione. Una volta completato, vedrai una finestra di conferma come segue:


Esporta per Android

Questo è simile all'esportazione per iOS, tranne per il fatto che la piattaforma per il pacchetto Runtime deve essere selezionata come Android.



Lo strumento di authoring ShiVa

Finora, abbiamo sviluppato il simulatore senza scrivere alcun codice specifico per piattaforme iOS o Android. Ora utilizzeremo lo strumento Authoring di ShiVa per convertire il simulatore in tre diverse applicazioni, una per Android, una per iPhone / iPod touch e una per iPad.

La piattaforma Android

Apri lo strumento di creazione di ShiVa. Seleziona la scheda Android. Premi la freccia sotto "O inizia subito ...".


Viene visualizzato il passaggio 1 dello strumento di creazione. Per "Pacchetto applicazioni", seleziona dal tuo file system il file Simulator.stk esportato da ShiVa Editor per Android. Per 'Icon', seleziona flight-48-48.png che fa parte dell'archivio sorgente che accompagna questa serie. Per 'Startup splashscreen', seleziona flight-480-800.png che fa anche parte dell'archivio sorgente che accompagna questo articolo. Osservare che lo strumento di creazione ShiVa visualizza un'anteprima dei file di immagine specificati nelle selezioni 'Icona' e 'Schermata iniziale'. Premi "Step 2: Authoring" in cima allo schermo.


Viene visualizzato il passaggio 2 dello strumento di creazione. Qui creeremo un file eseguibile Android che può essere installato direttamente su un dispositivo Android. Seleziona 'Tipo di authoring' come 'Pacchetto APK' (Se vuoi creare un progetto Eclipse invece di un eseguibile, seleziona invece 'Progetto'. L'opzione Progetto non è stata testata in questa serie). Per "Identificatore pacchetto", inserisci com.shiva3d.simulator. Sia 'Versione' e 'Codice versione' rimangano come 1.0.0 e 1, rispettivamente. Premi su "Step 3: Build" in cima allo schermo.


Viene visualizzato il passaggio 3 dello strumento di creazione. Seleziona "Tipo di build" come "Sviluppo". La casella di controllo "Usa OpenGLES 1.1" dovrebbe essere deselezionata (non abbiamo testato la build con quella casella selezionata). Dal momento che vorremmo installare il simulatore nel nostro dispositivo Android come parte della build, abbiamo selezionato la casella di controllo "Installa su dispositivo connesso". Affinché questa opzione funzioni, è necessario aver completato i passaggi in "Preparazione del dispositivo Android per l'installazione" di seguito. Se la casella di controllo "Installa sul dispositivo connesso" non è selezionata, lo Strumento di creazione creerà l'eseguibile Android per l'applicazione Simulator nella "Cartella di output", che può essere installata in un secondo momento utilizzando lo strumento adb in Android.

Lasciare 'Audio backend' come 'Default'. Seleziona "Supporto OS minimo" come "Android 2.2 (livello API: 8)".


Definire una cartella di output per lo strumento di creazione per archiviare i file che genera durante il processo di creazione. Lascia che la selezione "Script post personalizzati" rimanga come opzione "Nessun script". Premi il pulsante Costruisci.


Ci vorrà un po 'per completare la build. Una volta completata la compilazione, nella console verrà visualizzata una conferma che indica che la compilazione è stata completata correttamente.


Se è stata selezionata l'opzione 'Installa su dispositivo connesso', a questo punto l'applicazione Simulator è stata installata sul dispositivo collegato. Indipendentemente dal fatto che l'opzione sia stata verificata o meno, è stato creato un eseguibile Android chiamato Simulator-debug.apk nella cartella di output definita nel passaggio 3.

Preparare il dispositivo Android per l'installazione

Se si desidera che lo strumento di creazione 3D di Shiva installi il simulatore nel dispositivo Android come parte della build, è necessario preparare il dispositivo per l'installazione. Innanzitutto, nelle impostazioni dell'applicazione, selezionare "Origini sconosciute", come mostrato di seguito.


Quindi, nelle opzioni di sviluppo del tuo dispositivo, seleziona "Debug USB" come mostrato di seguito.


Inoltre, assicurati che il tuo dispositivo sia collegato alla tua macchina di sviluppo tramite un cavo USB (tieni presente che quando colleghi un particolare dispositivo Android al tuo PC Windows per la prima volta, Windows OS installerà il driver del dispositivo appropriato nel tuo computer. è necessario puntare l'Installazione guidata hardware nella posizione della cartella di installazione di Android SDK per la procedura guidata per trovare un driver adatto).

Schermate del simulatore per il dispositivo Android

Il simulatore è stato distribuito in un telefono Motorola Droid con sistema operativo Android 2.2. La figura seguente mostra la scorciatoia per il simulatore nel menu di avvio di Android (l'icona di avvio è il file di immagine denominato flight-48-48.png utilizzato in precedenza nello strumento di creazione).


Quello che segue è uno screenshot del simulatore su un dispositivo Android.


La piattaforma iPad

Ora utilizzeremo lo Strumento di authoring ShiVa per creare l'applicazione Simulator per la distribuzione su un dispositivo iPad. Apri lo strumento di creazione di ShiVa. Seleziona la scheda iPad. Premi la freccia sotto "O inizia subito ...".


Viene visualizzato il passaggio 1 dello strumento di creazione. Per "Pacchetto applicazioni", seleziona dal tuo file system il file Simulator.stk esportato da ShiVa Editor per iOS. Per "Icona", seleziona il volo 72-72.png che fa parte dell'archivio sorgente che accompagna questa serie. Per 'Startup splashscreen', seleziona flight-768-1024.png che fa anche parte dell'archivio sorgente che accompagna questa serie. Osservare che lo Strumento di creazione ShiVa visualizza un'anteprima dei file di immagine specificati nelle selezioni 'Icona' e 'Schermata iniziale'. Premi "Step 2: Authoring" in cima allo schermo.


Viene visualizzato il passaggio 2 dello strumento di creazione. Qui creeremo un progetto Xcode che può essere utilizzato per creare e installare l'applicazione su un dispositivo iPad. Seleziona "Tipo di autore" come "Progetto". Per "Identificatore pacchetto", inserisci com.shiva3d.simulator. Per "Profilo di provisioning" fornire il profilo di provisioning di sviluppo dal portale di provisioning Apple. Per 'Firma identità' fornire il nome dello sviluppatore (o dell'organizzazione) nel portachiavi associato al certificato nel tuo computer di sviluppo Mac OS. Che la 'versione' sia 1.0.0. Premi su "Step 3: Build" in cima allo schermo.


Viene visualizzato il passaggio 3 dello strumento di creazione. Seleziona "Sviluppo" come "Tipo di build". La casella di controllo "Usa OpenGLES 1.1" dovrebbe essere deselezionata (non abbiamo testato la build con quella casella selezionata). Fornire una cartella di output per lo strumento di creazione per creare una cartella di progetto Xcode. Ad esempio, definiamo la cartella di output come / Users / cocoderkatz / Desktop / tmpiPad. Quindi, lo Strumento di creazione creerà una cartella denominata /Users/cocoderkatz/Desktop/tmpiPad/Simulator_iPad.s3dxproj e copierà i file / le cartelle del progetto Xcode sotto quella cartella. Non cambiare altre opzioni. Premi il pulsante Costruisci.


Una volta completata la compilazione, nella console verrà visualizzato un messaggio indicante che lo strumento di creazione ha creato una cartella del progetto Xcode e ha copiato i file correlati in quella cartella. Ora puoi usare xCode per creare ed eseguire l'applicazione Simulator su un dispositivo iPad come faresti normalmente con altri progetti Xcode.


Schermi del simulatore su un dispositivo iPad 2

Il simulatore è stato distribuito su un dispositivo iPad 2 con iOS 4.3. La figura seguente mostra la scorciatoia per il simulatore in un menu di avvio di iPad 2 (l'icona di avvio è il file di immagine denominato flight-72-72.png utilizzato in precedenza nello strumento di creazione).


Quello che segue è uno screenshot del gioco su un dispositivo iPad 2.


La piattaforma iPhone

Ora utilizzeremo lo Strumento di authoring ShiVa per creare l'applicazione Simulator da distribuire su un dispositivo iPhone / iPod touch. Apri lo strumento di creazione di ShiVa. Seleziona la scheda iPhone. Premi la freccia sotto "O inizia subito ...".


Viene visualizzato il passaggio 1 dello strumento di creazione. Per "Pacchetto applicazioni", seleziona dal tuo file system il file Simulator.stk esportato da ShiVa Editor per iOS. Per "Icona", seleziona il volo 114-114.png che fa parte dell'archivio sorgente che accompagna questa serie. Per 'Startup splashscreen', seleziona flight-640-960.png che fa anche parte dell'archivio sorgente che accompagna questa serie. Osservare che lo Strumento di creazione ShiVa visualizza un'anteprima dei file immagine specificati nelle selezioni 'Icona' e 'Schermata iniziale'. Premi "Step 2: Authoring" in cima allo schermo.


Viene visualizzato il passaggio 2 dello strumento di creazione. Qui creeremo un progetto Xcode che può essere utilizzato per creare e installare l'applicazione sul tuo dispositivo iPhone o iPod touch. Imposta il 'Tipo di authoring' su 'Progetto'. Per "Identificatore pacchetto", inserisci com.shiva3d.simulator. Per "Profilo di provisioning" fornire il profilo di provisioning di sviluppo da parte di Apple Provisioning Portal. Per 'Firma identità' fornire il nome dello sviluppatore (o dell'organizzazione) nel portachiavi associato al certificato nel tuo computer di sviluppo Mac OS. Che la 'versione' sia 1.0.0. Premi su "Step 3: Build" in cima allo schermo.


Viene visualizzato il passaggio 3 dello strumento di creazione. Seleziona "Sviluppo" come "Tipo di build". La casella di controllo "Usa OpenGLES 1.1" dovrebbe essere deselezionata (non abbiamo testato la build con quella casella selezionata).


Fornire una cartella di output per lo strumento di creazione per creare una cartella di progetto Xcode. Ad esempio, definiamo la cartella di output come / Users / cocoderkatz / Desktop / tmp. Quindi, lo Strumento di creazione creerà una cartella denominata /Users/cocoderkatz/Desktop/tmp/Simulator_iPhone.s3dxproj e copierà i file / le cartelle del progetto Xcode sotto quella cartella. Non cambiare altre opzioni. Premi il pulsante Costruisci.


Una volta completata la compilazione, nella console verrà visualizzato un messaggio indicante che lo strumento di creazione ha creato una cartella del progetto Xcode e ha copiato i file correlati in quella cartella. Ora puoi usare Xcode per creare ed eseguire l'applicazione Simulator in un dispositivo iPhone o iPod Touch come faresti normalmente con altri progetti Xcode.


Schermi del simulatore su dispositivi iPod Touch

Il simulatore è stato distribuito in un iPod touch con iOS 4.3. La figura seguente mostra la scorciatoia per Simulatore nel menu di avvio di iPod touch. L'icona di avvio è il file di immagine denominato flight-114-114.png utilizzato in precedenza nello strumento di creazione.


Quello che segue è uno screenshot del gioco su un iPod touch.



Osservazioni conclusive

In questa serie, abbiamo sviluppato un semplice simulatore di volo con ShiVa 3D Suite e lo abbiamo distribuito su dispositivi Android e iOS. I principali strumenti di sviluppo che abbiamo utilizzato sono ShiVa Editor e ShiVa Authoring Tool. L'editor ShiVa viene utilizzato per sviluppare un gioco 3D in modo indipendente dalla piattaforma. Permette allo sviluppatore di creare grafica 3D dell'applicazione e il codice corrispondente. L'output di ShiVa Editor è un file di esportazione specifico per piattaforma, ad es. uno per sistema operativo Android o uno per iOS. Il file di esportazione dall'editor ShiVa viene quindi importato nello strumento di creazione ShiVa per generare un file eseguibile o un file di progetto per la piattaforma specifica. Per il sistema operativo Android, abbiamo generato un file eseguibile Android utilizzando lo strumento di creazione ShiVa. Per iPad2 e iPhone / iPod, abbiamo generato progetti Xcode corrispondenti utilizzando lo strumento di authoring ShiVa.

Una suite di prodotti per sviluppare applicazioni multipiattaforma senza scrivere alcun codice specifico della piattaforma, ShiVa 3D Suite offre un grande aiuto a coloro che sono interessati a creare applicazioni 3D per dispositivi iOS e Android. Visita ShiVa3D Suite per piattaforme aggiuntive supportate da ShiVa Editor e dallo strumento di authoring ShiVa.

Di seguito vengono forniti ulteriori commenti sull'applicazione Simulator di cui abbiamo discusso in questa serie.

Creazione del terreno

Durante lo sviluppo del simulatore, abbiamo introdotto varie funzionalità di base della funzionalità di creazione del terreno in ShiVa Editor. Effetti visivi più sofisticati possono essere aggiunti a un terreno. Ad esempio, puoi aggiungere neve alle montagne, definire trame diverse come roccia, terra, vegetazione o acqua. Tuttavia, alcuni di questi effetti visivi richiedono l'importazione di file di immagine che rappresentano la particolare trama del terreno. In altre parole, avrete bisogno di risorse create all'esterno di ShiVa 3D Suite.

Il terreno che abbiamo creato ha dimensioni limitate. Richiede tecniche speciali per sviluppare un terreno che non finisce mai, cioè uno che ha dimensioni infinite. Per una discussione in merito, consultare http://www.stonetrip.com/developer/forum/viewtopic.php?f=39&t=20668.

Unità e variabili

La nozione di unità di distanza in Shiva3D Editor non è un concetto assoluto. Dovrebbe essere interpretato in relazione all'applicazione e al particolare dispositivo su cui verrà eseguita l'applicazione. Nel simulatore, tre importanti parametri relativi all'unità di distanza sono

  • dimensione del terreno, che è 4.096 x 4.096 unità;
  • altitudine iniziale del piano, che è di 50 unità, definita come la coordinata dell'asse Y iniziale,
  • la variabile V, che rappresenta la velocità, il cui valore è 0,25.

Da una revisione della funzione move () in cui utilizziamo la variabile V, è facile vedere che l'aereo viaggia a 0,25 unità per frame. (Ricorda che la funzione move () viene chiamata ad ogni frame.) Se si distribuisce l'applicazione in un dispositivo che visualizza 20 frame / secondo, la velocità simulata sarà di 18.000 unità / ora. Ora, supponiamo che una unità di distanza corrisponda a 30 piedi. Quindi, tenendo presente che 1 miglio = 5,280 piedi:

  • la dimensione del terreno è di circa 23.3 miglia (= 4.096 unità x 30 piedi x 1 miglio / 5.280 piedi)
  • l'altitudine iniziale dell'aereo è di 1.500 piedi (= 50 unità x 30 piedi)
  • la velocità dell'aereo è di circa 102.3 miglia all'ora (= 18.000 unità / ora x 30 piedi x 1 miglio / 5.280 piedi)

Avremmo potuto supporre che un'unità di distanza corrisponda a 50 piedi. Quindi, la dimensione del terreno, l'altitudine iniziale del piano e la velocità dell'aereo cambierebbero di conseguenza. Stiamo semplicemente commentando sul fatto che un'unità di distanza non è un valore fisico assoluto. È un parametro di input per varie funzioni nel nostro gioco Simulator. Ciò che conta davvero è se l'utente percepirà le dinamiche simulate come sensibili o meno.

Altre due variabili che sono importanti in termini di creazione di un'esperienza di volo realistica sono dP e dR (vedere pitch () e bank () sopra). Il dP è usato per controllare la frequenza del pitch mentre dR è usato per controllare la velocità del rotolo e il rateo di virata. Abbiamo determinato i valori finali per V, dP e dR per tentativi ed errori dopo aver distribuito il simulatore nei dispositivi di destinazione diverse volte.

Infine, notiamo che i valori correnti di V, dP e dR negli elenchi di codici sopra riportati sembrano essere più adatti per dispositivi iPad 2 e iPod touch rispetto a Motorola Droid. Ciò è probabilmente dovuto al fatto che Motorola Droid, essendo uno dei primi esempi di telefoni Android, ha una CPU più lenta rispetto alle altre due. Con i valori rivisti impostati come segue, abbiamo osservato dinamiche più realistiche in Motorola Droid.

  • V = 0,75 (invece di 0,25)
  • dP = 0,2 (anziché 0,04)
  • dR = 0,15 (anziché 0,05)

Come estendere il simulatore

Il lettore interessato potrebbe estendere il simulatore per renderlo più accattivante. Alcune idee sono elencate di seguito in ordine crescente di complessità.

  • Aggiungi suoni al gioco che viene riprodotto quando inizia una particolare manovra. Un buon punto di partenza è il tutorial nel capitolo 7 del libro Shiva di Shando.
  • Aggiungi punti di riferimento al terreno per l'aereo per lo slalom. Per ogni bersaglio mancato assegnare un punto di penalità e visualizzarlo sullo schermo.
  • Aggiungi un modello di piano 3D da seguire davanti alla videocamera. Assegna i pulsanti di controllo per manovrare quel piano. Lascia che le azioni del pollice controllino la fotocamera. L'utente navigherà l'aereo e la telecamera in modo che l'aereo non possa mai sparire.