Alfa Test Tecnico PC - Blog degli sviluppatori

L'Ingegnere software senior Ian ci permette di dare uno sguardo al lavoro che è stato necessario per il primo Alfa Test Tecnico su PC.

Salve a tutti,
mi chiamo Ian Norris e sono a capo della squadra ingegneristica che si occupa delle versione per Windows 10 di Sea of Thieves. Ted ha già svelato alcuni dettagli di ciò che vi aspetta nell'aggiornamento video della settimana scorsa, ma io vorrei entrare un po' di più in merito all'aspetto tecnico per soddisfare le richieste fatte dalla community.

La mia squadra si occupa solamente della versione per Windows 10 del gioco. Ci occupiamo quindi delle impostazioni video, della personalizzazione dei comandi per tastiera, di sistemare dei crash specifici per PC e ovviamente ottimizziamo tutto affinché possa girare sui vostri splendidi PC! Il nostro scopo ultimo è quello di creare il miglior gioco possibile su PC.

Dato che le versioni per la Xbox One e il PC vengono sviluppate in parallelo, tutto il lavoro fatto per la versione per Xbox va a beneficiare anche quella per PC, e tutte le funzionalità che avrete sulla Xbox saranno presenti anche nella versione PC. Verranno infatti introdotte nello stesso momento, in quanto i contenuti del gioco vengono sviluppati in perfetta parità per entrambe le piattaforme (e presto anche per la Scorpio!).

Sicuramente vi starete chiedendo: se le versioni per PC e Xbox vengono sviluppate al contempo, perché abbiamo dato accesso ai giocatori solamente ora alla versione per PC? I motivi sono diversi:

La stabilità

Sviluppare dei giochi stabili è difficile. Sviluppare giochi stabili su PC lo è ancora di più. Con così tante variabili differenti, e sviluppare giochi che riescono a sfruttare al massimo i processori multicore, richiede molto impegno.

In uno studio come la Rare, per rendere lo sviluppo più semplice, utilizziamo un ambiente di sviluppo omogeneo. Ciò vuol dire che tutti gli sviluppatori hanno gli stessi super computer, che montano lo stesso processore, la stessa scheda grafica e la stessa versione di Windows. In questo modo riduciamo i problemi in cui si potrebbe incorrere, se l'artista Bob trova un problema che gli impedisce di andare avanti con il lavoro, e l'ingegnere Jenny non riesce a riprodurre lo stesso errore sul proprio PC. (Bob e Jenny potrebbero essere nomi di fantasia per proteggere la vera identità delle persone citate. O potrebbero essere i loro veri nomi...).

La squadra per PC ha a propria disposizione più hardware di tutti gli altri sviluppatori dello studio, in modo tale da permettere loro di scoprire eventuali problemi o errori. Oltre ai nostri PC da sviluppatori, uguali per tutti, abbiamo anche altri PC sui quali possiamo testare il gioco. Si tratta di PC con hardware più vecchi e persino dei portatili. Ordiniamo alcuni PC assemblati per rispecchiare i più comuni PC in commercio, e li usiamo per vedere come gira il gioco in un ambiente controllato come il nostro laboratorio. Inoltre abbiamo fatto buon uso del laboratorio SHIELD all'interno della Microsoft, di cui Ted vi ha parlato in passato. Grazie a quel laboratorio, abbiamo trovato e sistemato diversi problemi che altrimenti avrebbero rovinato la giornata dei nostri giocatori più accaniti.

Un piccolo manipolo di giocatori del nostro Alfa Test Tecnico, hanno riscontrato problemi ad avviare il gioco. Nel corso delle prossime settimane daremo la priorità alla risoluzione di questo errore affinché tutti i partecipanti all'Alfa Test possano provare il gioco con noi.

Le prestazioni

Non c'è nulla che faccia arrabbiare di più la community di giocatori, di un gioco ottimizzato male. Alle persone piace vedere che il proprio hardware venga sfruttato al massimo. Vogliamo che il gioco abbia un aspetto perfetto, e che il framerate sia stabile.

Purtroppo non possiamo promettere che il gioco sia perfetto già nei primi round di Alpha Test tecnico per PC, c'è ancora molto lavoro da fare ed è proprio per questo che abbiamo bisogno dei vostri feedback sul gioco. Capire quando è stato raggiunto il punto di abbastanza buono, è sempre difficile, soprattutto quando ogni piccola ottimizzazione che facciamo, abbassa potenzialmente le specifiche minime del gioco, così da permettere a grandissimi gruppi di persone di partecipare al gioco.

Ed è questo in parte il motivo per il quale non abbiamo ancora rilasciato le specifiche minime ufficiali del gioco. Non le conosciamo ancora nemmeno noi! Pensiamo di aver raggiunto un compromesso piuttosto buono per le specifiche minime, ma con questo Alpha Test tecnico, che ci invierà molti dati, potremmo verificare se in effetti va bene così o se possiamo abbassarli ancora un po'. Il nostro motto è semplice: Fin dove possiamo spingerci?!

Perfezionare il nostro codice di autoregolazione è molto importante. La stragrande maggioranza di giocatori per PC, non vorrà mettere mano alle impostazioni video, ed è proprio per quelle persone che dobbiamo trovare le impostazioni automatiche perfette.

Non sveleremo subito ai giocatori in quale "scatola" sono stati inseriti. E questo per due motivi: il primo è che per molti non avrà alcuna importanza, finché il gioco funziona e la qualità video è buona. E per chi ha importanza, potrebbe essere un duro colpo scoprire che sono stati classificati tra gli utenti con PC di fascia bassa. Quando saremo contenti di come gira il codice, rilasceremo un aggiornamento grazie al quale gli utenti potranno verificare di persona a che livello di qualità è stato impostato il gioco per il loro PC in uso.

Vi chiederete: come capiremo quando ha funzionato? Con i dati che raccogliamo! La cosiddetta telemetria è il modo in cui misureremo che impostazioni stanno usando i giocatori. Con quei dati alla mano potremo verificare se i giocatori usano le impostazioni che non abbiamo previsto per quello specifico hardware.

Abbiamo avviato il primo Alpha Test tecnico, pur essendo a conoscenza di un problema nelle prestazioni. Al tempo non sapevamo cosa lo causasse. Questo tuttavia, non ci ha impedito di utilizzare il nostro sistema di auto lettura dei dati, e ci ha permesso di capire esattamente quando si verificava quell'errore. Inoltre speriamo anche che grazie al feedback riusciremo a capire come risolverlo al più presto!

In questo modo vi diamo una rara possibilità di osservare esattamente come avviene il bug fixing dietro le quinte, con un reale problema di prestazioni alla mano!

Il primo passo, è che la nostra squadra di test si imbatta nell'errore. In genere in seguito, il bug viene segnalato al caposquadra, in questo caso a me. Questa è la segnalazione ricevuta:

Ovviamente tutti i problemi di prestazione vengono presi molto sul serio, quindi questo bug è stato classificato come "Critico". Così i test continuano, per trovare maggiori informazioni sul problema, e aiutare gli ingegneri a risolverlo. In questo caso, abbiamo trovato una configurazione per PC che riproduceva molto bene questo errore!

Così ho chiesto alla squadra di test di farmi vedere di persona con cosa avevamo a che fare. In quella occasione ho utilizzato lo strumento "xperf", per raccogliere ancora più informazioni sul problema. Purtroppo, questo strumento genera moltissimi dati, e quindi può essere molto difficile e può richiedere molto tempo identificare esattamente il problema.

Utilizziamo una serie di strumenti diversi per identificare i problemi di prestazioni. Vengono scelti in base a preferenze personali e a seconda del problema che si presenta. La mia "arma preferita" per questo tipo di errori è Media Experience Analyzer. Ecco cosa vedo sul mio schermo quando analizzo un bug con quello (e altri) strumenti:

In seguito a questa analisi (durata diverse settimane) abbiamo identificato tre cause diverse che contribuivano a generare queste lunghe pause. Il prossimo passo è testare se le soluzioni implementate funzionano su tutti i PC, senza creare problemi alla versione per Xbox e senza generarne di nuovi. Se tutti i test vanno a buon fine, dichiariamo risolto il bug. L'ultimo passo, infine, è far provare nuovamente il gioco ai partecipanti all'Alfa Test tecnico.

Funzionalità per PC

Come senz'altro avete capito, il lavoro è tantissimo, ma state certi che stiamo lavorando duramente per risolvere i problemi riscontrati e per aggiungere nuove funzionalità specifiche per pc. Lo scopo è di introdurre in tempo il nostro secondo Alfa Test tecnico per Windows 10!

Un aspetto che ci ha colti di sorpresa, è stata la richiesta di introdurre un sistema di comunicazione PPT (premere per parlare). Avevamo in mente di aggiungerlo molto più avanti, dando la precedenza ad altre funzionalità. Tuttavia il gran numero di persone che lo ha richiesto a gran voce sui forum, ci ha spinto ad anticiparlo. Speriamo di riuscire a introdurlo prima del prossimo Alfa Test tecnico.

Sappiamo che tutti i nostri giocatori per pc sono ansiosi di scoprire che aspetto avrà l'interfaccia utente delle impostazioni video. Per creare un'interfaccia utente ci vuole molto lavoro, e vogliamo essere certi di riuscirci già al primo colpo. Creare un'interfaccia facilmente navigabile per dei giochi come Sea of Thieves non è una passeggiata. Abbiamo visto e rivisto interfacce utente di molti altri giochi, combinando negli elementi migliori per creare una schermata come non l'avete mai vista!

Non vediamo l'ora di permettere a tutti voi di giocare con quelle impostazioni, soprattutto quando decideremo (avverrà presto) che sarà tempo di invitare anche altri giocatori all'Alfa Test tecnico per Windows 10.

Grazie a tutti!

Ian Ingegnere Software Senior.