﻿1
00:00:03,990 --> 00:00:05,150
‫Hallo en welkom.

2
00:00:05,160 --> 00:00:07,920
‫In deze lezing implementeren we bewegende platforms.

3
00:00:07,920 --> 00:00:13,500
‫We gaan dit platform echt laten bewegen door iets te begrijpen dat de game-loop wordt genoemd

4
00:00:13,500 --> 00:00:16,860
‫en hoe de tick-functie in C++ ermee verband houdt.

5
00:00:16,920 --> 00:00:18,960
‫Laten we erin duiken en erachter komen.

6
00:00:19,470 --> 00:00:24,930
‫Dus tot nu toe hebben we deze functie hier, de tick-functie, genegeerd.

7
00:00:24,930 --> 00:00:29,250
‫We hebben alles in het spel gezet, want dat is wat we eerder in Blueprint gebruikten.

8
00:00:29,520 --> 00:00:32,280
‫Maar laten we een klein beetje licht werpen op deze vinkfunctie.

9
00:00:32,370 --> 00:00:38,310
‫Om tick te begrijpen, moeten we het concept van een gameloop begrijpen, en dit is hoe de

10
00:00:38,310 --> 00:00:40,560
‫meeste game-engines hun engine zullen bouwen.

11
00:00:40,560 --> 00:00:46,110
‫De manier waarop het werkt, is dat in de eerste plaats de game-engine de input van de speler overneemt.

12
00:00:46,110 --> 00:00:52,260
‫Dus wat er momenteel ook gebeurt, of de spatiebalk naar beneden is of de W-toets, of de muis net

13
00:00:52,260 --> 00:00:56,340
‫een klein beetje is verplaatst of dat een muisknop is ingedrukt, al die

14
00:00:56,340 --> 00:01:00,060
‫dingen zullen worden opgenomen door de game-engine en het proces.

15
00:01:00,510 --> 00:01:05,610
‫Dan is het volgende dat informatie zal worden gebruikt om de spelstatus bij te werken.

16
00:01:05,610 --> 00:01:10,500
‫Misschien zal de speler een beetje vooruit gaan, misschien zal een bal stuiteren, al dat

17
00:01:10,500 --> 00:01:16,950
‫soort dingen worden berekend en physics-engines draaien en al dat soort geweldige dingen die we in onze vorige games hebben

18
00:01:16,950 --> 00:01:17,280
‫gezien.

19
00:01:17,280 --> 00:01:21,870
‫En dan is de derde stap dat de game-engine de game-status zal aannemen en zeggen, oké,

20
00:01:21,870 --> 00:01:27,840
‫de speler is hier en de camera is hier, de bal is daar, en het zal het weergeven op het scherm.

21
00:01:27,840 --> 00:01:33,780
‫Het verandert het van een reeks cijfers in een afbeelding om op uw scherm weer te geven.

22
00:01:34,260 --> 00:01:41,880
‫Nu wordt die afbeelding een frame genoemd, een frame is een enkele afbeelding in een reeks afbeeldingen die samen een

23
00:01:41,880 --> 00:01:43,020
‫video vormen.

24
00:01:43,470 --> 00:01:50,490
‫Nu kan uw computer heel veel frames per seconde weergeven, of minder, maar dat

25
00:01:50,850 --> 00:01:53,370
‫wordt de framesnelheid genoemd.

26
00:01:53,370 --> 00:01:58,650
‫Hoeveel frames per seconde kan jouw computer door de gameloop gaan?

27
00:01:58,650 --> 00:02:02,760
‫Hoe vaak kan het de invoer van de datumstatus verwerken en weergeven?

28
00:02:03,300 --> 00:02:10,980
‫Dat zijn de frames per seconde en in onwerkelijk gebruiken we de vinkfunctie om ons te helpen de middelste stap van de spellus te doen

29
00:02:10,980 --> 00:02:12,720
‫om ons te helpen updaten.

30
00:02:13,320 --> 00:02:19,530
‫De staat van ons spel is een functie die elk frame en bestaande blauwdruk wordt genoemd, evenals een

31
00:02:19,530 --> 00:02:20,070
‫evenement.

32
00:02:20,400 --> 00:02:27,120
‫Dus je krijgt de tick-gebeurtenis en het stelt je in feite in staat om iets te doen om je game elk frame bij te

33
00:02:27,120 --> 00:02:27,510
‫werken.

34
00:02:27,880 --> 00:02:33,630
‫Nu, in ons geval, wat we hiermee willen doen, is toestaan dat het ons platform verplaatst.

35
00:02:33,720 --> 00:02:35,100
‫Dus hoe zouden we dat kunnen doen?

36
00:02:35,100 --> 00:02:42,930
‫Welnu, als we onze set op een locatie nemen en deze uit de gameplay verwijderen en in plaats daarvan updaten we

37
00:02:42,930 --> 00:02:49,860
‫die locatie in tech, zal dat in eerste instantie niet veel doen, omdat we onze locatie gewoon constant naar

38
00:02:49,860 --> 00:02:51,660
‫dezelfde locatie zullen updaten.

39
00:02:51,660 --> 00:02:59,940
‫Als we de acteurslocatie, mijn vector en dan de puntkomma instellen, is dat gewoon elk afzonderlijk frame, elke

40
00:02:59,940 --> 00:03:01,890
‫iteratie door de spellus.

41
00:03:02,250 --> 00:03:04,950
‫Het zal de acteur gewoon op dezelfde plaats zetten.

42
00:03:05,460 --> 00:03:11,760
‫Waar dit echter interessant wordt, is als we de waarde in mijn vector bijwerken.

43
00:03:11,760 --> 00:03:24,390
‫Dus wat we kunnen doen, is dat we kunnen zeggen dat mijn vectorpunt z gelijk is aan mijn vectorpunt z plus één.

44
00:03:24,990 --> 00:03:30,960
‫Dus wat we hier doen, is dat we de waarde nemen die zich momenteel in mijn vectorpunt z bevindt.

45
00:03:31,410 --> 00:03:40,800
‫We voegen er een aan toe en dan nemen we dat hele resultaat en plaatsen het terug in mijn vectorpunt

46
00:03:40,800 --> 00:03:41,370
‫z.

47
00:03:42,060 --> 00:03:48,960
‫Dus elke keer dat we door deze spellus gaan en het vinkje wordt aangeroepen door de onwerkelijke engine, zou mijn

48
00:03:48,960 --> 00:03:51,360
‫vectorpunt z met één moeten toenemen.

49
00:03:51,870 --> 00:03:53,670
‫Dus laten we eens kijken wat het resultaat hiervan is.

50
00:03:53,670 --> 00:04:00,030
‫We gaan naar Unreal en we drukken op de compileerknop en dan gaan we verder en drukken op play.

51
00:04:00,180 --> 00:04:07,080
‫We zouden moeten zien dat dat platform omhoog komt, in de lucht zweeft omdat ik zijn

52
00:04:07,080 --> 00:04:11,010
‫Z-locatie vergroot, dus ik laat het steeds hoger gaan.

53
00:04:11,100 --> 00:04:16,500
‫Dus ik zou graag willen dat je probeert Y te veranderen in plaats van Z te veranderen.

54
00:04:16,920 --> 00:04:18,930
‫Verander dus de juiste regel code.

55
00:04:18,930 --> 00:04:21,510
‫U heeft deze wijzigingen op meer dan één plaats aangebracht.

56
00:04:21,930 --> 00:04:24,450
‫Pas het formaat van de platformkubus aan.

57
00:04:24,450 --> 00:04:31,230
‫Er is dus een goed platform om op te springen en te kijken of je nu door Y bij te werken in plaats van Z bij te

58
00:04:31,230 --> 00:04:34,920
‫werken, op het platform kunt springen, de video kunt poseren en het kunt proberen.

59
00:04:38,140 --> 00:04:38,710
‫Oké.

60
00:04:38,710 --> 00:04:39,410
‫Welkom terug.

61
00:04:39,430 --> 00:04:41,950
‫Dus laten we een duik nemen in Visual Studio-code.

62
00:04:42,370 --> 00:04:49,330
‫En wat we willen doen is mijn vectorpunt y gelijk stellen aan mijn vectorpunt y plus één.

63
00:04:49,630 --> 00:04:54,670
‫Dus dat gaat langs de Y-as bewegen in plaats van de Z-as.

64
00:04:55,210 --> 00:05:00,310
‫En dan gaan we de locatie van elk frame instellen op het resultaat dat is opgeslagen in de my

65
00:05:00,310 --> 00:05:00,850
‫vectorvariabele.

66
00:05:01,270 --> 00:05:04,870
‫Dus we gaan terug naar Unreal en zorgen ervoor dat we compileren.

67
00:05:04,990 --> 00:05:12,100
‫Vervolgens gaan we de omtrek van het bewegende platform doorzoeken en selecteren, naar het detailvenster gaan.

68
00:05:12,940 --> 00:05:19,540
‫En hier willen we eigenlijk dubbelklikken op het platform zodat we het kunnen zien en dan willen we het

69
00:05:19,540 --> 00:05:20,890
‫een beetje opschalen.

70
00:05:20,890 --> 00:05:29,050
‫Dus ik ga de schaaltool gebruiken met de R-toets en ik ga de Y-schaal en de X-schaal vergroten en

71
00:05:29,470 --> 00:05:30,970
‫de Z-schaal verkleinen.

72
00:05:30,970 --> 00:05:37,120
‫Dus mijn platform is een beetje korter, dus dan kunnen we net zo goed het level

73
00:05:37,150 --> 00:05:41,260
‫hit play redden en het platform zweeft naar mijn rechterkant.

74
00:05:41,380 --> 00:05:44,800
‫Dus het is ook groter, wat betekent dat ik erop kan komen en erop kan staan.

75
00:05:45,310 --> 00:05:49,570
‫En dan gaan we, we hebben ons eerste beetje spelmechanisme, we hebben een bewegend platform.

76
00:05:49,570 --> 00:05:54,070
‫Het gaat niet heen en weer dat we daar in de komende colleges iets meer

77
00:05:54,070 --> 00:05:55,090
‫over gaan uitzoeken.

78
00:05:55,450 --> 00:06:00,370
‫Maar voor nu hebben we wat gamefunctionaliteit in C++ geïmplementeerd.

79
00:06:00,370 --> 00:06:02,530
‫Ik denk dat je op dit moment heel trots op jezelf mag zijn.

80
00:06:02,530 --> 00:06:05,710
‫Geef jezelf een schouderklopje en ik zie je in de volgende lezing.

