﻿1
00:00:04,110 --> 00:00:05,100
‫Ben tornato.

2
00:00:05,370 --> 00:00:12,150
‫Quindi abbiamo già creato un nuovo puntatore al componente della capsula e lo abbiamo dichiarato in avanti, quindi non abbiamo dovuto

3
00:00:12,150 --> 00:00:15,390
‫includere il file di intestazione in base a h.

4
00:00:15,450 --> 00:00:22,140
‫È giunto il momento di costruire effettivamente un sottooggetto componente della capsula per il nostro POM di base. Una volta fatto, imposteremo

5
00:00:22,140 --> 00:00:25,410
‫il nostro componente principale in modo che sia la capsula.

6
00:00:26,380 --> 00:00:30,010
‫Quindi, come costruiamo effettivamente un componente della tua capsula?

7
00:00:30,130 --> 00:00:31,750
‫Il processo è molto irreale.

8
00:00:31,750 --> 00:00:37,300
‫Il motore irreale specifico del motore ha creato un oggetto secondario predefinito.

9
00:00:37,450 --> 00:00:39,880
‫Questa è una funzione modello.

10
00:00:39,910 --> 00:00:46,060
‫Una funzione modello si adatta al tipo scelto in modo da poter scegliere un tipo particolare e creare un valore predefinito.

11
00:00:46,060 --> 00:00:48,460
‫L'oggetto secondario si adatterà a quel tipo.

12
00:00:48,460 --> 00:00:53,290
‫Passiamo il tipo che desideriamo costruire in creare un oggetto secondario predefinito.

13
00:00:53,590 --> 00:00:57,210
‫A differenza di una funzione normale, ha queste parentesi angolari.

14
00:00:57,220 --> 00:01:00,400
‫È qui che passiamo al tipo da costruire.

15
00:01:00,430 --> 00:01:04,930
‫Ora crea un oggetto secondario predefinito accetta anche un argomento tra parentesi.

16
00:01:04,930 --> 00:01:08,140
‫Questo sarà un nome che assegneremo all'oggetto secondario.

17
00:01:08,140 --> 00:01:12,220
‫Questo è diverso dal nome della variabile e viene passato come una stringa letterale.

18
00:01:12,550 --> 00:01:13,960
‫Quindi ecco un esempio.

19
00:01:13,960 --> 00:01:17,170
‫Diciamo che desideriamo creare un componente mesh statico u.

20
00:01:17,350 --> 00:01:24,700
‫Quindi chiamiamo crea oggetto secondario predefinito e terminiamo le parentesi angolari che passiamo nel componente mesh statico di tipo u e

21
00:01:24,700 --> 00:01:27,190
‫tra parentesi gli diamo un nome.

22
00:01:27,190 --> 00:01:31,300
‫Ora hai già visto che per i valori letterali stringa, dovresti usare la macro di testo.

23
00:01:31,300 --> 00:01:35,200
‫Quindi stiamo passando la nostra stringa letterale usando la macro di testo qui.

24
00:01:35,230 --> 00:01:38,890
‫Ora, come ho già detto, questo è un nome interno utilizzato da Unreal Engine.

25
00:01:38,920 --> 00:01:41,080
‫Ci sono altre funzioni che lo utilizzano.

26
00:01:41,080 --> 00:01:45,130
‫Ad esempio, c'è una funzione chiamata get default sub object per nome.

27
00:01:45,160 --> 00:01:50,890
‫Recupera un oggetto secondario appartenente a un oggetto particolare e puoi chiamarlo passando un nome particolare

28
00:01:50,890 --> 00:01:54,190
‫e cercherà l'oggetto secondario con quel nome scelto.

29
00:01:54,370 --> 00:01:59,440
‫Quindi la chiamata di funzione complessiva per creare un oggetto secondario predefinito è simile a questa.

30
00:01:59,620 --> 00:02:03,580
‫Il tipo va tra parentesi angolari e il nome tra parentesi.

31
00:02:03,580 --> 00:02:09,460
‫Ora crea oggetto secondario predefinito restituisce l'indirizzo del componente appena creato.

32
00:02:09,460 --> 00:02:15,910
‫Quindi, nel nostro caso, se abbiamo passato il componente use static mesh come tipo, otteniamo l'indirizzo di un componente

33
00:02:15,910 --> 00:02:21,970
‫use static mesh e possiamo memorizzarlo in un puntatore poiché i puntatori memorizzano gli indirizzi delle cose.

34
00:02:21,970 --> 00:02:26,050
‫Ad esempio, creiamo un puntatore del componente mesh statico utilizzato chiamato mesh.

35
00:02:26,050 --> 00:02:32,500
‫Quindi possiamo prendere quell'indirizzo restituito creando un oggetto secondario predefinito e archiviare quell'indirizzo nel nostro puntatore

36
00:02:32,500 --> 00:02:33,220
‫mesh.

37
00:02:33,700 --> 00:02:39,550
‫Quindi ora che sai come funziona la creazione di un oggetto secondario predefinito, lo utilizzerai per costruire

38
00:02:39,550 --> 00:02:40,960
‫un oggetto componente capsula.

39
00:02:40,990 --> 00:02:47,230
‫Lo farai nel costruttore PON di base, usa la creazione di un oggetto secondario predefinito per costruire un

40
00:02:47,230 --> 00:02:54,310
‫componente della capsula passa nel tuo componente della capsula e le parentesi angolari come tipo per costruire e passare nel

41
00:02:54,310 --> 00:02:58,540
‫collisore della capsula racchiuso in una macro di testo tra parentesi.

42
00:02:58,900 --> 00:03:03,880
‫Metti in pausa il video e aggiungilo alla base pont CP nel costruttore ora.

43
00:03:07,720 --> 00:03:08,170
‫Bene.

44
00:03:08,170 --> 00:03:09,430
‫Quindi siamo qui a Bass Pond.

45
00:03:09,640 --> 00:03:13,270
‫CP e vorremmo costruire una capsula.

46
00:03:13,270 --> 00:03:21,400
‫Quindi prenderemo la nostra variabile comp capsule e assegneremo il valore restituito da create sub object

47
00:03:21,400 --> 00:03:22,150
‫predefinito.

48
00:03:22,510 --> 00:03:29,620
‫Ora, come abbiamo visto, questa funzione modello ha parentesi angolari e parentesi, e abbiamo visto che il tipo

49
00:03:29,620 --> 00:03:34,480
‫va tra parentesi angolari, useremo il componente della capsula a U.

50
00:03:34,570 --> 00:03:41,320
‫E per le parentesi useremo la macro di testo e chiameremo questo collisore di capsule.

51
00:03:42,160 --> 00:03:43,210
‫E ci andiamo.

52
00:03:43,390 --> 00:03:48,870
‫Ora stiamo usando il tuo componente capsula per costruire un oggetto di questo tipo.

53
00:03:48,880 --> 00:03:52,450
‫E quando utilizziamo un tipo, includiamo il suo file di intestazione.

54
00:03:52,960 --> 00:03:56,290
‫Ora vediamo cosa succede quando tentiamo di compilare.

55
00:03:56,320 --> 00:04:00,560
‫Ora di nuovo, puoi usare la codifica live o puoi compilare qui in codice VZ.

56
00:04:00,580 --> 00:04:03,820
‫Sto per compilare qui nel codice VTS in questa sezione.

57
00:04:03,820 --> 00:04:09,130
‫Quindi puoi solo sapere che quando compilo ho chiuso l'editor di Unreal Engine e sto solo compilando da

58
00:04:09,130 --> 00:04:09,550
‫qui.

59
00:04:09,550 --> 00:04:14,770
‫Mi piacerebbe vedere il messaggio di errore qui e il codice VTS ora tenta di compilarlo qui.

60
00:04:14,770 --> 00:04:17,950
‫Otteniamo un errore diverso da quello che abbiamo visto nell'ultimo video.

61
00:04:17,980 --> 00:04:21,430
‫Uso di un componente della capsula di tipo u indefinito.

62
00:04:21,610 --> 00:04:27,970
‫Questa volta stiamo cercando di utilizzare il tipo di componente capsula U qui nel file CPP per costruire un oggetto.

63
00:04:28,180 --> 00:04:33,190
‫Ecco il codice di errore nel caso in cui desideri cercare su Google questo particolare tipo di errore per ulteriori informazioni.

64
00:04:33,610 --> 00:04:38,470
‫Quindi ora abbiamo visto due diversi tipi di errori di compilazione in questa sezione del corso e conosciamo

65
00:04:38,470 --> 00:04:40,150
‫la causa di questo particolare errore.

66
00:04:40,150 --> 00:04:42,700
‫Non abbiamo incluso la tua capsula.

67
00:04:42,820 --> 00:04:49,330
‫Ora ecco il componente della capsula U nella documentazione di Unreal Engine ed ecco l'inclusione di cui abbiamo bisogno

68
00:04:49,330 --> 00:04:50,530
‫per questo tipo.

69
00:04:50,530 --> 00:04:56,710
‫Quindi lo copierò e lo incollerò qui nella parte superiore di Base Pond CPP.

70
00:04:56,740 --> 00:05:02,890
‫Ora, se provo a compilare di nuovo, la compilazione ha esito positivo, non vediamo errori.

71
00:05:03,100 --> 00:05:04,870
‫Adesso chiudo il terminale.

72
00:05:04,990 --> 00:05:07,510
‫Quindi abbiamo creato il componente capsula.

73
00:05:07,540 --> 00:05:11,920
‫La prossima cosa che vorrei fare è assicurarmi che il componente della capsula sia la radice.

74
00:05:11,950 --> 00:05:18,890
‫Ora abbiamo visto come assegnare un componente come root e blueprint facendo clic e trascinando in C++.

75
00:05:18,910 --> 00:05:20,430
‫È anche abbastanza facile.

76
00:05:20,440 --> 00:05:26,590
‫Prendiamo semplicemente quella variabile componente radice e le assegniamo il valore di capsule comp.

77
00:05:26,800 --> 00:05:30,520
‫Ora abbiamo specificato che capsule comp dovrebbe essere il componente principale.

78
00:05:30,790 --> 00:05:32,290
‫Compiliamolo di nuovo.

79
00:05:32,470 --> 00:05:36,910
‫E ora, dopo una compilation di successo, vorrei tornare all'editor.

80
00:05:37,000 --> 00:05:37,350
‫Bene.

81
00:05:37,360 --> 00:05:42,570
‫Ho aperto l'editor e prenderò la mia base, la classe C++ e ne trascinerò una.

82
00:05:42,580 --> 00:05:44,100
‫E ora dai un'occhiata.

83
00:05:44,110 --> 00:05:46,330
‫Vediamo un componente della capsula.

84
00:05:46,420 --> 00:05:48,260
‫Ora nel mondo, fuori linea.

85
00:05:48,280 --> 00:05:53,350
‫Mostra che la base - che ho appena trascinato dentro è selezionata ora appena sopra la ricerca nel pannello dei

86
00:05:53,350 --> 00:05:53,870
‫dettagli.

87
00:05:53,890 --> 00:05:58,660
‫Posso trascinarlo verso il basso e vedere tutti i componenti su questa base --.

88
00:05:58,660 --> 00:06:03,430
‫E tutto ciò che vediamo è questa capsule comp perché è l'unico componente che ha.

89
00:06:03,520 --> 00:06:09,490
‫Quindi ora abbiamo aggiunto il nostro componente capsula e ne vediamo il risultato quando aggiungiamo effettivamente un'istanza

90
00:06:09,490 --> 00:06:13,120
‫di questa classe nel mondo nell'editor di Unreal Engine.

91
00:06:13,760 --> 00:06:19,970
‫Quindi, in sintesi, abbiamo imparato a costruire un componente capsule da C++ e lo abbiamo reso il

92
00:06:19,970 --> 00:06:25,070
‫componente radice assegnando il valore della variabile del componente radice a capsule comp.

93
00:06:25,100 --> 00:06:29,600
‫Nel prossimo video, aggiungeremo più componenti alla nostra base in classe C++.

94
00:06:29,810 --> 00:06:30,770
‫Ci vediamo allora.

