‫Ehi.
‫Ben tornato.
‫Stiamo esponendo le variabili ai progetti.
‫E ora vorremmo parlare di esporre i nostri componenti.
‫Questo ci permetterà di impostare alcune delle proprietà, come le mesh sui nostri componenti di mesh statiche, oltre a
‫posizionare la nostra capsula e il punto di spawn del proiettile.
‫Ora siamo tornati qui in VS Code e abbiamo tutte le nostre variabili di test.
‫E prima di iniziare a esporre le nostre variabili dei componenti privati, ci sono solo un altro paio di
‫cose specifiche della tua proprietà che dobbiamo imparare.
‫Per prima cosa, tutte le nostre variabili di test sono nella sezione pubblica e un paio delle nostre variabili qui
‫sono esposte al grafico degli eventi che consente l'accesso in lettura e l'accesso corretto, e queste non sono consentite nella
‫sezione privata.
‫Ad esempio, se prendo il nostro visibile ovunque int e modifico ovunque int e li taglio e li incollo
‫qui nella sezione privata insieme ai nostri componenti.
‫Ecco cosa succede quando tentiamo di compilare qui.
‫Vediamo nel nostro terminale un paio di errori.
‫Vediamo blueprint, read, write non dovrebbero essere usati su membri privati e dice la stessa cosa
‫su Blueprint Read only.
‫E se volessimo leggere e scrivere l'accesso nel grafico dell'evento sui membri privati?
‫Bene, c'è un modo per aggirare questo problema.
‫Possiamo ancora avere accesso alle variabili private nel grafico degli eventi.
‫Dobbiamo aggiungere un altro input all'U.
‫La macro della proprietà e quell'input assomiglia a questo.
‫Diciamo che meta uguale a parentesi consente l'accesso privato uguale e tra virgolette true.
‫Ora questo sembra piuttosto strano.
‫È una specie di incubo di sintassi, ma ecco come appare.
‫Le macro di proprietà consentono i metadati e i metadati sono solo una parola di fantasia per i dati che forniscono informazioni su
‫altri dati.
‫Quindi abbiamo questo meta uguale e se utilizziamo consenti accesso privato uguale a vero, possiamo esporre queste variabili al
‫grafico degli eventi anche se sono private.
‫Ora, se sei un pignolo e non pensi che dare accesso privato a una variabile sia un'ottima idea,
‫beh, non devi farlo.
‫Questo è solo un altro strumento nella tua cassetta degli attrezzi che ci consente di esporre le variabili private al progetto.
‫E sul lato C++, questi sono ancora privati.
‫Non puoi ancora accedervi da altre classi.
‫Quindi hai quell'incapsulamento sul lato C++.
‫Questo ti dà solo la possibilità di ottenerli nei progetti e modificarli.
‫E davvero nei progetti, è una specie di mondo diverso.
‫In genere, non esporrete le cose a progetti in cui qualcuno potrebbe entrare e cambiare e
‫potenzialmente interrompere il gioco.
‫Ma è utile sapere come farlo.
‫Quindi daremo a questo meta l'accesso privato a entrambi visibili ovunque, int e modifica ovunque.
‫E quindi compiliamo questo.
‫E ora vediamo che abbiamo una compilazione riuscita anche se abbiamo riscritture blueprint e blueprint read
‫only su variabili in una sezione privata.
‫Ora di nuovo qui in BP Pond Tank nel grafico dell'evento, posso fare clic con il pulsante destro
‫del mouse e digitare modifica ovunque e qui vediamo ottenere modifica ovunque int abbiamo ancora accesso ad esso e se cerco
‫visibile, vedo visibile ovunque possiamo ottenere e impostalo.
‫Ora l'ultima cosa che ti mostrerò che possiamo aggiungere alle tue proprietà è un avviso di categoria qui
‫nel pannello dei dettagli.
‫Queste variabili che abbiamo aggiunto sono in questa categoria in base a questo è il nome della classe ed è lì che
‫vanno per impostazione predefinita.
‫Ma nota che abbiamo anche altre variabili ereditate da questa classe e ciascuna è nelle proprie categorie.
‫Ora possiamo creare la nostra categoria per queste variabili esposte e lo facciamo aggiungendo categoria uguale.
‫E tra virgolette possiamo dare a questo una categoria.
‫Quindi potrei chiamare queste variabili super duper.
‫Ora avrò una virgola qui perché l'ho messa qui negli Stati Uniti.
‫Macro di proprietà come uno degli input e tutti gli input devono essere separati da virgole.
‫Lo copierò e lo aggiungerò alla proprietà U qui per modificarlo ovunque int.
‫Quindi ora questi dovrebbero essere nella loro categoria chiamata variabili super duper.
‫Compiliamo e torniamo qui nell'editor, dai un'occhiata.
‫Abbiamo variabili super duper e le nostre variabili sono qui e posso fare clic con il pulsante destro del mouse nel grafico degli
‫eventi per cercare super e dare un'occhiata.
‫Abbiamo variabili super duper e le nostre variabili sono qui.
‫Quindi questo è un bel modo per organizzare le nostre variabili e renderle un po' più facili da trovare.
‫Quindi ho aggiunto un paio di nuove cose al nostro tavolo qui.
‫Possiamo fornire un accesso privato, possiamo prendere variabili private ed esporle comunque al grafico degli
‫eventi con questi meta specificatori.
‫E possiamo anche assegnare alle variabili la loro categoria per organizzarle in blueprint.
‫Quindi ora che conosci molti modi per controllare l'accesso alle nostre variabili in Blueprint,
‫compilerai la tua proprietà per i componenti che ora decidi.
‫I loro livelli di accesso.
‫Vorrai che siano visibili ovunque per questi perché la modifica ovunque non è qualcosa che vuoi dare
‫ai tuoi componenti.
‫Ciò significa che puoi effettivamente modificare quella variabile del puntatore e non vogliamo cambiare il puntatore.
‫Dovrebbe sempre puntare all'oggetto.
‫Lo costruiamo nel costruttore, ma puoi anche decidere se dargli o meno accesso in lettura,
‫in scrittura nel grafico degli eventi, assegnargli una categoria.
‫Questo ci permetterà di mantenere le nostre variabili organizzate.
‫Ora, se hai intenzione di fornire loro un progetto, leggi, scrivi o un progetto di sola lettura.
‫Dovrai consentire l'accesso privato con quel meta specificato perché si tratta di variabili private.
‫Ora, una volta che hai esposto i componenti ai progetti, puoi impostare alcune proprietà nel progetto
‫predefinito.
‫È possibile assegnare ai componenti della mesh statica le proprie mesh statiche.
‫Quindi impostalo sia nel serbatoio -- che nel progetto della torretta e posiziona la capsula.
‫Quindi sta approssimativamente comprendendo il volume delle mesh e posiziona il punto di spawn del proiettile, posizionalo in
‫un punto che avrebbe senso per la generazione dei proiettili.
‫Quindi metti in pausa il video ed esponi i nostri componenti al progetto.
‫Bene.
‫Quindi eccoci qui nella nostra sezione privata e vorremmo esporre questi componenti.
‫Ora, per prima cosa, darò il mio componente capsula visibile ovunque e deciderò semplicemente di dare questo
‫progetto in sola lettura in modo da poter accedere alla variabile comp capsula nel grafico degli eventi, ma
‫non posso impostarlo.
‫Ora darò a questi la categoria e per i nostri componenti qui, gli darò solo i
‫componenti della categoria ora perché sto usando il blueprint di sola lettura, userò meta per consentire l'accesso privato
‫è uguale a true.
‫Quindi lo metterò proprio lì.
‫E per il resto dei miei componenti, sono contento di questi stessi specificatori di proprietà,
‫quindi darò loro tutti gli stessi specificatori.
‫Ora compilerò questo e tornerò qui nell'editor, farò clic sulla finestra in modo da poter effettivamente
‫vedere cosa sto facendo qui e posso selezionare la mesh di base.
‫E per la proprietà della mesh statica, dato che siamo nel -- progetto del serbatoio, sceglierò la base
‫del serbatoio.
‫Quella è la base del serbatoio.
‫Ora posso selezionare la mesh della torretta e per la sua mesh statica selezionerò la torretta del carro armato.
‫E ora il nostro progetto del carro armato sembra davvero un carro armato.
‫Ora, prima di impostare il punto di spawn del proiettile, vorrei regolare il componente della capsula.
‫Quindi sta approssimativamente comprendendo il volume della mesh.
‫Ora, con il componente della capsula selezionato, abbiamo queste proprietà mezza altezza della capsula e raggio della capsula.
‫Ridimensionerò il raggio e la mezza altezza della capsula in modo che appaia approssimativamente
‫della forma corretta.
‫E avrò bisogno di posizionare il mio serbatoio in modo che sia in basso perché il nostro componente della capsula
‫è il componente principale.
‫Dobbiamo spostare tutti gli altri componenti rispetto alla radice in modo da poter selezionare la mesh di base e spostarla verso il
‫basso.
‫E per farlo bene, posso inclinare la mia visuale in questo modo, oppure posso venire qui dove c'è scritto prospettiva
‫e selezionare, giusto?
‫E ora sono in modalità ortografica.
‫Questo posto è tutto su un aereo, quindi posso spostare le cose e prenderle.
‫Proprio in questo momento disattiverò lo snap in modo da poterlo posizionare in modo più preciso e penso che stia
‫andando abbastanza bene.
‫Ora tornerò alla modalità prospettica in modo da poterlo vedere e assicurarmi che tutto
‫sia a posto e selezionerò il componente della capsula e mi assicurerò che la scala sia giusta.
‫Ora, questo potrebbe richiedere un po 'di aggiustamento per andare bene, ma con alcune modifiche puoi farlo sembrare
‫abbastanza buono.
‫Quindi sono soddisfatto di questo.
‫Successivamente, vorrei posizionare il punto di spawn del proiettile.
‫Riaccenderò lo scatto e lo sposterò proprio davanti alla canna qui.
‫Quindi questo sembra abbastanza buono.
‫Ora vado avanti e salva questo e ora è il momento di impostare la torretta dello stagno BP.
‫Quindi qui nella torretta dello stagno BP, imposterò la mesh di base.
‫Quindi selezioniamo la base della torre e imposterò la mesh della torretta sulla torretta.
‫Eccoci.
‫Ora aumenterò la composizione della capsula e sposterò la mesh di base verso il basso e lo modificherò solo fino a quando non lo
‫ottengo nel modo giusto.
‫E ancora, posso entrare nella vista ortografica e disattivare lo snap e posizionarlo all'incirca come
‫vorrei e tornare in prospettiva.
‫Penso che sembra abbastanza buono.
‫Ora, l'ultima cosa è il punto di spawn del proiettile.
‫Ho intenzione di riattivare lo snap e posizionarlo proprio qui davanti alla canna e imposterò gli incrementi
‫di snap su cinque solo così posso posizionarlo proprio lì davanti.
‫Ora assicurati che il punto di spawn del proiettile non sia troppo vicino alla canna.
‫Da questo momento genereremo proiettili.
‫E qualcosa che ha fatto inciampare alcuni studenti è che il loro punto di spawn è troppo vicino
‫alla canna e c'è una collisione lì che può causare complicazioni durante la generazione dei proiettili.
‫Ora questo può essere facilmente risolto assicurandosi che il punto di spawn sia a una buona distanza dalla canna.
‫E lo rifiniremo alla fine di questa sezione del corso.
‫Ok, quindi l'ultima cosa che farò è mettere alcuni di questi nel mondo.
‫Ho già un serbatoio per laghetti BP qui.
‫Lo metterò a terra.
‫E trasciniamo un paio di istanze della torretta dello stagno BP.
‫Ne metterò uno qui e lo ruoterò in modo che sia rivolto verso l'esterno e poi andrò avanti e ne
‫posizionerò uno ad ogni angolo qui.
‫In modo che possano custodire questa struttura centrale.
‫E questo sembra un po' più simile al prodotto finito.
‫Eccoci.
‫E ovviamente, se lo volessi, potrei vederlo dall'alto e in modalità ortografica dall'alto.
‫Posso posizionarli in modo più preciso.
‫Ma ovviamente, questo è un po' meno importante in un gioco raffinato.
‫Vorrai che tutto sembri a posto.
‫Ok, torniamo alla modalità prospettiva.
‫Sembra davvero fantastico.
‫Quindi, tornando al nostro piano di sezione, abbiamo creato il nostro carro armato e il nostro obiettivo è che si muova in tutto
‫il mondo.
‫Quindi, nelle lezioni a venire, inizieremo a imparare come farlo.
‫Quindi in questa lezione abbiamo esposto i nostri componenti ai progetti e abbiamo impostato alcune proprietà nei progetti
‫per il carro armato e per la torretta.
‫Ottimo progresso.
‫Ci vediamo nel prossimo video.