‫Ciao e Benvenuto.
‫In questa lezione impareremo gli oggetti e come possiamo usare le funzionalità sugli oggetti e
‫sui loro dati per iniziare a creare programmi interessanti.
‫Immergiamoci.
‫Quindi iniziamo questa lezione introducendo un nuovo concetto.
‫Il concetto di oggetti è assolutamente vitale per molti linguaggi di programmazione.
‫Quindi un oggetto è essenzialmente un qualcosa in cui vuoi rappresentare una cosa, qualcosa come in un gioco
‫potresti avere un avventuriero.
‫È un oggetto nel tuo mondo e potrebbe avere dei dati che rappresentano ciò che è.
‫Cose come i suoi punti esperienza, per esempio, o forse il suo livello.
‫È un avventuriero di livello due.
‫Cose del genere sono i dati che compongono un avventuriero.
‫Ma non è tutto ciò che è un avventuriero.
‫Un avventuriero ha anche alcune funzionalità, come la capacità di lanciare frecce, come saltare e
‫così via.
‫Ci sono altre cose che possono essere oggetti, però.
‫Ad esempio, possiamo rappresentare cose nel mondo reale, nel computer, come il giocatore, e potremmo memorizzare proprietà
‫rilevanti per il giocatore, cose come il giocatore sta usando un controller?
‫Il giocatore è il numero uno o il numero due?
‫Quei tipi di dati e le relative funzionalità come ottenere i loro input correnti.
‫Stanno tenendo premuta la barra spaziatrice, ad esempio, ottengono il livello di abilità del giocatore e quindi
‫puoi avere oggetti completamente astratti, cose come un elenco.
‫Quindi potresti avere un elenco con gli elementi uno, due, tre, quattro.
‫Ed è o forse potrebbe contenere qualsiasi oggetto che ti piace.
‫I dati potrebbero cambiare, ma potrebbero anche avere alcune funzionalità, come rimuovere l'ultimo elemento dall'elenco o
‫aggiungere alla fine dell'elenco.
‫Quindi puoi vedere che gli oggetti sono molto, molto flessibili.
‫Possono essere usati per rappresentare una miriade di cose diverse.
‫E noterai che la funzionalità nella parte inferiore di questi oggetti è in realtà ciò che sono quei
‫nodi o quanti nodi sono molti in Blueprint.
‫Quindi iniziano a ottenere un po' di mappatura tra gli oggetti e la funzionalità.
‫Bene.
‫Quindi abbiamo introdotto una serie di nuovi concetti che ricapitoliamo leggermente.
‫Quindi abbiamo detto che gli oggetti sono raccolte di dati e funzionalità.
‫Quello che forse non ci siamo resi conto è che gli attori sono in realtà oggetti.
‫Gli attori sono oggetti che possono entrare in un livello e puoi vederlo se vai nel tuo livello, selezioni il
‫cubo, puoi vedere che c'è un sacco di dettagli nei dettagli, dipingi un carico di dati.
‫E come vedremo tra poco, c'è anche un carico di funzionalità nella forma del nodo e nel progetto.
‫Poi ci sono i componenti.
‫Ora i componenti non sono entrati nei dettagli prima, ma eccoli qui.
‫Sono oggetti che possono andare su un attore, mentre gli attori vanno sul livello, i componenti vanno su un attore
‫stesso.
‫Quindi, con il Cubo selezionato, puoi vedere nella parte superiore del riquadro dei dettagli che è presente questo componente
‫mesh statico.
‫Se fai effettivamente clic su quello, vedrai che il riquadro dei dettagli ottiene un insieme limitato di dettagli.
‫Mostra non tutte le proprietà disponibili sull'attore Cubo, ma solo il sottoinsieme di proprietà che appartengono
‫al componente mesh statico, che è fondamentalmente il componente responsabile di dirci come
‫disegnare un cubo.
‫Ora, questi oggetti possono spesso avere molti più dati di questo, e ciò significa che possono
‫diventare piuttosto pesanti da manipolare dal tuo computer e sicuramente se deve copiare questi oggetti in giro.
‫Quindi, invece di farlo, utilizziamo una struttura intelligente chiamata riferimento che è essenzialmente solo un
‫indirizzo o dove posso trovare questo oggetto nella memoria del computer in modo da non dover spostare
‫l'oggetto tutto il tempo?
‫Tratteremo un po' di più su come funziona effettivamente in memoria quando arriviamo a C++, ma per ora è sufficiente
‫sapere che è solo un indirizzo.
‫Quindi, cosa possiamo fare, ad esempio, tuffiamoci in Unreal.
‫Se fossimo nel nostro livello principale e volessimo usare alcune funzionalità sul nostro cubo, allora quello che posso fare è selezionare il cubo nella scena
‫e poi posso andare al mio progetto di livello e fare clic con il tasto destro,
‫quindi posso fare clic su un riferimento di creazione a Cube e questo crea un nuovo nodo.
‫Ora cosa sta facendo?
‫Bene, in pratica questo ci sta dicendo che questo è l'indirizzo del Cubo.
‫Se vuoi fare qualcosa con il cubo, ecco dove lo trovi.
‫Quello che succede in Blueprint quando esegui il gioco è che andrà a trovare quel cubo.
‫E quindi puoi porre domande o utilizzare funzionalità sul cubo, ad esempio dicendo, Ehi, dove risiede il
‫tuo componente mesh statico?
‫E va, ok, i componenti della rete statica laggiù.
‫Quindi andiamo a trovare il componente mesh statico e poi possiamo porre domande su questo e loro possono dire, Ehi,
‫come ti chiami?
‫Componente mesh statico.
‫E il componente statico può dire: Ehi, mi chiamo Bob.
‫Ed è così che possiamo usare questi riferimenti e utilizzare la funzionalità di più oggetti diversi per
‫arrivare dove vogliamo andare.
‫Ora abbiamo detto che il riferimento a è dove trovare un oggetto.
‫E ora qualcos'altro che vale la pena sottolineare è un riquadro dati.
‫Cos'è un.
‫TAPPIN Bene, questo riferimento al cubo ne ha effettivamente uno.
‫Questa piccola cosa rotonda blu sul lato destro è una puntina dati.
‫In realtà li abbiamo visti prima sui nodi della stringa di stampa sul lato sinistro e
‫sono viola.
‫E in che modo questi sono diversi dagli altri tipi di spille che abbiamo visto, questi spilli bianchi?
‫Bene, il pin di dati è l'input o l'output dei dati per un nodo.
‫Quindi un nodo, se è sul lato sinistro, è l'input, sono i dati con cui il nodo può lavorare.
‫Se si trova sul lato destro, sono i dati prodotti da Node.
‫Quindi, nel caso del cubo, questo nodo produce un riferimento all'attore del cubo, quindi i pin di esecuzione.
‫Questi sono in realtà ciò che quei pin bianchi sono veramente chiamati per differenziarli dai pin di
‫dati e sono ancora quando eseguire il nodo.
‫Quindi i pin di dati sono ciò con cui eseguire il nodo.
‫I pin di esecuzione sono quando eseguirlo.
‫Quindi, con tutte queste informazioni, facciamo un po' di utilizzo delle funzionalità di questi oggetti.
‫Quindi abbiamo il nostro riferimento al cubo.
‫Se trasciniamo il perno di riferimento del cubo, puoi utilizzare tutte le funzionalità di quel cubo.
‫Come ho detto, abbiamo un componente sul cubo chiamato componente mesh statico, e voglio andare avanti e
‫ottenere un riferimento a quello.
‫Quindi cercheremo componenti mesh statici.
‫E l'elemento più in basso per me è ottenere il componente mesh statico.
‫Posso fare clic su quello.
‫Otteniamo un nuovo nodo con l'input che è un riferimento al cubo e l'output è un riferimento a questo.
‫È un componente mesh statico.
‫Quindi, se lo trasciniamo, possiamo chiedere la funzionalità del componente mesh statico
‫come ottenere il nome visualizzato e questo ci ottiene l'input del riferimento del componente mesh statico e utilizza la sua funzionalità di ottenere il
‫nome visualizzato e quindi restituisce una stringa o un valore di testo che possiamo stampare utilizzando il nodo della stringa
‫di stampa.
‫Quindi possiamo trascinarlo e digitare print string e quindi possiamo collegare le note di esecuzione in modo che seguano
‫le altre due stringhe di stampa su Begin Play, noterai che alcuni di questi nodi non hanno pin di esecuzione
‫e potrebbe essere fonte di confusione.
‫Quando vengono eseguiti?
‫Bene, vengono eseguiti ogni volta che il progetto ritiene appropriato, essenzialmente ogni volta che è necessario da un nodo
‫che ha un pin di esecuzione.
‫Quindi, se andiamo avanti e premiamo play, puoi vedere che si apre con un nome cube static mesh
‫component zero, qualcosa del genere è un programma un po', forse non lo è, non è Bob È un po' più coinvolto
‫di così.
‫Ma puoi vedere che abbiamo essenzialmente codificato quella catena di domande che avevo sulla mia diapositiva.
‫Quindi vorrei sfidarvi ad andare avanti e ottenere la massa dei nostri componenti mesh statici.
‫L'abbiamo configurato in passato.
‫Se vai nel livello e dai un'occhiata al riquadro dei dettagli, puoi vedere che una delle proprietà
‫della fisica era la massa e l'abbiamo configurata come un dato sul componente mesh statico.
‫Bene, se elimini il nodo get nome visualizzato e trascini via il componente mesh statico, dovresti essere
‫in grado di cercare get mass e questo dovrebbe farti ottenere il pezzo di dati sul componente mesh statico e vedere se
‫puoi stampare quel valore usando il nostro nodo della stringa di stampa mette in pausa il video e prova.
‫Bene.
‫Ben tornato.
‫Quindi, se torniamo al progetto, elimina semplicemente il nostro nome visualizzato, trascina il componente mesh statico
‫e cerca ottieni massa.
‫Quindi possiamo inserire quel nodo.
‫Abbiamo un valore di ritorno qui e questo sarà il nostro valore di massa.
‫Puoi vedere se passi il mouse sopra dice restituisce la massa di questo componente in chilogrammi.
‫E a proposito, il valore restituito significa solo i dati di output e quindi possiamo trascinare quel nodo nella nostra stringa
‫in per la stringa di stampa.
‫E vedi che crea un piccolo nodo di conversione che va bene.
‫Sta convertendo da qualunque sia questo valore in qualcosa che la stringa di stampa accetterà.
‫Possiamo andare avanti e premere play e vedrai che otteniamo il valore di 1000, che sappiamo essere la massa che abbiamo configurato
‫o qualunque cosa tu effettivamente configuri.
‫Puoi cambiarlo e vedere che anche questo valore cambierà.
‫Quindi è tutto per questa lezione.
‫Abbiamo imparato a conoscere gli oggetti e i loro riferimenti e come utilizzare i nodi di funzionalità nei progetti.