Unity Android contro Android SDK


10

Ho familiarità con Unity e nel processo di apprendimento dell'SDK Android quando è uscito l'annuncio sull'unità Android Basic.

Quali sarebbero i vantaggi e gli svantaggi dell'utilizzo dell'SDK Android direttamente rispetto allo sviluppo con Unity Android?

Risposte:


13

Aggiorna Unity 5.x Esiste un manuale dettagliato su come scrivere plugin di codice nativo e chiamarli da Unity http://docs.unity3d.com/Manual/PluginsForAndroid.html

! Poiché Unity 4.x è già stato rilasciato e Android ha subito molte modifiche, dovresti considerare questa risposta come un riferimento e non all'avanguardia poiché potrebbe non essere aggiornata!

Siamo spiacenti, ma Ricket ha torto: Unity fornisce pieno accesso tramite API all'SDK Android, che è necessario anche prima di lavorare su giochi Android con Unity:

Prima di poter eseguire i giochi Unity per Android sul dispositivo reale, è necessario configurare l'ambiente di sviluppo Android. Ciò comporta il download e l'installazione dell'SDK Android con le diverse piattaforme Android e l'aggiunta del dispositivo fisico al sistema (ciò avviene in modo leggermente diverso a seconda che si stia sviluppando su Windows o Mac). Questo processo di configurazione è spiegato sul sito Web degli sviluppatori Android e potrebbero essere disponibili ulteriori informazioni fornite dal produttore del dispositivo. Poiché si tratta di un processo complesso, abbiamo fornito una struttura di base delle attività che devono essere completate prima di poter eseguire il codice sul dispositivo Android o nell'emulatore Android. Tuttavia, la cosa migliore da fare è seguire le istruzioni passo-passo dal portale per sviluppatori Android.

Unity Android fornisce API di scripting per accedere a vari dati e impostazioni di input. Puoi trovare ulteriori informazioni sulle nuove classi di scripting nella pagina di scripting di Android. Esporre codice nativo C, C ++ o Java agli script

Unity Android ti consente di chiamare funzioni personalizzate scritte in C / C ++ direttamente (e indirettamente Java) da script C #. Per scoprire come associare le funzioni native, visita la pagina dei plugin.

manuale dell'unità sorgente

Unità:

  • se hai già risorse e modelli più complessi
  • approfitta di molti formati di file
  • progressi rapidi se hai già un design e sai come dovrebbe apparire il gioco

SDK Android:

  • questo potrebbe essere considerato per la programmazione di giochi 2D di partenza
  • buon inizio per imparare le basi di Android quale esperienza può essere presa in ulteriore sviluppo con Unity

Se vuoi iniziare a sviluppare un gioco con un certo livello di qualità e vuoi un rapido successo, dovresti scegliere Unity rispetto al puro SDK, perché Unity ti offre molti strumenti che lo rendono più facile da sviluppare senza preoccuparti di piccole cose.


1
quindi se non conosco bene l'SDK di Android, suggeriresti di usarlo per il progetto attuale e potenzialmente Unity per quelli successivi una volta che avrò una comprensione di esso?
lathomas64,

1
Sì, poiché vuoi creare un piccolo gioco leggero, dovresti usare strumenti semplici. A volte un intero motore di gioco è troppo per un gioco piccolo, questo è quello che ho vissuto spesso, specialmente quando ho provato a programmare i giochi 2D all'interno dei motori 3D. Certo, è possibile e facile se hai tutti i tuoi asset pronti, ma è più un lavoro da pensare, perché devi ancora operare tutto nello spazio Vector3.
daemonfire300

5

Bene sono completamente diversi! Android SDK ti consente di scrivere app Android da zero in Java. Unity è un pacchetto di creazione di giochi in cui è possibile trascinare e rilasciare, aggiungere script e così via, quindi premere un pulsante per esportare un'applicazione Android completa.

SDK Android:

  • Scrivi l'app da zero
  • Controllo completo su esattamente ciò che il tuo gioco fa e sembra; Puoi fare qualsiasi cosa
  • Molto più lavoro e conoscenza coinvolti
  • Scrivi tutto in Java

Unità:

  • Crea un progetto di gioco, importa risorse, organizza le tue scene, ecc. Nell'interfaccia di Unity
  • Azioni di script per gli oggetti in JavaScript, C # o Boo
  • Prova il gioco su PC e distribuiscilo su più piattaforme tra cui Android
  • Non è necessario Java (non è necessario Android SDK)
  • Nessun controllo sull'app finale; funziona con il motore Unity e non puoi ad esempio aggiungere un ulteriore Android Activity(come uno 'schermo') alla tua app o modificarlo in alcun modo tranne nell'interfaccia di Unity
  • Grandi dimensioni .apk perché l'intero motore Unity (circa 10 MB) è impacchettato nella tua applicazione, indipendentemente da quanto effettivamente utilizzi.

Nota che non ho esperienza con la funzione Android di Unity (ho comunque un'esperienza Unity generale), quindi per favore correggimi (o semplicemente modifica questo post) se la categoria Unity è in qualche modo sbagliata.


1

A meno che tu non conosca Java e assolutamente nessun C ++ o C #, non potrei mai raccomandare di utilizzare l'api Android per qualsiasi cosa diversa dal masochismo o da un front-end per un servizio web. Questo proviene da circa 5 anni di lavoro su Android, per alcuni dei principali giocatori. Ti risparmierò il libro che potrei scrivere su questo argomento, ma l'api Android non è ancora abbastanza maturo nel design o nell'implementazione per la prima serata. E penso che prima che arrivi lì, la gente di Google dovrà fare una seria ricerca dell'anima per quanto riguarda le loro metodologie di sviluppo. Solo qualche spunto di riflessione, perché tutti gli strumenti della terza parte e gli API che soffiano su Google possiedono gli strumenti fuori dall'acqua?

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.