1
00:00:00,020 --> 00:00:03,690
Willkommen zurück, meine Spieleentwickler. 

2
00:00:03,690 --> 00:00:07,590
In diesem Video werden wir tatsächlich die von uns erstellten Eingaben

3
00:00:07,590 --> 00:00:12,050
verwenden und wir werden sehen, wie wichtig Variablen sind. 

4
00:00:12,045 --> 00:00:15,105
Wenn wir jetzt unseren Gewinn erzielen,

5
00:00:15,105 --> 00:00:18,275
werden
 Sie feststellen, dass wir nicht einfach da stehen. 

6
00:00:18,270 --> 00:00:20,450
Sie haben nichts in der Konsole. 

7
00:00:20,445 --> 00:00:23,135
Wenn wir die WASD-Taste drücken,

8
00:00:23,130 --> 00:00:27,020
können
 wir sehen, dass sich unser Spieler nach links,
 rechts, links, oben und unten bewegt

9
00:00:27,020 --> 00:00:29,510
. 

10
00:00:29,510 --> 00:00:32,540
Und nicht nur das, wenn ich die Bewegungsgeschwindigkeit erhöhe,

11
00:00:32,540 --> 00:00:34,790
gehen wir los, Wir sind viel schneller. 

12
00:00:34,790 --> 00:00:37,670
Also bewegen wir den Spieler nicht nur mit den Tasten,

13
00:00:37,670 --> 00:00:41,590
wir können auch steuern, wie schnell er sich bewegt hat. 

14
00:00:41,585 --> 00:00:43,025
Also gut, das heißt,

15
00:00:43,025 --> 00:00:48,125
verschwenden
 wir keine Zeit mehr und lasst uns anfangen. 

16
00:00:48,670 --> 00:00:53,960
Okay, jetzt wo wir die Eingaben bereit haben, sehen
 wir,

17
00:00:53,960 --> 00:00:55,660
wie sie funktionieren. 

18
00:00:55,655 --> 00:00:58,775
Es ist Zeit, den Spieler tatsächlich zu bewegen. 

19
00:00:58,775 --> 00:01:00,205
Wie wir versprochen haben. 

20
00:01:00,200 --> 00:01:02,330
Lasst uns das Skript gleich hier öffnen. 

21
00:01:02,330 --> 00:01:06,010
Und lasst uns fortfahren und dieses Debug-Punkt-Protokoll entfernen. 

22
00:01:06,005 --> 00:01:07,925
Die waren auch einfach hier. 

23
00:01:07,925 --> 00:01:11,105
Lassen Sie uns glauben, dass dies tatsächlich funktioniert. 

24
00:01:11,105 --> 00:01:14,515
Okay, das erste, was wir tun müssen, ist, dass wir

25
00:01:14,510 --> 00:01:18,430
auf die transformierte Position des Spielers zugreifen
 müssen. 

26
00:01:18,425 --> 00:01:22,535
Also klicken wir weiter und klicken auf Transformieren. 

27
00:01:22,535 --> 00:01:26,825
Und Sie können genau hier sehen, wie hilfreich Visual Studio bereits ist. 

28
00:01:26,825 --> 00:01:29,515
Es sagt uns, was die Transformation ist. 

29
00:01:29,510 --> 00:01:36,650
Die Transformation, die gerade schreiben wird, ist also der Transport, der an dieses Spielobjekt gebunden ist. 

30
00:01:36,650 --> 00:01:38,000
Welches Spielobjekt? 

31
00:01:38,000 --> 00:01:43,400
Es ist das Spielobjekt, auf dem das Player-Controller-Skript steht. 

32
00:01:43,400 --> 00:01:45,470
Und wenn wir hier zurückblicken,

33
00:01:45,470 --> 00:01:48,610
klicken
 wir auf den Layer. 

34
00:01:48,605 --> 00:01:51,485
Jederzeit klicken wir auf den Spieler. 

35
00:01:51,485 --> 00:01:55,885
Wir können sehen, dass der Spieler-Controller an den Spieler angeschlossen ist und

36
00:01:55,880 --> 00:02:01,390
die Transformation, die sich auf dem GameObject befindet, nicht als diese Spieler spielt. 

37
00:02:01,385 --> 00:02:04,935
Wir greifen also auf diese spezifische Transformation zu. 

38
00:02:04,939 --> 00:02:06,729
Also hier drin

39
00:02:06,725 --> 00:02:08,725
schreiben
 wir wieder Transformation,
 drücken Tab,

40
00:02:08,720 --> 00:02:12,280
um die Wortpunktposition abzuschließen. 

41
00:02:12,275 --> 00:02:15,905
Sie können sehen, dass dies auf die Position, die Skalierung,
 die Drehung und alles zugreifen kann

42
00:02:15,905 --> 00:02:20,185
, was in der Transformation verfügbar ist. 

43
00:02:20,180 --> 00:02:22,250
Und wir schreiben Position. 

44
00:02:22,250 --> 00:02:28,320
Nun wird dies einem neuen Vektor drei entsprechen. 

45
00:02:28,324 --> 00:02:30,274
Und es wird,

46
00:02:30,275 --> 00:02:33,395
sagen
 wir vorerst nur 0,1 f.

47
00:02:33,395 --> 00:02:38,495
Und wir können auch Punkt 1 f schreiben. Dies bedeutet 0,

48
00:02:38,495 --> 00:02:42,625
und wir halten die Z-Achse an derselben Stelle. Das werden wir speichern. 

49
00:02:42,620 --> 00:02:45,670
Nun denken Sie vielleicht darüber nach, warum Vector3

50
00:02:45,665 --> 00:02:49,175
haben wir
 nicht einfach gesagt, dass wir das nicht ändern wollen? 

51
00:02:49,175 --> 00:02:51,515
Nun, wenn wir den Mauszeiger über die Position bewegen,

52
00:02:51,515 --> 00:02:57,205
können
 Sie sehen, dass die Weltraumposition der Transformation als Vektor drei,

53
00:02:57,200 --> 00:03:01,720
auch die Dokumentationen durchgehen und sehen kann, dass es

54
00:03:01,715 --> 00:03:06,515
sich tatsächlich um die transformierte Position eines jeden Objekts handelt,

55
00:03:06,515 --> 00:03:09,025
unabhängig davon, ob wir 3D verwenden,

56
00:03:09,020 --> 00:03:11,450
2D 1D, Das ist unmöglich,

57
00:03:11,450 --> 00:03:14,720
aber Sie erhalten den Bildvektor drei Position. 

58
00:03:14,720 --> 00:03:17,230
Wir greifen immer auf die Vektor-C-Position zu,

59
00:03:17,225 --> 00:03:20,225
aber wir behalten sie als 0 f.

60
00:03:20,225 --> 00:03:22,375
Jetzt ist der Umfang nicht vollständig,

61
00:03:22,370 --> 00:03:26,870
aber ich werde ihn verwenden, nur damit wir lernen, wenn wir Fehler machen,

62
00:03:26,870 --> 00:03:28,190
werde
 ich das speichern. 

63
00:03:28,190 --> 00:03:30,400
Ich gehe hier wieder rein. 

64
00:03:30,395 --> 00:03:34,285
Und lasst uns einfach ein paar echte Werte bekommen, damit wir es wissen,

65
00:03:34,280 --> 00:03:38,720
also minus fünf und sagen wir, das ist minus1 wird das retten. 

66
00:03:38,720 --> 00:03:43,610
Wir werden unser Spiel laufen und schauen wir uns an. Da sind wir los. 

67
00:03:43,610 --> 00:03:46,240
Also 0.10.1. 

68
00:03:46,235 --> 00:03:49,475
Was scheint das Problem zu sein? 

69
00:03:49,475 --> 00:03:52,505
Nennen wir es nicht jeden einzelnen Frame? 

70
00:03:52,504 --> 00:03:59,484
Nun, das Problem hier ist, dass wir diesen Wert einfach hier zuweisen,

71
00:03:59,480 --> 00:04:04,550
den neuen Vektor 30.10.10 f zur Position. 

72
00:04:04,550 --> 00:04:09,130
Bei jedem einzelnen Frame erhöhen wir nicht die Transformationsposition. 

73
00:04:09,125 --> 00:04:12,095
Wie werden wir anfangen zu wachsen? 

74
00:04:12,095 --> 00:04:14,195
Lass mich einfach den Dramatiker hier aufhalten. 

75
00:04:14,195 --> 00:04:21,565
Wir werden schreiben, dass wir die Transformationspunkt-Position des Spielobjekts einnehmen

76
00:04:21,560 --> 00:04:28,930
und dann den 0.10.1 Vektor 3, jedes einzelne Frame, hinzufügen. 

77
00:04:28,925 --> 00:04:31,115
Also werden wir das retten. 

78
00:04:31,115 --> 00:04:33,265
Und lasst uns zurückgehen und uns unser Spiel ansehen,

79
00:04:33,260 --> 00:04:35,060
wie es gerade aussieht. 

80
00:04:35,055 --> 00:04:39,825
Wir führen das Spiel aus und los geht's. Sehr Ziele. 

81
00:04:39,820 --> 00:04:41,860
Der Spieler hat gerade das Gebäude verlassen,

82
00:04:41,860 --> 00:04:45,220
wie Sie sehen können, wie Sie jetzt sehen können, was hier passiert. 

83
00:04:45,220 --> 00:04:47,650
Wir nehmen die Position transform.py ein. 

84
00:04:47,650 --> 00:04:51,820
Wir weisen in der bereits verfügbaren Transformation zu,

85
00:04:51,820 --> 00:04:54,460
aber Position plus Vektor 3,

86
00:04:54,460 --> 00:04:56,710
und das machen wir jeden einzelnen Frame. 

87
00:04:56,710 --> 00:04:59,850
Nehmen wir an, wir fangen bei 0, 0 an. 

88
00:04:59,845 --> 00:05:02,175
Wir nehmen hier 000,

89
00:05:02,170 --> 00:05:03,630
wir fügen diesem Vektor hinzu,

90
00:05:03,625 --> 00:05:07,035
den nächsten Frame haben wir 0.21. 

91
00:05:07,030 --> 00:05:12,030
Wir nehmen es, wir fügen hinzu, es wird 0,2. 

92
00:05:12,025 --> 00:05:15,285
Wir nehmen es an, wir fügen hinzu, es wird 0,3. 

93
00:05:15,280 --> 00:05:17,540
Also erhöhen wir es mit jedem einzelnen Frame. 

94
00:05:17,535 --> 00:05:20,875
Wie Sie sehen können, gibt es hier redundanten Code. 

95
00:05:20,870 --> 00:05:24,370
Redundant bedeutet, dass wir es mehrmals verwenden. 

96
00:05:24,365 --> 00:05:28,225
Um dies zu vermeiden, können wir dies einfach
 hier entfernen

97
00:05:28,220 --> 00:05:32,300
und stattdessen ein Plus hinter den Gleichen hinzufügen. 

98
00:05:32,300 --> 00:05:35,930
Und das ist genau die gleiche Syntax wie zuvor. 

99
00:05:35,930 --> 00:05:37,840
Wenn wir das also noch einmal schreiben,

100
00:05:37,835 --> 00:05:40,675
lassen Sie mich das einfach duplizieren. 

101
00:05:40,670 --> 00:05:45,050
Ich füge einfach zwei Schrägstriche hinzu. 

102
00:05:45,050 --> 00:05:46,420
Dies wird zu einem Kommentar. 

103
00:05:46,415 --> 00:05:47,465
Und wie gesagt,

104
00:05:47,465 --> 00:05:50,005
ein Common den Code nicht aus,

105
00:05:50,000 --> 00:05:52,640
und wir werden diesen einfach entfernen. 

106
00:05:52,640 --> 00:05:58,010
Also als kleine Erinnerung daran, was dieses Plus gleich bedeutet. 

107
00:05:58,010 --> 00:05:59,780
Also speichern wir das. 

108
00:05:59,780 --> 00:06:03,290
Wir gehen zurück in unser Spiel und lassen uns das einfach etwas kleiner machen,
 also fügen wir eine

109
00:06:03,290 --> 00:06:05,620
weitere 0 hinzu und
 speichern das hier

110
00:06:05,615 --> 00:06:08,015
wieder in unserem Spiel. 

111
00:06:08,015 --> 00:06:11,585
Wir führen den Code aus, das Spiel. 

112
00:06:11,585 --> 00:06:13,825
Und los geht's,

113
00:06:13,820 --> 00:06:17,590
wir können ihn langsam wegschweben sehen und wieder großartig. 

114
00:06:17,585 --> 00:06:20,795
Jetzt haben wir unseren Spieler in Bewegung. 

115
00:06:20,795 --> 00:06:24,085
Aber wir wollen nicht, dass diese Werte nur willkürlich sind. 

116
00:06:24,080 --> 00:06:27,710
Wir wollen keine 0,1 oder 0,01 haben. 

117
00:06:27,710 --> 00:06:32,680
Wir wollen tatsächlich, dass der Input, den wir hier bekommen haben, den Spieler bewegt. 

118
00:06:32,675 --> 00:06:35,665
Das wird also deine Herausforderung sein. 

119
00:06:35,660 --> 00:06:39,160
Deine Herausforderung besteht darin, die Spielerposition mit dem Input zu bewegen. 

120
00:06:39,155 --> 00:06:43,745
Sie greifen also auf die Position der Transformation des Spielers zu. 

121
00:06:43,745 --> 00:06:47,635
Sie werden die Position zu einem neuen Vektor machen 3. 

122
00:06:47,630 --> 00:06:51,320
Und Sie werden die Bewegung input.txt und Punkt
 y verwenden

123
00:06:51,320 --> 00:06:54,800
, da das X und Y dieses neuen Vektors

124
00:06:54,800 --> 00:07:02,410
3 auch die Z-Achse bei 0 F halten und einige nur ein bisschen zusätzliche Hilfe. 

125
00:07:02,405 --> 00:07:06,775
Ich empfehle Ihnen, die Unity-Dokumentation durchzugehen und sich das Beispiel anzusehen. 

126
00:07:06,770 --> 00:07:10,720
Sie waren so nett bei Unity Company irgendwo

127
00:07:10,715 --> 00:07:15,565
, um uns ein Beispiel dafür zu geben, wonach wir suchen. 

128
00:07:15,560 --> 00:07:21,220
Also pausiere das Video jetzt und mach die Herausforderung. 

129
00:07:21,215 --> 00:07:23,305
Okay, willkommen zurück. 

130
00:07:23,300 --> 00:07:25,430
Wenn wir also genau hier nach unten scrollen,

131
00:07:25,430 --> 00:07:28,720
können
 Sie sehen, dass
 wir die horizontale Eingabe

132
00:07:28,715 --> 00:07:30,685
erhalten, die vertikale Eingabe

133
00:07:30,680 --> 00:07:35,150
und dann alle in die transformierte Position legen. 

134
00:07:35,150 --> 00:07:39,260
Dies ist das genaue Beispiel, das wir brauchen und unseren Gewinn. 

135
00:07:39,260 --> 00:07:45,580
Wenn wir also wieder hier reingehen, schreibe
 ich anstelle von 0.01

136
00:07:45,575 --> 00:07:55,465
den Bewegungseingabepunkt x. Ich schreibe den Bewegungseingabepunkt y.

137
00:07:55,460 --> 00:07:58,240
Und ich werde all das speichern. 

138
00:07:58,235 --> 00:07:59,915
Jetzt zurück in unserem Spiel

139
00:07:59,915 --> 00:08:03,655
führen
 wir das Spiel aus und jetzt bewegt sich unser Spieler nicht. 

140
00:08:03,650 --> 00:08:05,380
Wenn wir ihn nach rechts bewegen wollen,

141
00:08:05,375 --> 00:08:07,745
hatten
 wir den Dickey, den er nach rechts,
 links bewegt

142
00:08:07,745 --> 00:08:09,985
, und er ist verschwunden. 

143
00:08:09,980 --> 00:08:14,690
Wie Sie sehen können, ist unser Spieler extrem, extrem schnell. 

144
00:08:14,690 --> 00:08:19,970
Warum ist das so? Nun, es liegt daran, dass Updates in jedem einzelnen Frame aufgerufen werden. 

145
00:08:19,970 --> 00:08:21,890
Wenn wir also noch einmal versuchen zu spielen,

146
00:08:21,890 --> 00:08:23,680
lass mich dir zeigen, was ich meine. 

147
00:08:23,675 --> 00:08:25,915
Wenn wir hier zu den Statistiken nachschauen,

148
00:08:25,910 --> 00:08:28,670
können
 wir sehen, wie viele Frames pro Sekunde wir haben. 

149
00:08:28,670 --> 00:08:30,830
Du weißt also, was Frames pro Sekunde sind? 

150
00:08:30,830 --> 00:08:33,260
Wenn du jemals ein Spiel gespielt hast und du jetzt sehen kannst

151
00:08:33,260 --> 00:08:36,290
sind
 es fast tausend Bilder pro Sekunde. 

152
00:08:36,290 --> 00:08:40,210
Wir nennen das tausendmal, 1000 Mal. 

153
00:08:40,205 --> 00:08:41,545
Wir fügen einen hinzu,

154
00:08:41,540 --> 00:08:46,250
also fügen wir jedes Mal oder jede Sekunde eine 1000 hinzu, wenn Sie möchten. 

155
00:08:46,250 --> 00:08:48,890
Wie werden wir das kontrollieren? 

156
00:08:48,890 --> 00:08:51,220
Nun, es gibt einen sehr einfachen Weg,

157
00:08:51,215 --> 00:08:56,785
und das heißt, dies mit der Zeit.Deltatime zu multiplizieren. 

158
00:08:56,780 --> 00:08:59,060
Und was passiert gerade,

159
00:08:59,060 --> 00:09:01,120
time.Deltatime, wenn wir den Mauszeiger darüber bewegen,

160
00:09:01,115 --> 00:09:05,645
es das Intervall und die Sekunden vom letzten bis zum aktuellen Bild. 

161
00:09:05,645 --> 00:09:10,925
Was das tut, ist, dass es zwischen jedem Frame die Zeit braucht,

162
00:09:10,924 --> 00:09:16,074
wir multiplizieren es mit diesem und werden jetzt Bildrate und abhängig. 

163
00:09:16,070 --> 00:09:18,410
Lass mich dir zeigen, was das bedeutet. 

164
00:09:18,410 --> 00:09:22,550
Dies bedeutet, dass beim Ausführen des Spiels
 die Zeit,

165
00:09:22,550 --> 00:09:27,880
die vom ersten bis zum zweiten Bild benötigt wird, in die Bewegung aufgenommen wird. 

166
00:09:27,875 --> 00:09:30,965
Und jetzt, wenn wir die D-Taste drücken, gehen wir los. 

167
00:09:30,965 --> 00:09:32,705
Wir sind viel langsamer. 

168
00:09:32,705 --> 00:09:36,715
Und wenn wir das W hätten, gehen wir nach oben, SVMs runter, a,

169
00:09:36,710 --> 00:09:39,040
wir bewegen uns nach links, bewegen uns nach rechts

170
00:09:39,035 --> 00:09:41,035
und so weiter und so weiter. 

171
00:09:41,030 --> 00:09:42,580
Wie cool ist das? 

172
00:09:42,575 --> 00:09:45,515
Was wir im anderen Plural haben,

173
00:09:45,515 --> 00:09:48,085
wen wir extrem niedrig sind. 

174
00:09:48,080 --> 00:09:50,300
Dies ist keine Möglichkeit, ein Spiel zu spielen,

175
00:09:50,300 --> 00:09:53,270
besonders wenn uns gruselige Feinde folgen. 

176
00:09:53,270 --> 00:09:58,720
Deshalb hatten wir diese Bewegungsgeschwindigkeit ständig variabel. 

177
00:09:58,715 --> 00:10:01,535
Dies wird es uns ermöglichen, unsere Geschwindigkeit zu kontrollieren. 

178
00:10:01,535 --> 00:10:06,815
Jetzt werden wir dies auch mit der Bewegungsgeschwindigkeit multiplizieren. 

179
00:10:06,815 --> 00:10:08,255
Das werden wir speichern. 

180
00:10:08,255 --> 00:10:09,925
In unserem Gewinn können
 wir also sehen,

181
00:10:09,920 --> 00:10:12,050
dass die Bewegungsgeschwindigkeit 20 beträgt. 

182
00:10:12,050 --> 00:10:13,540
Stellen wir es auf fünf ein. 

183
00:10:13,535 --> 00:10:16,255
Spar dir das auf, führe das Spiel aus. 

184
00:10:16,250 --> 00:10:18,580
Und jetzt können wir nach oben,

185
00:10:18,575 --> 00:10:21,605
unten, links, rechts gehen, wie wir wollen. 

186
00:10:21,605 --> 00:10:25,415
Wie cool ist, dass wir endlich einen Charakter haben,

187
00:10:25,415 --> 00:10:30,685
einen Spieler, der sich in einer Welt bewegt, die wir mit einfachem Code erstellt haben. 

188
00:10:30,680 --> 00:10:33,220
Lasst uns diese 50 machen. 

189
00:10:33,215 --> 00:10:35,105
Schauen wir es uns an. Nun, da sind wir los. 

190
00:10:35,105 --> 00:10:37,895
Wir können sogar kontrollieren, wie schnell es geht. 

191
00:10:37,895 --> 00:10:41,015
Ich meine, ernsthaft, wie aufgeregt bist du? 

192
00:10:41,015 --> 00:10:42,655
Vielleicht bin's nur ich. 

193
00:10:42,650 --> 00:10:44,920
Lassen Sie es uns um fünf Uhr behalten. Ich glaube fünf. 

194
00:10:44,915 --> 00:10:47,315
Eigentlich langsam keine Fasern. Dann lasst uns das machen. 

195
00:10:47,315 --> 00:10:48,205
Ja, da sind wir los. 

196
00:10:48,200 --> 00:10:51,200
10 sieht also wirklich gut aus. 

197
00:10:51,200 --> 00:10:52,480
Und wenn das erledigt ist, hoffe
 ich,

198
00:10:52,475 --> 00:10:54,085
dass es Ihnen gefällt. 

199
00:10:54,080 --> 00:10:55,960
Bevor ich das nächste Video vorstelle,

200
00:10:55,955 --> 00:10:58,255
wirst
 du feststellen, dass wir tatsächlich immer noch durch
 Wände gehen und weggehen können

201
00:10:58,250 --> 00:11:00,650
, was nicht gut ist. 

202
00:11:00,650 --> 00:11:02,060
Deshalb werden
 wir im nächsten Video

203
00:11:02,060 --> 00:11:05,540
Physik auf unseren Player anwenden und
 ihn dazu

204
00:11:05,540 --> 00:11:09,350
bringen, mit verschiedenen Objekten in unserer Welt zu interagieren. 

205
00:11:09,350 --> 00:11:11,030
Mit dem gesagt, vier,

206
00:11:11,030 --> 00:11:13,550
stelle
 ich sicher, dass ich deine Änderungen festnehme. 

207
00:11:13,550 --> 00:11:15,920
Ich werde nicht mit jedem einzelnen Video anfangen, weil

208
00:11:15,920 --> 00:11:18,530
es etwas ist, das man automatisch werden muss. 

209
00:11:18,529 --> 00:11:21,499
Und jedes Mal, wenn Sie etwas Wichtiges in Ihrem Spiel
 machen,

210
00:11:21,500 --> 00:11:24,110
stellen Sie sicher, dass Sie alle Arbeiten inszenieren

211
00:11:24,110 --> 00:11:25,610
, alle Ihre Arbeit
 verpflichten

212
00:11:25,610 --> 00:11:29,100
und wir sehen uns im nächsten Video. 

