﻿1
00:00:04,310 --> 00:00:05,000
‫你好, 欢迎｡

2
00:00:05,010 --> 00:00:10,220
‫在这节课中, 我们将研究如何将我们的性格运动联系起来, 这样我们就可以将冲突向前推进,

3
00:00:10,220 --> 00:00:13,310
‫并环顾我们的世界｡

4
00:00:13,310 --> 00:00:17,960
‫经典的移动在第一人称或第三人称射击游戏｡

5
00:00:17,960 --> 00:00:19,400
‫让我们来看看它是如何完成的｡

6
00:00:20,390 --> 00:00:26,420
‫所以继续让我们的角色移动工作,

7
00:00:26,420 --> 00:00:32,750
‫我们首先要绑定一些输入, 但我们也要知道要把这些输入绑定到什么｡

8
00:00:32,930 --> 00:00:38,060
‫幸运的是, 当涉及到字符时, 我们有很多简化的东西｡

9
00:00:38,060 --> 00:00:44,390
‫毕竟, 虚幻真的是一个引擎, 优化的东西, 如射击游戏, 字符游戏｡

10
00:00:44,390 --> 00:00:52,100
‫让我们来看看角色演员类已经提供的一些运动函数, 不仅仅是角色运动组件,

11
00:00:52,100 --> 00:01:02,480
‫角色演员类也提供这些函数, 并且通常会将很多函数传递给角色运动组件, 但不一定如此｡

12
00:01:02,480 --> 00:01:04,940
‫让我们看看我们要处理哪些运动函数｡

13
00:01:04,940 --> 00:01:08,480
‫首先, 我们将添加运动输入｡

14
00:01:08,510 --> 00:01:12,830
‫添加移动输入基本上是一个向量, 告诉你要向哪个方向移动｡

15
00:01:12,830 --> 00:01:14,660
‫如果是向前的向量, 你就向前移动｡

16
00:01:14,660 --> 00:01:16,250
‫如果它是一个向后的向量, 你就向后移动｡

17
00:01:16,250 --> 00:01:18,650
‫如果是右向量, 你就向右移动, 以此类推｡

18
00:01:18,650 --> 00:01:22,580
‫矢量的大小决定了你在这个方向上移动的速度｡

19
00:01:23,000 --> 00:01:27,500
‫接下来是控制器俯仰输入｡

20
00:01:27,500 --> 00:01:32,090
‫这就是上下观察, 这显然非常有用｡

21
00:01:32,090 --> 00:01:35,540
‫当你有了鼠标, 你想通过上下移动鼠标来上下查看｡

22
00:01:35,960 --> 00:01:39,980
‫然后是add控制器, 您的输入会左右移动｡

23
00:01:40,400 --> 00:01:45,080
‫最后还有一个跳转功能, 就是你可以点击空格键, 然后跳转｡

24
00:01:45,320 --> 00:01:52,220
‫记住这些, 我们接下来要做的是在我们的角色演员类中创建一些绑定,

25
00:01:52,220 --> 00:01:55,850
‫这些绑定绑定了一些输入｡

26
00:01:55,860 --> 00:02:01,700
‫键盘､ 鼠标､ 控制器的一些输入｡

27
00:02:01,700 --> 00:02:05,510
‫所以我们要做一些, 然后我们要做一个挑战, 做其余的｡

28
00:02:05,810 --> 00:02:11,120
‫现在让我们转到Visual Studio代码, 我现在是射击游戏角色｡

29
00:02:11,450 --> 00:02:18,560
‫我们注意到这里已经有了设置玩家输入组件函数｡

30
00:02:18,560 --> 00:02:20,900
‫这是我们需要绑定输入的地方｡

31
00:02:21,020 --> 00:02:24,560
‫要按F12键转到C++｡

32
00:02:25,750 --> 00:02:31,900
‫我将按下Alt, 转到C++, 并找到我们设置的位置｡

33
00:02:31,900 --> 00:02:36,570
‫第一件事是它给我们这个输入组件, 我们要绑定｡

34
00:02:36,580 --> 00:02:38,410
‫如果你还记得, 这是我们的做法｡

35
00:02:38,410 --> 00:02:45,490
‫我们有一个玩家输入组件, 我们使用箭头操作符, 然后在这里执行绑定函数｡

36
00:02:45,490 --> 00:02:53,650
‫所以它要么是一个绑定访问, 要么是一个绑定操作, 这取决于它是一个离散的操作, 比如跳转,

37
00:02:53,650 --> 00:03:01,300
‫还是一个有值的操作, 比如上下查找或移动｡

38
00:03:01,660 --> 00:03:08,860
‫现在, 即使当我们使用关键点移动时, 我们仍然倾向于使用轴绑定它｡

39
00:03:08,860 --> 00:03:14,230
‫所以我在这段视频的第一部分要打个错字｡

40
00:03:14,230 --> 00:03:19,990
‫我稍后会更正它, 但请继续使用绑定轴, 而不是这里的绑定操作｡

41
00:03:20,840 --> 00:03:29,950
‫因此, 为了更进一步, 我们需要在项目设置中设置这些操作和轴｡

42
00:03:29,960 --> 00:03:32,120
‫让我们回到虚幻世界｡

43
00:03:32,150 --> 00:03:38,150
‫转到“设置”､ “项目设置”, 然后将其停靠下来, 以便我们可以非常清楚地看到它,

44
00:03:38,240 --> 00:03:42,020
‫然后转到输入部分｡

45
00:03:42,020 --> 00:03:48,770
‫因此, 引擎输入并设置一些轴映射和一些操作映射｡

46
00:03:50,590 --> 00:03:59,290
‫所以我马上要处理的是坐标轴映射, 首先, 我们要向前推进｡

47
00:04:00,230 --> 00:04:04,490
‫我们也要看一下｡

48
00:04:04,520 --> 00:04:11,630
‫记住, 我们没有前进和后退的关系因为我们可以用负尺度来做.

49
00:04:11,780 --> 00:04:17,060
‫例如, 我想将W Quay设置为前进｡

50
00:04:17,060 --> 00:04:18,650
‫这是第一个尺度｡

51
00:04:18,650 --> 00:04:25,940
‫但如果我想让se键变成后退键, 我仍然可以用前进键, 但给予它减1的刻度｡

52
00:04:25,940 --> 00:04:27,240
‫只是给你一个简短的提醒｡

53
00:04:27,260 --> 00:04:28,430
‫向上看也一样｡

54
00:04:28,430 --> 00:04:30,020
‫我将使用鼠标来完成此操作｡

55
00:04:30,020 --> 00:04:33,110
‫我们将在下一节课中讨论控制器输入｡

56
00:04:33,200 --> 00:04:35,620
‫我们将使用鼠标y｡

57
00:04:35,630 --> 00:04:42,080
‫记住, y是上下的, 而不是左右的因为它有点高, 不是吗？

58
00:04:42,080 --> 00:04:44,570
‫Y比X稍微高一点｡

59
00:04:44,570 --> 00:04:45,950
‫反正我记得是这样的｡

60
00:04:45,950 --> 00:04:53,090
‫鼠标Y是上下移动的, 然后我们要调整刻度, 看看方向是否正确.

61
00:04:53,090 --> 00:04:58,070
‫但基本上, 如果我们下降, 它会给我们负值, 如果我们上升, 它会给我们正值｡

62
00:04:58,070 --> 00:05:02,900
‫因此, 我们可能需要调整一下lookup, 看看它是否会朝着正确的方向发展｡

63
00:05:02,900 --> 00:05:09,800
‫但是, 我们可以反转或不反转比例, 这取决于输入的类型｡

64
00:05:10,950 --> 00:05:14,390
‫所以一旦我们得到了轴名, 我们就可以回到C++了｡

65
00:05:14,400 --> 00:05:19,590
‫我们将使用文本宏和轴名称文本绑定它｡

66
00:05:19,710 --> 00:05:25,180
‫然后我们需要说明我们要调用的函数对象, 以及我们要调用的函数｡

67
00:05:25,200 --> 00:05:35,160
‫我们现在还没有要调用的函数, 所以我要在我的C++头文件中创建一个新的私有函数.

68
00:05:35,280 --> 00:05:41,220
‫这是一个空函数, 叫做向前移动｡

69
00:05:42,320 --> 00:05:46,130
‫它会取浮点数, 也就是坐标轴的值｡

70
00:05:49,380 --> 00:05:50,880
‫最后用分号结束｡

71
00:05:50,880 --> 00:05:55,320
‫我有一个小技巧, 这里有一个小的扩展, 它可以帮助我更快地实现这些东西,

72
00:05:55,320 --> 00:05:58,380
‫通过控制shift, p和｡

73
00:06:00,460 --> 00:06:06,940
‫如果我输入create implementation, 它会在C++文件中为我创建该实现｡

74
00:06:06,940 --> 00:06:08,060
‫真的很好很容易｡

75
00:06:08,080 --> 00:06:09,460
‫扩展名｡

76
00:06:09,460 --> 00:06:14,980
‫如果我过去, 我总是忘记我的扩展名, 所以我会去看看它可能是什么｡

77
00:06:15,820 --> 00:06:18,310
‫是的, 就是这个小东西, C++辅助器｡

78
00:06:18,310 --> 00:06:25,090
‫如果你继续为你的VTS代码安装这个, 它只是允许你做这类事情, 这是非常好的｡

79
00:06:25,090 --> 00:06:25,810
‫非常方便｡

80
00:06:27,490 --> 00:06:30,060
‫这就是我们要设置它调用的函数｡

81
00:06:30,070 --> 00:06:32,850
‫所以首先, 我们说这个, 这是目标｡

82
00:06:32,860 --> 00:06:36,390
‫当前对象是此函数的目标｡

83
00:06:36,400 --> 00:06:42,850
‫然后我们继续, 把这个问题放到完全限定函数问题中, 字符, 冒号,

84
00:06:42,850 --> 00:06:46,990
‫冒号向前移动, 这样我们就可以绑定到这个函数了.

85
00:06:47,530 --> 00:06:57,430
‫最后, 我们要做的是把轴的值传递给我们要调用的函数, 也就是父函数｡

86
00:06:57,430 --> 00:06:58,600
‫所以我们什么都不用做｡

87
00:06:58,600 --> 00:07:01,660
‫我们可以做广告移动｡

88
00:07:12,480 --> 00:07:13,680
‫像这样投入｡

89
00:07:14,320 --> 00:07:20,640
‫因为这是向前移动的方法, 我们需要得到参与者的向前向量｡

90
00:07:20,650 --> 00:07:28,990
‫我们的方法是这样做的, 我们可以这样做, 然后我们希望它是向前的, 我们的访问值给我们的数量,

91
00:07:28,990 --> 00:07:34,090
‫所以我们可以乘以轴的值｡

92
00:07:34,420 --> 00:07:36,340
‫这将给予我们正确的结果｡

93
00:07:36,340 --> 00:07:39,370
‫所以我们要把前向矢量乘以轴的值｡

94
00:07:39,370 --> 00:07:44,110
‫如果是1, 我们就前进, 如果是-1, 前进的向量就变成了后退的向量,

95
00:07:44,110 --> 00:07:46,240
‫我们就用这个函数后退.

96
00:07:46,240 --> 00:07:49,000
‫这就为我们的下一步做好了准备｡

97
00:07:49,000 --> 00:07:49,530
‫好极了｡

98
00:07:49,540 --> 00:07:53,470
‫接下来的事情就是为我们包扎起来｡

99
00:07:53,470 --> 00:07:54,790
‫所以我们去复制吧｡

100
00:07:54,790 --> 00:07:58,480
‫我总是喜欢复制这些字符串引用, 这样我就不会出错｡

101
00:07:58,930 --> 00:08:03,160
‫做一个查找, 而不是绑定前进, 让我们回到文件的头部, 并创建一些新的东西｡

102
00:08:03,160 --> 00:08:07,960
‫这将是一个向上查找的浮点轴值｡

103
00:08:09,080 --> 00:08:09,770
‫就像这样｡

104
00:08:10,600 --> 00:08:15,940
‫如果我控制P班次, 并创建实施, 就可以继续进行, 并节省我一点时间｡

105
00:08:16,150 --> 00:08:22,330
‫这一次, 我们不想添加运动输入, 而是想使用我们可以使用的其他函数之一｡

106
00:08:27,060 --> 00:08:32,580
‫也就是广告控制器的音高输入, 因为我们想基本上提高音高｡

107
00:08:32,730 --> 00:08:37,080
‫所以这次我们可以做广告控制器｡

108
00:08:38,860 --> 00:08:42,550
‫俯仰输入并直接传递轴值｡

109
00:08:42,580 --> 00:08:43,390
‫现在就去

110
00:08:43,420 --> 00:08:49,980
‫现在, 如果你是一个有经验的C++程序员, 你可能会说, 嘿, 这个函数基本上什么都不做｡

111
00:08:49,990 --> 00:08:53,650
‫它只是用相同的参数调用其他函数｡

112
00:08:53,650 --> 00:08:55,540
‫所以它并没有发挥多大作用｡

113
00:08:55,540 --> 00:08:56,650
‫你是对的｡

114
00:08:56,650 --> 00:09:03,250
‫所以我们可以做的是, 查找a shooter字符, 这样我们就可以调用在这个类上定义的函数a

115
00:09:03,250 --> 00:09:06,700
‫shooter字符｡

116
00:09:07,270 --> 00:09:14,200
‫或者我们可以说, 有一个控制音高的输入, 我们可以直接调用它, 对吗？

117
00:09:14,200 --> 00:09:21,910
‫如果我们用F12找到它的定义位置, 然后导航到它, 你可以看到它是在pawn

118
00:09:21,910 --> 00:09:24,850
‫h中定义的.

119
00:09:24,850 --> 00:09:30,340
‫所以如果你向上滚动, 你可以看到在这里我们会找到一个类｡

120
00:09:30,340 --> 00:09:34,690
‫让我们, 我们甚至可以搜索班级空间, 类似的东西｡

121
00:09:35,430 --> 00:09:38,460
‫这里我们有一个卒是类｡

122
00:09:38,460 --> 00:09:44,820
‫让我们回到射手角色, 我们可以尝试, 让它稍微短一点,

123
00:09:44,850 --> 00:09:53,910
‫我们来做一个兵冒号, 冒号, 添加控制器音高输入, 这样它就可以自动直接调用父函数,

124
00:09:53,910 --> 00:09:59,100
‫而不必通过我们自己的函数｡

125
00:09:59,100 --> 00:10:02,700
‫这也是一种有效的方法, 但只是没有必要｡

126
00:10:02,700 --> 00:10:08,070
‫所以我要把它注释掉, 这样你就可以参考它, 如果你想这样做的话｡

127
00:10:08,190 --> 00:10:12,120
‫但我建议你这样走短一点的路｡

128
00:10:30,820 --> 00:10:35,720
‫在尝试编译它的过程中, 我注意到, 我一直在做绑定操作, 而不是像我一直想做的那样,

129
00:10:35,720 --> 00:10:38,240
‫在Axis后面调用｡

130
00:10:38,240 --> 00:10:41,000
‫所以你可能一直在对着屏幕尖叫｡

131
00:10:41,000 --> 00:10:42,530
‫让我们继续重新构建它｡

132
00:10:42,530 --> 00:10:46,580
‫顺便说一下, 我是用控制键B和选择构建选项来完成的｡

133
00:10:46,580 --> 00:10:55,940
‫这是一个简单的射击编辑器win 64开发版本, 这对我来说只是一个更快的方法, 而不是过去点击编译按钮｡

134
00:10:57,140 --> 00:10:59,390
‫我会看的, 但我今天语法不对｡

135
00:10:59,390 --> 00:11:08,540
‫当然我们需要在这个函数前面使用&号来表示我们想要得到指针｡

136
00:11:09,750 --> 00:11:14,610
‫我们希望在这些函数前面使用&符号, 以便在这里得到正确的语法｡

137
00:11:21,950 --> 00:11:22,130
‫好吧, 我会的

138
00:11:22,130 --> 00:11:28,430
‫所以在我纠正了这两个非常常见的错误之后, 一个是我得到了错误的函数调用,

139
00:11:28,430 --> 00:11:33,030
‫另一个是我没有在我试图使用的函数前面得到一个&号｡

140
00:11:33,050 --> 00:11:37,070
‫让我们进入虚幻看看这是否真的有效｡

141
00:11:37,070 --> 00:11:41,930
‫如果我点击播放, 使用W键和S键, 您可以看到我可以向前和向后移动｡

142
00:11:41,930 --> 00:11:42,800
‫太神奇了｡

143
00:11:42,800 --> 00:11:49,040
‫而用鼠标我可以上下看, 但它是感觉倒置的时刻, 以我的运动｡

144
00:11:49,040 --> 00:11:55,310
‫我将转到产品设置, 在那里单击减1, 然后单击播放｡

145
00:11:56,560 --> 00:11:59,140
‫现在如果我上下移动, 感觉就对了｡

146
00:11:59,140 --> 00:12:01,990
‫请注意, 我实际上是在两个不同的位置产卵｡

147
00:12:01,990 --> 00:12:04,780
‫那是因为当我投进第二个球时, 我必须让球员首发｡

148
00:12:04,780 --> 00:12:10,120
‫我不知道在这一关已经有一个了, 这就是为什么我有时在这里产卵, 有时在不同的地方产卵｡

149
00:12:10,120 --> 00:12:11,500
‫你可能会发现同样的事情｡

150
00:12:13,170 --> 00:12:14,940
‫所以现在是挑战时刻｡

151
00:12:14,940 --> 00:12:22,920
‫让我们把你们的电影版权绑定起来, 这样你们就看起来不错了, 这样我们就可以完全控制我们的行动了｡

152
00:12:22,920 --> 00:12:28,590
‫重复我刚才在课上对这两个问题所做的过程, 你们可能已经沿着了｡

153
00:12:28,830 --> 00:12:31,320
‫如果没有, 你可以进去看修改｡

154
00:12:31,320 --> 00:12:35,340
‫我也希望你能尝试一下跳跃功能｡

155
00:12:35,460 --> 00:12:38,160
‫如果你觉得勇敢, 暂停视频, 试一下｡

156
00:12:38,920 --> 00:12:39,270
‫好吧, 我会的

157
00:12:39,270 --> 00:12:39,720
‫欢迎回来｡

158
00:12:39,720 --> 00:12:41,330
‫所以我们来试试吧｡

159
00:12:41,340 --> 00:12:46,680
‫首先, 我们重复上述步骤, 向前看, 向上看｡

160
00:12:46,680 --> 00:12:50,160
‫所以我们要搬家了, 对吧？

161
00:12:50,430 --> 00:12:54,120
‫我们要做的不是向上看, 而是向右看｡

162
00:12:54,450 --> 00:12:59,520
‫我们可以继续复制这些内容, 以便在项目设置中设置轴｡

163
00:12:59,520 --> 00:13:02,160
‫因此, 再添加几个轴映射｡

164
00:13:02,160 --> 00:13:08,190
‫第一个是move, right, 我将把它映射到键, 一个左四.

165
00:13:08,190 --> 00:13:10,890
‫所以这是负的｡

166
00:13:11,310 --> 00:13:18,990
‫A是-1, 因为它实际上是左, 右的对立面, 而DX现在是4.

167
00:13:18,990 --> 00:13:21,210
‫显然, 您也可以在此处添加箭头键｡

168
00:13:21,210 --> 00:13:23,190
‫我这么做不是为了保存时间｡

169
00:13:23,190 --> 00:13:25,170
‫但是你可以继续做同样的事情｡

170
00:13:25,170 --> 00:13:31,170
‫您可以在此处添加更多关键点, 任意数量的关键点都可以映射到该单轴外观｡

171
00:13:31,170 --> 00:13:31,680
‫好吧, 我知道了

172
00:13:31,680 --> 00:13:35,520
‫我们将使用鼠标x｡

173
00:13:36,310 --> 00:13:39,910
‫我认为一个就足够了, 而不是减一个｡

174
00:13:40,180 --> 00:13:41,740
‫我不认为我们必须颠倒这个｡

175
00:13:42,520 --> 00:13:45,610
‫然后我们要做的是稍微改变一下绑定方式｡

176
00:13:45,610 --> 00:13:52,330
‫所以我将在这里创建一个右移函数｡

177
00:13:53,390 --> 00:13:57,540
‫现在你可能想知道, 为什么我们要用不同的方式来做这件事？

178
00:13:57,560 --> 00:13:58,620
‫为什么是右移？

179
00:13:58,640 --> 00:14:00,860
‫为什么我们不直接调用以添加移动输入？

180
00:14:00,950 --> 00:14:02,990
‫不同之处在于我们要做一些计算｡

181
00:14:02,990 --> 00:14:09,630
‫我们在这个乘法中加入了一个向量, 这就增加了一些信息, 证明了这个函数的存在性｡

182
00:14:09,650 --> 00:14:16,030
‫这一次, 我们不想得到向前的动作, 我们想得到右向量, 然后乘以坐标轴的值,

183
00:14:16,040 --> 00:14:20,810
‫然后我们想调用, 而不是向前｡

184
00:14:20,810 --> 00:14:24,980
‫我们现在要呼叫移动｡

185
00:14:26,960 --> 00:14:27,680
‫好吧, 我知道了

186
00:14:27,680 --> 00:14:34,310
‫我们不想添加控制器俯仰输入, 而想做你的输入｡

187
00:14:34,310 --> 00:14:36,380
‫记住横滚俯仰, 你是飞机上的｡

188
00:14:36,380 --> 00:14:41,110
‫如果你不确定哪个是哪个, 你可以在维基百科上查一下, 然后继续建立那个｡

189
00:14:41,120 --> 00:14:43,190
‫希望这次我没有把语法搞错｡

190
00:14:43,670 --> 00:14:49,310
‫让我们跳到编辑器那里, 点击播放, 就这样｡

191
00:14:49,310 --> 00:14:50,510
‫我可以环顾四周｡

192
00:14:50,510 --> 00:14:51,470
‫看起来不错｡

193
00:14:51,470 --> 00:14:53,150
‫我可以左右扫射｡

194
00:14:53,150 --> 00:14:55,010
‫我可以前进和后退｡

195
00:14:55,010 --> 00:15:01,670
‫所以剩下的就是jump, 它是一个动作映射而不是一个轴, 因为它是一个离散的动作,

196
00:15:01,670 --> 00:15:05,090
‫我称之为jump并复制它｡

197
00:15:05,120 --> 00:15:07,640
‫转到Visual Studio代码｡

198
00:15:08,410 --> 00:15:13,870
‫然后关闭编译窗口, 这里我不再绑定一个轴, 你已经知道了.

199
00:15:13,870 --> 00:15:18,700
‫我将绑定一个动作绑定动作｡

200
00:15:18,710 --> 00:15:19,660
‫就这么简单｡

201
00:15:19,720 --> 00:15:21,940
‫它还是从这里的文本开始｡

202
00:15:22,930 --> 00:15:23,710
‫的跳跃｡

203
00:15:24,190 --> 00:15:28,840
‫但是斧头的不同之处, 你们可能还记得｡

204
00:15:30,860 --> 00:15:38,570
‫就是我们需要使用这个语法I输入事件, 这是一个枚举, 这意味着它基本上可以接受很多不同的选项, 双击,

205
00:15:38,570 --> 00:15:48,080
‫按下释放等｡ 我们要像这样跳到媒体上｡

206
00:15:55,710 --> 00:16:02,400
‫这就是我强调的, 按下, 一旦我们知道可以继续做同样的事情, 我们就应该跟注,

207
00:16:02,400 --> 00:16:04,980
‫然后跳转.

208
00:16:05,280 --> 00:16:07,700
‫那么, 跳跃的定义在哪里？

209
00:16:07,710 --> 00:16:08,460
‫是不是在——？

210
00:16:08,460 --> 00:16:09,330
‫我们来看看｡

211
00:16:10,320 --> 00:16:13,440
‫不, 但可能是在角色里｡

212
00:16:13,440 --> 00:16:16,230
‫所以我要做一个对照P来寻找性格｡

213
00:16:20,540 --> 00:16:21,710
‫H点

214
00:16:23,850 --> 00:16:28,800
‫打开它, 看看这里, 是否定义了跳转函数.

215
00:16:29,040 --> 00:16:32,990
‫跳转然后打开括号通常是在头文件中查找函数的好方法｡

216
00:16:33,000 --> 00:16:34,860
‫果然, 我们已经得到了那个功能｡

217
00:16:34,860 --> 00:16:36,030
‫您可以查看文档｡

218
00:16:36,030 --> 00:16:40,230
‫我经常喜欢直接使用源代码, 而不是查找任何文档文件｡

219
00:16:40,230 --> 00:16:44,790
‫我只是发现有时访问它要快得多, 特别是当你有控制权的时候｡

220
00:16:44,790 --> 00:16:46,770
‫P在Visual Studio程式码中｡

221
00:16:47,430 --> 00:16:52,620
‫所以我们要做的不是, 冒号, 冒号, 我们要做一个字符冒号, 冒号.

222
00:16:52,620 --> 00:16:56,610
‫所以应该是&号, 一个字符冒号.

223
00:16:56,610 --> 00:16:59,190
‫这是因为它是在类上定义的｡

224
00:16:59,190 --> 00:17:05,880
‫我们不能在执行冒号运算符的时候, 去查找层次结构, 然后就跳转了｡

225
00:17:05,880 --> 00:17:07,830
‫所以字符, 冒号, 冒号跳｡

226
00:17:07,830 --> 00:17:10,560
‫别忘了我需要在行尾加分号｡

227
00:17:10,560 --> 00:17:13,890
‫继续建造, 看看我们现在是否能跳跃｡

228
00:17:17,430 --> 00:17:19,790
‫好吧, 构建工作正确｡

229
00:17:19,800 --> 00:17:21,810
‫让我们转到沙盒级别｡

230
00:17:21,810 --> 00:17:24,600
‫按播放键, 试着跳｡

231
00:17:24,780 --> 00:17:28,380
‫我没有钥匙, 所以可能会妨碍我｡

232
00:17:28,710 --> 00:17:35,200
‫添加空格键作为关键, 我想要的跳跃和前进, 并点击播放｡

233
00:17:35,220 --> 00:17:35,910
‫好耶

234
00:17:35,910 --> 00:17:39,750
‫我可以跳上跳下, 在空中移动, 四处移动｡

235
00:17:39,870 --> 00:17:40,560
‫好极了｡

236
00:17:40,560 --> 00:17:44,760
‫所以我们学会了如何把我们的斧头和动作绑在一起, 而我们还没有学会｡

237
00:17:44,790 --> 00:17:51,300
‫我们已经修改了它, 但我们已经看到了我们想绑定到一个字符,

238
00:17:51,300 --> 00:17:59,760
‫以获得经典的字符跳跃, 扫射, 移动和寻找与您的相机, 我们都知道和爱从我们的射手｡

239
00:18:00,760 --> 00:18:08,400
‫下一节课将讨论使用控制器､ 键盘和鼠标移动时所需的细微差别｡

