‫Ben tornato.
‫Quindi abbiamo già creato un nuovo puntatore al componente della capsula e lo abbiamo dichiarato in avanti, quindi non abbiamo dovuto
‫includere il file di intestazione in base a h.
‫È giunto il momento di costruire effettivamente un sottooggetto componente della capsula per il nostro POM di base. Una volta fatto, imposteremo
‫il nostro componente principale in modo che sia la capsula.
‫Quindi, come costruiamo effettivamente un componente della tua capsula?
‫Il processo è molto irreale.
‫Il motore irreale specifico del motore ha creato un oggetto secondario predefinito.
‫Questa è una funzione modello.
‫Una funzione modello si adatta al tipo scelto in modo da poter scegliere un tipo particolare e creare un valore predefinito.
‫L'oggetto secondario si adatterà a quel tipo.
‫Passiamo il tipo che desideriamo costruire in creare un oggetto secondario predefinito.
‫A differenza di una funzione normale, ha queste parentesi angolari.
‫È qui che passiamo al tipo da costruire.
‫Ora crea un oggetto secondario predefinito accetta anche un argomento tra parentesi.
‫Questo sarà un nome che assegneremo all'oggetto secondario.
‫Questo è diverso dal nome della variabile e viene passato come una stringa letterale.
‫Quindi ecco un esempio.
‫Diciamo che desideriamo creare un componente mesh statico u.
‫Quindi chiamiamo crea oggetto secondario predefinito e terminiamo le parentesi angolari che passiamo nel componente mesh statico di tipo u e
‫tra parentesi gli diamo un nome.
‫Ora hai già visto che per i valori letterali stringa, dovresti usare la macro di testo.
‫Quindi stiamo passando la nostra stringa letterale usando la macro di testo qui.
‫Ora, come ho già detto, questo è un nome interno utilizzato da Unreal Engine.
‫Ci sono altre funzioni che lo utilizzano.
‫Ad esempio, c'è una funzione chiamata get default sub object per nome.
‫Recupera un oggetto secondario appartenente a un oggetto particolare e puoi chiamarlo passando un nome particolare
‫e cercherà l'oggetto secondario con quel nome scelto.
‫Quindi la chiamata di funzione complessiva per creare un oggetto secondario predefinito è simile a questa.
‫Il tipo va tra parentesi angolari e il nome tra parentesi.
‫Ora crea oggetto secondario predefinito restituisce l'indirizzo del componente appena creato.
‫Quindi, nel nostro caso, se abbiamo passato il componente use static mesh come tipo, otteniamo l'indirizzo di un componente
‫use static mesh e possiamo memorizzarlo in un puntatore poiché i puntatori memorizzano gli indirizzi delle cose.
‫Ad esempio, creiamo un puntatore del componente mesh statico utilizzato chiamato mesh.
‫Quindi possiamo prendere quell'indirizzo restituito creando un oggetto secondario predefinito e archiviare quell'indirizzo nel nostro puntatore
‫mesh.
‫Quindi ora che sai come funziona la creazione di un oggetto secondario predefinito, lo utilizzerai per costruire
‫un oggetto componente capsula.
‫Lo farai nel costruttore PON di base, usa la creazione di un oggetto secondario predefinito per costruire un
‫componente della capsula passa nel tuo componente della capsula e le parentesi angolari come tipo per costruire e passare nel
‫collisore della capsula racchiuso in una macro di testo tra parentesi.
‫Metti in pausa il video e aggiungilo alla base pont CP nel costruttore ora.
‫Bene.
‫Quindi siamo qui a Bass Pond.
‫CP e vorremmo costruire una capsula.
‫Quindi prenderemo la nostra variabile comp capsule e assegneremo il valore restituito da create sub object
‫predefinito.
‫Ora, come abbiamo visto, questa funzione modello ha parentesi angolari e parentesi, e abbiamo visto che il tipo
‫va tra parentesi angolari, useremo il componente della capsula a U.
‫E per le parentesi useremo la macro di testo e chiameremo questo collisore di capsule.
‫E ci andiamo.
‫Ora stiamo usando il tuo componente capsula per costruire un oggetto di questo tipo.
‫E quando utilizziamo un tipo, includiamo il suo file di intestazione.
‫Ora vediamo cosa succede quando tentiamo di compilare.
‫Ora di nuovo, puoi usare la codifica live o puoi compilare qui in codice VZ.
‫Sto per compilare qui nel codice VTS in questa sezione.
‫Quindi puoi solo sapere che quando compilo ho chiuso l'editor di Unreal Engine e sto solo compilando da
‫qui.
‫Mi piacerebbe vedere il messaggio di errore qui e il codice VTS ora tenta di compilarlo qui.
‫Otteniamo un errore diverso da quello che abbiamo visto nell'ultimo video.
‫Uso di un componente della capsula di tipo u indefinito.
‫Questa volta stiamo cercando di utilizzare il tipo di componente capsula U qui nel file CPP per costruire un oggetto.
‫Ecco il codice di errore nel caso in cui desideri cercare su Google questo particolare tipo di errore per ulteriori informazioni.
‫Quindi ora abbiamo visto due diversi tipi di errori di compilazione in questa sezione del corso e conosciamo
‫la causa di questo particolare errore.
‫Non abbiamo incluso la tua capsula.
‫Ora ecco il componente della capsula U nella documentazione di Unreal Engine ed ecco l'inclusione di cui abbiamo bisogno
‫per questo tipo.
‫Quindi lo copierò e lo incollerò qui nella parte superiore di Base Pond CPP.
‫Ora, se provo a compilare di nuovo, la compilazione ha esito positivo, non vediamo errori.
‫Adesso chiudo il terminale.
‫Quindi abbiamo creato il componente capsula.
‫La prossima cosa che vorrei fare è assicurarmi che il componente della capsula sia la radice.
‫Ora abbiamo visto come assegnare un componente come root e blueprint facendo clic e trascinando in C++.
‫È anche abbastanza facile.
‫Prendiamo semplicemente quella variabile componente radice e le assegniamo il valore di capsule comp.
‫Ora abbiamo specificato che capsule comp dovrebbe essere il componente principale.
‫Compiliamolo di nuovo.
‫E ora, dopo una compilation di successo, vorrei tornare all'editor.
‫Bene.
‫Ho aperto l'editor e prenderò la mia base, la classe C++ e ne trascinerò una.
‫E ora dai un'occhiata.
‫Vediamo un componente della capsula.
‫Ora nel mondo, fuori linea.
‫Mostra che la base - che ho appena trascinato dentro è selezionata ora appena sopra la ricerca nel pannello dei
‫dettagli.
‫Posso trascinarlo verso il basso e vedere tutti i componenti su questa base --.
‫E tutto ciò che vediamo è questa capsule comp perché è l'unico componente che ha.
‫Quindi ora abbiamo aggiunto il nostro componente capsula e ne vediamo il risultato quando aggiungiamo effettivamente un'istanza
‫di questa classe nel mondo nell'editor di Unreal Engine.
‫Quindi, in sintesi, abbiamo imparato a costruire un componente capsule da C++ e lo abbiamo reso il
‫componente radice assegnando il valore della variabile del componente radice a capsule comp.
‫Nel prossimo video, aggiungeremo più componenti alla nostra base in classe C++.
‫Ci vediamo allora.