‫Ciao e Benvenuto.
‫In questa lezione, esamineremo questi piccoli spilli e i diversi colori in cui entrano e
‫capiremo che si tratta di tipi di dati diversi che limitano ciò che possiamo collegare a cosa.
‫Quindi tuffiamoci dentro e diamo un'occhiata a cosa intendo per tipo di dati.
‫Quindi una definizione abbastanza praticabile del tipo di dati è che è così che rappresenta determinati pezzi di dati in
‫formato binario nella memoria del tuo computer.
‫E ma può anche essere solo un modo per limitare ciò che possiamo fare con questo pezzo di dati.
‫Quindi non si tratta necessariamente sempre di rappresentazioni diverse.
‫E puoi pensarlo come la forma dei dati, nel senso che un piolo quadrato non può stare in un foro
‫rotondo.
‫Quindi non possiamo inserire il tipo sbagliato di dati nel tipo sbagliato di pin.
‫Diamo quindi un'occhiata ad alcuni esempi di tipi di dati.
‫C'è l'intero, che è un classico esempio.
‫Un intero è un numero intero, quindi ha valori come 223 -14, ma non qualcosa come 1. 2.
‫Sarebbe un float, che è l'abbreviazione di un numero in virgola mobile.
‫E questi sono fondamentalmente numeri in cui hai un punto decimale e questi numeri possono
‫essere molto grandi o molto piccoli, ma fondamentalmente non sono numeri interi.
‫Possono essere anche negativi.
‫E poi ci sono le stringhe.
‫Ci siamo già imbattuti in stringhe, essendo le stringhe solo programmatrici, parlano per pezzi di testo.
‫Ed è essenzialmente un tipo di dati.
‫È un modo per archiviare parti di testo nella memoria in modo che possano essere qualsiasi cosa tu voglia, una palla davvero alta, sai,
‫qualunque cosa.
‫Tutte queste cose, tutti questi frammenti di testo sul mio schermo sono stringhe, probabilmente da qualche parte nella memoria del
‫computer.
‫E infine ci sono le bocce, che è l'abbreviazione di boolean.
‫E questi hanno solo due valori possibili, vero o falso?
‫Ora, questi tipi di dati sono fantastici, ma non puoi rappresentare un intero gioco con cose così
‫semplici, vero?
‫Bene, puoi.
‫Se inizi a raggrupparli insieme in cose come oggetti.
‫Una volta raggruppati insieme in un oggetto, iniziano a diventare più significativi.
‫Puoi avere un numero intero per rappresentare l'età, puoi avere un float per rappresentare punti esperienza, quel
‫tipo di cose.
‫E un punto da notare è che oltre agli oggetti, abbiamo cose nel progetto chiamate struct.
‫E non confonderti troppo qui.
‫E uno struct è fondamentalmente lo stesso di un oggetto, tranne per il fatto che di solito è piuttosto piccolo
‫e non usiamo riferimenti, li passiamo semplicemente in giro e li copiamo in memoria senza preoccuparci perché sono
‫così piccoli.
‫E un tipo di dati, come abbiamo detto, è la forma dei nostri dati.
‫Quindi diamo un'occhiata ad alcuni esempi di struttura di oggetti.
‫Quindi immagina di avere un avventuriero.
‫Il nostro avventuriero potrebbe assomigliare un po' a questo.
‫Questa è la forma dei suoi dati.
‫Ha un numero intero per rappresentare il suo livello e un float per rappresentare punti esperienza rappresentativi.
‫Ora potresti avere più istanze di avventuriero della stessa classe di avventuriero, quindi devono avere la stessa
‫forma di dati, ma non devono avere lo stesso contenuto di dati.
‫Puoi vedere qui che il secondo avventuriero ha un livello di 100 e per qualche motivo punti esperienza di meno
‫cinque.
‫Ma non importa che potresti anche avere un tipo diverso avendo una classe diversa di oggetti come il
‫giocatore.
‫E qui puoi vedere che la forma è diversa.
‫Questi per l'avventura e il giocatore sono tipi non compatibili e comunque sai che questi giocatori hanno valori
‫diversi memorizzati in loro.
‫Hanno un nome di giocatore, hanno forse se usano un controller o meno come alcuni dei dati in essi
‫contenuti.
‫Ora diamo un'occhiata ad alcune strutture che abbiamo visto in passato.
‫Ancora una volta, ricordando che struct e oggetti sono più o meno intercambiabili tranne che per le loro dimensioni.
‫Quindi il primo che abbiamo visto parecchie volte è un vettore, e un vettore non è altro che tre float, tutto qui,
‫è un float X, Y e Z, che può essere usato per rappresentare la posizione.
‫Può anche essere usato per rappresentare la scala o l'abbiamo usato quando abbiamo inserito l'impulso nel nostro nodo
‫di impulso ADD.
‫Un'altra cosa che abbiamo visto di sfuggita è un rotatore.
‫Ora nota che questo rotatore è anche solo tre float, ma ciò non significa che questi due tipi siano compatibili.
‫Possiamo dare alle strutture nomi diversi in modo da salvarci dall'usarle accidentalmente in situazioni in cui
‫non dovremmo.
‫E possiamo metterli insieme e creare una struttura composta ancora più grande.
‫La trasformazione, che è il luogo di rotazione e scala di un attore in una scena.
‫Quindi puoi vedere qui che questa è una struttura composta da altre strutture e puoi fondamentalmente annidare
‫queste cose quanto vuoi in quella struttura all'interno degli oggetti e così via.
‫Possono diventare piuttosto complicati.
‫Quindi diamo un'occhiata ad alcuni oggetti che abbiamo già visto in passato.
‫Abbiamo esaminato tutti gli oggetti che sono attori.
‫Sappiamo che gli attori sono un tipo di oggetto.
‫Abbiamo visto attori che sono cubi.
‫Questo è un altro tipo di oggetto.
‫Abbiamo visto che anche il proiettile BP è un tipo di oggetto ed è un attore.
‫E abbiamo visto che abbiamo componenti sui nostri attori, che sono anche tipi di oggetti.
‫E il componente MASH statico ne è un esempio.
‫Quindi abbiamo tutti questi e questi sono fatti di quei tipi di dati di base in basso.
‫In fondo, potrebbero essere costituiti da strutture più complicate nel frattempo, ma si tratta di quei tipi di
‫dati di base.
‫E così quando andiamo a dare un'occhiata a un grafico come questo, possiamo vedere immediatamente dal colore che questo
‫impulso è un vettore, ad esempio, che la posizione, la rotazione e la scala qui sono solo tre numeri in
‫virgola mobile.
‫E possiamo anche vedere che questa casella di controllo rossa per il cambio di velocità è booleana.
‫È una risposta sì o no.
‫Quindi iniziamo.
‫Per capire che questi sono i tipi di dati che stanno vincolando ciò che possiamo collegare a cosa.
‫Quindi, in sintesi, quello che abbiamo visto è che un tipo di dati è la forma dei nostri dati, che gli oggetti sono
‫solo raccolte di dati e funzionalità, come abbiamo detto prima, che gli struct sono oggetti, ma di solito solo
‫un po' più piccoli.
‫E questo è più o meno quello che devi sapere.
‫Ci vediamo alla prossima lezione.