﻿1
00:00:04,110 --> 00:00:05,100
‫Welkom terug.

2
00:00:05,370 --> 00:00:12,150
‫We hebben dus al een nieuwe capsulecomponentaanwijzer gemaakt en deze naar voren verklaard, zodat we het headerbestand niet

3
00:00:12,150 --> 00:00:15,390
‫in base op h hoefden op te nemen.

4
00:00:15,450 --> 00:00:22,140
‫Het is nu tijd om daadwerkelijk een subobject van een capsulecomponent te construeren voor onze basis-POM. En als we dat eenmaal

5
00:00:22,140 --> 00:00:25,410
‫doen, gaan we onze rootcomponent instellen als de capsule.

6
00:00:26,380 --> 00:00:30,010
‫Dus hoe bouwen we eigenlijk een you capsule-component?

7
00:00:30,130 --> 00:00:31,750
‫Het proces is erg onwerkelijk.

8
00:00:31,750 --> 00:00:37,300
‫Engine-specifieke onwerkelijke engine heeft een standaard subobject gemaakt.

9
00:00:37,450 --> 00:00:39,880
‫Dit is een sjabloonfunctie.

10
00:00:39,910 --> 00:00:46,060
‫Een sjabloonfunctie past zich aan het gekozen type aan, zodat we een bepaald type kunnen kiezen en een standaard kunnen maken.

11
00:00:46,060 --> 00:00:48,460
‫Subobject zal zich aanpassen aan dat type.

12
00:00:48,460 --> 00:00:53,290
‫We geven het type dat we willen construeren door in create default sub-object.

13
00:00:53,590 --> 00:00:57,210
‫In tegenstelling tot een gewone functie heeft het deze punthaken.

14
00:00:57,220 --> 00:01:00,400
‫Hier geven we het te construeren type door.

15
00:01:00,430 --> 00:01:04,930
‫Maak nu een standaardsubobject met een argument tussen haakjes.

16
00:01:04,930 --> 00:01:08,140
‫Dit wordt een naam die we aan het subobject toewijzen.

17
00:01:08,140 --> 00:01:12,220
‫Dit is anders dan de naam van de variabele en wordt doorgegeven als een letterlijke tekenreeks.

18
00:01:12,550 --> 00:01:13,960
‫Dus hier is een voorbeeld.

19
00:01:13,960 --> 00:01:17,170
‫Laten we zeggen dat we een u-statische mesh-component willen maken.

20
00:01:17,350 --> 00:01:24,700
‫Dus we noemen maak standaard sub-object en beëindigen de punthaken die we doorgeven in het type u statische mesh-component en tussen

21
00:01:24,700 --> 00:01:27,190
‫haakjes geven we het een naam.

22
00:01:27,190 --> 00:01:31,300
‫Nu heb je al gezien dat je voor String Literals de tekstmacro moet gebruiken.

23
00:01:31,300 --> 00:01:35,200
‫Dus we geven onze string letterlijk door in het gebruik van de tekstmacro hier.

24
00:01:35,230 --> 00:01:38,890
‫Zoals ik al zei, is dit een interne naam die wordt gebruikt door Unreal Engine.

25
00:01:38,920 --> 00:01:41,080
‫Er zijn andere functies die dit gebruiken.

26
00:01:41,080 --> 00:01:45,130
‫Er is bijvoorbeeld een functie met de naam get default sub-object op naam.

27
00:01:45,160 --> 00:01:50,890
‫Het haalt een subobject op dat bij een bepaald object hoort en je kunt het een bepaalde naam

28
00:01:50,890 --> 00:01:54,190
‫noemen en het zoekt het subobject met die gekozen naam.

29
00:01:54,370 --> 00:01:59,440
‫Dus de algemene functieaanroep om een standaard subobject te maken ziet er als volgt uit.

30
00:01:59,620 --> 00:02:03,580
‫Het type komt tussen de punthaken en de naam tussen haakjes.

31
00:02:03,580 --> 00:02:09,460
‫Create default sub object retourneert nu het adres van de nieuw gemaakte component.

32
00:02:09,460 --> 00:02:15,910
‫Dus in ons geval, als we de statische mesh-component gebruiken als het type, krijgen we het adres van een statische

33
00:02:15,910 --> 00:02:21,970
‫mesh-component voor gebruik en kunnen we die opslaan in een aanwijzer, omdat aanwijzers adressen van dingen opslaan.

34
00:02:21,970 --> 00:02:26,050
‫Stel dat we een statische mesh-componentaanwijzer gebruiken die mesh wordt genoemd.

35
00:02:26,050 --> 00:02:32,500
‫Dan kunnen we dat adres terugnemen door een standaard subobject te maken en dat adres in onze mesh-aanwijzer op

36
00:02:32,500 --> 00:02:33,220
‫te slaan.

37
00:02:33,700 --> 00:02:39,550
‫Dus nu je weet hoe het maken van een standaard subobject werkt, ga je dit gebruiken om

38
00:02:39,550 --> 00:02:40,960
‫een capsulecomponentobject te construeren.

39
00:02:40,990 --> 00:02:47,230
‫Je gaat dit doen in de basis PON-constructor, gebruik maak een standaard sub-object om een

40
00:02:47,230 --> 00:02:54,310
‫capsulecomponent te construeren, pas in je capsulecomponent en de punthaken als het type om te construeren en door

41
00:02:54,310 --> 00:02:58,540
‫te geven in capsulecollider verpakt in een tekstmacro tussen haakjes.

42
00:02:58,900 --> 00:03:03,880
‫Pauzeer de video en voeg deze nu toe aan base pont CP in de constructor.

43
00:03:07,720 --> 00:03:08,170
‫Oké.

44
00:03:08,170 --> 00:03:09,430
‫Dus we zijn hier in Bass Pond.

45
00:03:09,640 --> 00:03:13,270
‫CP en we willen graag een capsulecomponent maken.

46
00:03:13,270 --> 00:03:21,400
‫Dus we gaan onze capsule comp-variabele nemen en de waarde toewijzen die wordt geretourneerd door het standaardsubobject

47
00:03:21,400 --> 00:03:22,150
‫maken.

48
00:03:22,510 --> 00:03:29,620
‫Nu, zoals we hebben gezien, heeft deze sjabloonfunctie zowel punthaken als haakjes, en we zagen dat het

49
00:03:29,620 --> 00:03:34,480
‫type tussen de punthaken komt, we gaan de U-capsulecomponent gebruiken.

50
00:03:34,570 --> 00:03:41,320
‫En voor de haakjes gaan we de tekstmacro gebruiken en we gaan deze capsule-collider noemen.

51
00:03:42,160 --> 00:03:43,210
‫En daar gaan we.

52
00:03:43,390 --> 00:03:48,870
‫Nu gebruiken we je capsulecomponent om een object van dit type te construeren.

53
00:03:48,880 --> 00:03:52,450
‫En wanneer we een type gebruiken, nemen we het headerbestand op.

54
00:03:52,960 --> 00:03:56,290
‫Laten we nu eens kijken wat er gebeurt als we proberen te compileren.

55
00:03:56,320 --> 00:04:00,560
‫Nogmaals, je kunt live codering gebruiken of je kunt hier compileren in VZ-code.

56
00:04:00,580 --> 00:04:03,820
‫Ik ga hier in deze sectie VTS-code compileren.

57
00:04:03,820 --> 00:04:09,130
‫Dus je kunt gewoon weten dat wanneer ik compileer ik de Unreal Engine-editor heb gesloten en ik gewoon vanaf hier aan het compileren

58
00:04:09,130 --> 00:04:09,550
‫ben.

59
00:04:09,550 --> 00:04:14,770
‫Ik zou graag de foutmelding hier willen zien en VTS-code die dit nu hier probeert te compileren.

60
00:04:14,770 --> 00:04:17,950
‫We krijgen een andere foutmelding dan die we in de laatste video zagen.

61
00:04:17,980 --> 00:04:21,430
‫Gebruik van ongedefinieerd type u capsulecomponent.

62
00:04:21,610 --> 00:04:27,970
‫Deze keer proberen we het componenttype U-capsule hier in het CPP-bestand te gebruiken om een object te construeren.

63
00:04:28,180 --> 00:04:33,190
‫Hier is de foutcode voor het geval u dit specifieke type fout wilt googlen voor meer informatie.

64
00:04:33,610 --> 00:04:38,470
‫Dus nu hebben we twee verschillende soorten compilatiefouten gezien in dit gedeelte van de cursus, en we kennen

65
00:04:38,470 --> 00:04:40,150
‫de oorzaak van deze specifieke fout.

66
00:04:40,150 --> 00:04:42,700
‫We hebben je capsulecomponent niet toegevoegd.

67
00:04:42,820 --> 00:04:49,330
‫Hier is de U-capsule-component in de documentatie van Unreal Engine en hier is de opname die we nodig hebben

68
00:04:49,330 --> 00:04:50,530
‫voor dit type.

69
00:04:50,530 --> 00:04:56,710
‫Dus ik ga dit kopiëren en hier bovenaan Base Pond CPP plakken.

70
00:04:56,740 --> 00:05:02,890
‫Als ik nu opnieuw probeer te compileren, is de compilatie gelukt, we zien geen fouten.

71
00:05:03,100 --> 00:05:04,870
‫Ik ga de terminal nu sluiten.

72
00:05:04,990 --> 00:05:07,510
‫Dus hebben we de capsulecomponent gemaakt.

73
00:05:07,540 --> 00:05:11,920
‫Het volgende dat ik zou willen doen, is ervoor zorgen dat de capsulecomponent de root is.

74
00:05:11,950 --> 00:05:18,890
‫Nu hebben we gezien hoe we een component als root en blauwdrukken kunnen toewijzen door in C++ te klikken en te slepen.

75
00:05:18,910 --> 00:05:20,430
‫Het is ook vrij eenvoudig.

76
00:05:20,440 --> 00:05:26,590
‫We nemen eenvoudig die rootcomponentvariabele en kennen deze de waarde van capsule comp toe.

77
00:05:26,800 --> 00:05:30,520
‫Nu hebben we gespecificeerd dat capsule comp de rootcomponent moet zijn.

78
00:05:30,790 --> 00:05:32,290
‫Laten we dit nog eens compileren.

79
00:05:32,470 --> 00:05:36,910
‫En nu, na een succesvolle compilatie, zou ik graag terug willen springen in de editor.

80
00:05:37,000 --> 00:05:37,350
‫Oké.

81
00:05:37,360 --> 00:05:42,570
‫Ik heb de editor geopend en ik ga mijn basis --, C ++ -klasse nemen en er een naar binnen slepen.

82
00:05:42,580 --> 00:05:44,100
‫En bekijk dit nu eens.

83
00:05:44,110 --> 00:05:46,330
‫We zien een capsulecomponent.

84
00:05:46,420 --> 00:05:48,260
‫Nu in de wereld, uit voering.

85
00:05:48,280 --> 00:05:53,350
‫Het laat zien dat de basis -- die ik zojuist heb binnengesleept, nu is geselecteerd net boven zoeken in het

86
00:05:53,350 --> 00:05:53,870
‫detailvenster.

87
00:05:53,890 --> 00:05:58,660
‫Ik kan dit naar beneden slepen en alle componenten op deze basis zien --.

88
00:05:58,660 --> 00:06:03,430
‫En alles wat we zien is deze capsule comp, want dat is het enige onderdeel dat het heeft.

89
00:06:03,520 --> 00:06:09,490
‫Dus we hebben nu onze capsulecomponent toegevoegd en we zien het resultaat daarvan wanneer we daadwerkelijk een instantie van

90
00:06:09,490 --> 00:06:13,120
‫deze klasse aan de wereld toevoegen in de Unreal Engine Editor.

91
00:06:13,760 --> 00:06:19,970
‫Samenvattend hebben we geleerd hoe we een capsulecomponent uit C++ kunnen construeren, en we hebben er de rootcomponent van

92
00:06:19,970 --> 00:06:25,070
‫gemaakt door de waarde van de variabele rootcomponent toe te wijzen aan capsule comp.

93
00:06:25,100 --> 00:06:29,600
‫In de volgende video gaan we meer componenten toevoegen aan onze basis in C++ klasse.

94
00:06:29,810 --> 00:06:30,770
‫Ik zie je dan.

