Cosa succede durante le schermate di "caricamento"?

3

Vengo da AS3, JavaScript e simili "linguaggi web" dove caricamento significa che il codice è stato scaricato dal server e non può essere eseguito in modo affidabile finché non è stato scaricato abbastanza computer dell'utente.

Tuttavia, cosa succede durante una schermata di caricamento in software e giochi in cui tutte le informazioni esistono già sul computer dell'utente? (specialmente ora che l'informazione può essere salvata su un harddrive "veloce da leggere e scrivere", piuttosto che su floppy o CD lenti)

Questo differisce dalle pause in caricamento che a volte possono verificarsi nel bel mezzo di un gioco?

    
posta IQAndreas 21.01.2014 - 06:12
fonte

2 risposte

6

Ci sono diverse cose che un programma potrebbe elaborare durante la schermata di caricamento.
Portare principalmente uno sviluppatore AS3, posso sicuramente dire che non è limitato a nessuna piattaforma specifica in generale. Gli sviluppatori di AS3 devono farlo anche loro.

Ecco un piccolo elenco di ciò che fa una tipica app durante la fase di caricamento:

  • Pre-calcolo. Una spiegazione molto ampia, ma in genere sta calcolando i percorsi per il tracciamento dei percorsi, visualizzando la grafica vettoriale nel raster, salvando i dati del byte precalcolato (cotto) in un percorso di archiviazione locale, caricando i dati dall'archivio locale nella memoria (RAM).
  • inizializzazione. Le app più grandi devono creare più oggetti rispetto alle app più piccole prima che possano essere avviate. È ancora più lento quando vengono utilizzati alcuni framework con ingombro ridotto. L'applicazione è pesantemente caricata in quel momento e non risponde. Per questo motivo, è meglio mostrare una schermata di caricamento che restituisca alcune informazioni sul motivo per cui l'app non funziona ancora.
  • Pool di oggetti. Simile al processo di inizializzazione, viene creato un insieme di oggetti che verranno riutilizzati. Dato che ci sono molti di questi oggetti, potrebbe volerci del tempo per crearli tutti. Meglio farlo su una schermata di caricamento per evitare ritardi.
  • Download di dati esterni. Alcune app richiedono risorse, come suoni, arte, dati (traduzioni di testi, informazioni di livello, prezzi ecc.). Se queste risorse sono soggette a modifiche o se ne possono aggiungere di nuove, è opportuno tenerle sul server e scaricarle quando necessario.
  • Raccolta di dati inutili. Poiché le risorse sono limitate, è necessario rilasciare la memoria non utilizzata per creare nuovi oggetti al suo posto. Ma la garbage collection è un processo che richiede molto tempo per la CPU. Meglio farlo su una schermata di caricamento per evitare ritardi.

Questo elenco non è completo in alcun modo. Ci sono alcune specifiche per ogni piattaforma, API, linguaggio di programmazione anche. Solo una regola generale: se qualcosa impiega molto tempo di elaborazione - mettilo nella schermata di caricamento .

    
risposta data 21.01.2014 - 09:51
fonte
4

I dischi fissi sono ancora troppo lenti per eseguire calcoli complicati direttamente da. Quando i giochi vengono caricati, stanno trasferendo informazioni nella memoria . Come nella RAM.

La memoria ad accesso casuale carica centinaia di volte più velocemente della maggior parte dei dischi rigidi. Quindi, quando un gioco si sta caricando, sta scaricando tutte le informazioni necessarie dal disco rigido, formattandolo per renderlo utile per il software da utilizzare e memorizzarlo nella ram.

Sfortunatamente, la RAM della maggior parte delle persone è ancora limitata. Solo 8 GB a 32 GB. Per alcuni giochi, non è sufficiente caricare tutto (specialmente dal momento che il tuo sistema operativo e altri programmi ne stanno utilizzando alcuni). Il risultato finale: il gioco carica solo alcune delle informazioni nella RAM. Quando hai bisogno di più, ottieni una schermata di caricamento.

    
risposta data 21.01.2014 - 06:26
fonte

Leggi altre domande sui tag