‫Ciao e benvenuto a questa lezione.
‫Vedremo come possiamo scrivere cose nel registro di output e in particolare come possiamo
‫scriverci i valori delle nostre variabili che possono aiutarci a eseguire il debug dei nostri giochi.
‫Immergiamoci e vediamo come funziona.
‫Quindi in Blueprint siamo stati in grado di scrivere cose sullo schermo quando volevamo visualizzare rapidamente alcune informazioni o
‫potenzialmente semplicemente eseguire il debug di qualcosa in passato.
‫In C++ abbiamo usato una nuova proprietà per farlo, ma possiamo effettivamente farlo usando un'istruzione log ed è un po' complicato, irreale,
‫motivo per cui ho evitato di farlo fino a questo punto.
‫Quindi abbiamo un po' più di familiarità con la sintassi C++ prima di introdurvela.
‫Ora, il modo in cui funziona è se hai l'estensione qui, installa i quattro frammenti irreali memorizzando nella cache i cap.
‫Questo in realtà diventa un po' più semplice perché non devi ricordare tutta la complessità della
‫sintassi.
‫Basta digitare, registrare e apparirà con una finestra di dialogo IntelliSense come questa che dice che ti registri per aiutarti
‫a scrivere l'intero pezzo di codice e puoi colpirlo, inserirlo o selezionarlo con il mouse.
‫E poi quello che vedrai è che è scritto qualcosa che assomiglia un po' a una funzione.
‫In realtà non è una funzione nascosta, c'è un po' di magia irreale in corso qui, ma
‫essenzialmente è un po' come una funzione.
‫Quindi quello che faremo qui è passare un paio di argomenti a questa funzione.
‫Il primo ci dice che tipo di categoria di registro stiamo facendo.
‫Il secondo ci dice il livello del log.
‫Quindi quanto è urgente essenzialmente.
‫E poi finalmente abbiamo questa cosa qui, che è fondamentalmente una funzione all'interno di una
‫funzione che ci dice il testo che dobbiamo stampare.
‫Quindi come funziona?
‫Se lasciamo questo nel nostro codice, andiamo nella compilazione di hit irreali, vogliamo vedere dove viene visualizzato?
‫Bene, una volta che la compilation è finita, andiamo avanti e premiamo play.
‫E quello che stai effettivamente cercando è che non apparirà sullo schermo qui.
‫Sarà nell'output.
‫Scendi qui e puoi vederlo quasi qui dicendo, mostra il tuo messaggio e abbiamo quanti messaggi?
‫Uno due tre quattro cinque.
‫Il motivo è che mostra il messaggio per ogni singolo attore nella nostra scena che è una piattaforma
‫mobile.
‫CP Ecco perché riceviamo così tanti messaggi.
‫E puoi vedere che possiamo cambiare il messaggio in modo che sia quello che volevamo che fosse qui.
‫E potremmo anche inserire alcune informazioni in più in questo messaggio, come il luogo di partenza o il nome dell'attore,
‫cose del genere.
‫Quindi eccoci qui.
‫Quindi abbiamo un registro di output, abbiamo il nostro messaggio e puoi iniziare a vedere quali sono le categorie
‫di cui stavo parlando.
‫Puoi vedere che abbiamo il registro 10 p. m. , ma sopra abbiamo log audio log, mixer audio, Log World.
‫Quindi ci sono diverse categorie di registrazione che ci aiutano a distinguere da dove proviene questo
‫messaggio, da quale parte di Unreal proviene.
‫Ma log temp è principalmente quello che useremo perché è solo un posto temporaneo per disconnettersi dai messaggi
‫di debug e quindi c'è la visualizzazione.
‫Questo è il livello predefinito, il livello di registro, ma possiamo avere messaggi come un mucchio di cose diverse
‫che possono essere visualizzate o qualsiasi valore da questa tabella qui sotto.
‫Quindi vedi display qui stampa un messaggio sulla console e il file di registro.
‫Abbiamo il registro qui che stampa un messaggio solo nel file di registro e non viene visualizzato nella console.
‫Quindi questo è per le cose in cui non vuoi davvero che venga visualizzato così tanto, ma potresti volerlo usare per
‫il debug.
‫Se stai eseguendo il debug del gioco di qualcuno ed è stato eseguito sul suo computer, ti stanno inviando un file di registro.
‫Allora hai un avvertimento.
‫Questo è per quando le cose sembrano andare storte e lo stampa sulla console di registro ed è anche in
‫giallo.
‫Quindi abbiamo un errore che lo stampa in rosso e quindi fatale, in pratica stampa sulla console e manda in crash
‫il motore.
‫Quindi vuoi usare questo come ultima risorsa, ma ti consente di avere livelli diversi nel file di
‫registro.
‫E ti mostrerò come appare se inseriamo messaggi diversi qui.
‫Quindi copierò la riga per la registrazione e ne farò tre.
‫Avremo un display, avremo un avviso e avremo un errore.
‫Ora, questi sono in genere i livelli che useremo.
‫Quindi andiamo avanti e diamo un'occhiata e vediamo che aspetto hanno.
‫Entriamo in Unreal, premi il pulsante di compilazione e ferma e riavvia il gioco.
‫E a proposito, puoi visualizzare il registro di output premendo due volte il tasto tilde.
‫Ti porta a questo punto, abbiamo un registro di output e puoi vedere che abbiamo tre serie di messaggi.
‫Il display che sta proprio nella semplice avvertenza bianca, che è in giallo, risalta un po' di
‫più, una freccia, ovviamente, che risalta molto di più.
‫Ora possiamo aggiungere dati ai nostri messaggi di registro.
‫Eliminerò solo l'avviso, una riga di errore del registro e possiamo aggiungerne alcune.
‫I dati in questa stringa verranno stampati come facciamo noi.
‫Questo è, ad esempio, se voglio stampare la distanza di spostamento configurata per una piattaforma particolare che è
‫abbastanza semplice da fare, possiamo dire distanza di spostamento configurata, e questo è il testo che verrà
‫visualizzato.
‫Metto i due punti qui dentro.
‫E ricorda, questo è tutto tra virgolette doppie per assicurarti di includerlo nel testo.
‫E poi possiamo usare un segno di percentuale seguito dal carattere F.
‫E vedi che viene evidenziato in modo diverso perché questo è ciò che è noto come specifica del formato.
‫È qualcosa che viene da C indietro nella storia.
‫E essenzialmente di solito fai un segno di percentuale e poi qualche lettera puoi vedere le diverse lettere
‫qui sotto.
‫La F corrisponde a una virgola mobile decimale e puoi vedere un esempio di come appare l'output nella
‫colonna di esempio.
‫E ci sono molte altre cose quaggiù che possiamo rappresentare con D o I un intero decimale in questo modo.
‫Quindi stiamo usando F perché abbiamo un numero in virgola mobile.
‫E poi quello che dobbiamo fare è aggiungere un altro argomento alla funzione di log della query.
‫Quindi assicurati di farlo dopo aver chiuso le parentesi per questa funzione di testo e invece stiamo mettendo
‫una virgola dopo qui.
‫Quindi tra queste due parentesi dovrebbe essere all'interno del set esterno, ma al di fuori del set interno, se questo
‫ha senso.
‫E poi quello che possiamo fare è passare il valore della nostra variabile in modo da poter fare la variabile della distanza di spostamento in
‫questo modo, esaminiamo questo vero e lo vediamo in azione.
‫Premo il pulsante di compilazione, chiudo la finestra di compilazione e premo play, quindi premo Tilde due volte per visualizzare il
‫registro.
‫E puoi vedere che la nostra distanza di spostamento configurata viene visualizzata per le diverse
‫piattaforme, 505 cento per le due piattaforme mobili e 1500 per le tre spinte che abbiamo nella scena.
‫Quindi un'informazione che potrebbe essere un po' interessante o istruttiva è che abbiamo
‫precedentemente parlato di come abbiamo superato o superato la distanza spostata e sarebbe interessante sapere di che
‫tipo di livelli sta accadendo.
‫Quindi quello che potremmo fare è creare una variabile float all'interno dell'istruzione if.
‫Quindi sappiamo che attualmente abbiamo superato.
‫Possiamo dire overshoot di una variabile float chiamata overshoot.
‫Imposteremo un uguale alla distanza percorsa meno la distanza di spostamento.
‫Quindi questo ci dice quanto è stato il superamento.
‫Quindi vorrei che provassi a registrare la variabile di overshoot che abbiamo appena creato qui.
‫Quindi usa la funzione di registro YUI.
‫Qui è per riferimento almeno il tipo di struttura che probabilmente utilizzerai.
‫Puoi anche esercitarti a utilizzare il completamento automatico del registro per inserirlo, quindi compilare e testare il codice
‫e vedere se funziona.
‫Metti in pausa il video e prova.
‫Bene.
‫Ben tornato.
‫Quindi useremo l'opzione di completamento automatico qui.
‫Sto solo chiudendo la mia barra laterale per avere un po' più di spazio.
‫E poi all'interno di questo, se dopo aver creato la variabile, digitiamo il tuo log e premiamo invio
‫e poi lo lasceremo visualizzato.
‫Rifiniremo la piattaforma di testo, riprenderà, quindi useremo la percentuale F e quindi tra queste
‫due parentesi, aggiungeremo un nuovo argomento per la variabile di overshoot.
‫Così ora torniamo a Unreal.
‫Premi il pulsante di compilazione, chiudi la riproduzione del registro di codifica dal vivo e tocca due volte il tasto tilde.
‫E puoi vedere che ogni volta che la piattaforma si gira, stampa un messaggio di registro e
‫dice quante unità oltrepassate puoi effettivamente vedere la rete.
‫In molti casi sta superando di un bel po' di una notevole quantità di unità.
‫Tre unità o cinque unità.
‫Questo è fondamentalmente il 5% di me a tre centimetri.
‫È sufficiente che nel corso del tuo gioco queste piattaforme possano essere andate alla deriva.
‫Ed è fantastico che abbiamo già implementato una soluzione per questo.
‫Roba fantastica.
‫Quindi si spera che ora tu abbia un altro strumento nel tuo arsenale per cercare di capire cosa sta succedendo all'interno del
‫tuo codice.
‫E più tardi, quando ti senti più sicuro nel creare il tuo codice, cercando di capire cosa
‫non funziona così bene.
‫Ok, ci vediamo alla prossima lezione.