‫Ciao e Benvenuto.
‫In questa lezione, implementeremo piattaforme mobili.
‫In realtà faremo muovere questa piattaforma comprendendo qualcosa chiamato ciclo di gioco e come la
‫funzione tick in C++ si collega ad esso.
‫Immergiamoci e scopriamolo.
‫Quindi, fino a questo punto, abbiamo ignorato questa funzione qui, la funzione tick.
‫Abbiamo messo tutto in gioco perché è quello che abbiamo usato prima in Blueprint.
‫Ma facciamo un po' di luce su questa funzione tick.
‫Per capire tick, dobbiamo comprendere il concetto di loop di gioco, ed è così che la maggior parte dei
‫motori di gioco costruirà il proprio motore.
‫Il modo in cui funziona è che, prima di tutto, il motore di gioco prenderà l'input dal giocatore.
‫Quindi, qualunque cosa stia succedendo, se la barra spaziatrice è abbassata o se è il tasto W, se il mouse si
‫è appena spostato un po' o se un pulsante del mouse è abbassato, tutta
‫quella roba verrà assorbita dal motore di gioco e dal processo.
‫Quindi la prossima cosa è che le informazioni verranno utilizzate per aggiornare lo stato del gioco.
‫Forse il giocatore avanzerà un po', forse una palla rimbalzerà, tutto quel genere di cose
‫verrà calcolato e i motori fisici funzioneranno e tutto quel genere di cose fantastiche che abbiamo visto nei nostri giochi
‫precedenti.
‫E poi il terzo passaggio è che il motore di gioco prenderà lo stato del gioco
‫e dirà, ok, bene, il giocatore è qui e la telecamera è qui, la palla è laggiù e la visualizzerà sul display.
‫Lo trasformerà da un insieme di numeri in un'immagine da visualizzare sullo schermo.
‫Ora, quell'immagine è chiamata cornice, una cornice è una singola immagine in una serie di immagini che compongono
‫un video.
‫Ora, il tuo computer potrebbe essere in grado di eseguire il rendering di moltissimi fotogrammi al secondo, oppure potrebbe renderizzare di
‫meno, ma questo è chiamato frame rate.
‫Quanti fotogrammi al secondo può attraversare il ciclo di gioco del tuo computer?
‫Con quale frequenza può elaborare l'input dello stato della data ed eseguirne il rendering?
‫Questi sono i fotogrammi al secondo e in unreal usiamo la funzione tick per aiutarci a fare il passaggio centrale del ciclo di
‫gioco per aiutarci ad aggiornare.
‫Lo stato del nostro gioco è una funzione che viene chiamata ogni frame e progetto esistente, nonché un
‫evento.
‫Quindi ottieni l'evento tick e sostanzialmente ti consente di fare qualcosa per aggiornare il tuo gioco ogni singolo
‫frame.
‫Ora, nel nostro caso, quello che vogliamo fare con questo è consentirgli di spostare la nostra piattaforma.
‫Allora come potremmo farlo?
‫Bene, se prendiamo il nostro set in una posizione e lo rimuoviamo dal gameplay e invece aggiorniamo quella
‫posizione in tecnologia, inizialmente non funzionerà molto perché imposteremo semplicemente aggiornando costantemente la nostra posizione
‫sulla stessa posizione.
‫Se impostiamo la posizione dell'attore, il mio vettore e poi il punto e virgola, è solo ogni singolo fotogramma, ogni singola iterazione
‫del ciclo di gioco.
‫Metterà solo l'attore nello stesso posto.
‫Tuttavia, dove questo diventa interessante è se aggiorniamo il valore all'interno del mio vettore.
‫Quindi quello che possiamo fare è dire che il mio vettore punto z è uguale al mio vettore punto z più uno.
‫Quindi quello che stiamo facendo qui è prendere il valore che attualmente risiede nel mio punto vettoriale z.
‫Ne stiamo aggiungendo uno e poi prendiamo l'intero risultato e lo reinseriamo nel mio punto vettoriale z.
‫Quindi ogni volta che attraversiamo questo ciclo di gioco e il tick viene chiamato dal motore irreale, il mio punto
‫vettoriale z dovrebbe aumentare di uno.
‫Quindi vediamo qual è il risultato di questo.
‫Entriamo in Unreal e premiamo il pulsante di compilazione, quindi andiamo avanti e premiamo play.
‫Dovremmo vedere che quella piattaforma si sta alzando, fluttuando nell'aria perché sto aumentando la sua posizione Z,
‫quindi la sto facendo andare sempre più in alto.
‫Quindi vorrei che provassi a cambiare Y invece di cambiare Z.
‫Quindi cambia la riga di codice corretta.
‫Hai apportato queste modifiche in più di un luogo.
‫Ridimensiona il cubo della piattaforma.
‫Quindi c'è una buona piattaforma su cui saltare e vedere se ora l'aggiornamento di Y invece di aggiornare Z ti consente
‫di saltare sulla piattaforma, mettere in posa il video e provare.
‫Bene.
‫Ben tornato.
‫Quindi tuffiamoci nel codice di Visual Studio.
‫E quello che vogliamo fare è impostare il mio vettore punto y uguale al mio vettore punto y più uno.
‫Quindi si muoverà lungo l'asse Y anziché l'asse Z.
‫E quindi imposteremo la posizione di ogni fotogramma sul risultato memorizzato nella variabile my
‫vector.
‫Quindi torneremo in Unreal e ci assicureremo di compilare.
‫Quindi cercheremo il contorno della piattaforma mobile e la selezioneremo, andremo al riquadro dei dettagli.
‫E qui in pratica vogliamo fare doppio clic sulla piattaforma in modo da poterla vedere e poi
‫scalarla un po'.
‫Quindi userò lo strumento scala con il tasto R e aumenterò la scala Y e la scala X e diminuirò
‫la scala Z.
‫Quindi la mia piattaforma è un po' più corta, quindi potremmo anche salvare il livello
‫di hit play e la piattaforma fluttua alla mia destra.
‫Quindi è anche più grande, il che significa che posso salire e starci sopra.
‫E poi andiamo, abbiamo la nostra prima piccola meccanica di gioco, abbiamo una piattaforma mobile.
‫Non va avanti e indietro che ne scopriremo un po' di più nelle
‫prossime lezioni.
‫Ma per ora, abbiamo effettivamente implementato alcune funzionalità di gioco in C++.
‫Penso che dovresti essere molto orgoglioso di te stesso in questo momento.
‫Datti una pacca sulla spalla e ci vediamo alla prossima lezione.