﻿1
00:00:04,350 --> 00:00:05,340
‫你好, 欢迎｡

2
00:00:05,340 --> 00:00:11,910
‫在本课程中,

3
00:00:11,910 --> 00:00:19,650
‫我们将设置可重映射的输入, 以便在按下鼠标键或控制器时, 我们会从Blueprint获得按下和释放消息｡

4
00:00:19,650 --> 00:00:21,930
‫现在让我们深入了解一下如何做到这一点｡

5
00:00:21,930 --> 00:00:24,180
‫我们不想一直做这种追踪｡

6
00:00:24,180 --> 00:00:30,090
‫我们只需要在准备抓取物体的时候做这个动作, 而不是在靠近物体的时候自动抓取｡

7
00:00:30,330 --> 00:00:37,950
‫所以要真正抓住某个东西, 我们需要使用鼠标输入, 某种输入｡

8
00:00:37,950 --> 00:00:43,170
‫之前我们已经在Blueprint中对事件执行了此操作, 现在我们将再次对事件执行此操作｡

9
00:00:43,170 --> 00:00:49,050
‫我们将很快看到如何在C++中实现这一点, 但我们将首先使用事件来实现这一点｡

10
00:00:49,050 --> 00:00:57,960
‫我想做的是把它设置好, 这样它就可以和键盘一起工作, 和鼠标一起工作, 或者和控制器一起工作｡

11
00:00:57,960 --> 00:01:02,700
‫为此, 我们需要输入映射, 这在游戏中很常见｡

12
00:01:02,700 --> 00:01:09,480
‫我们要做的是进入COG设置, 进入项目设置, 向下滚动到引擎,

13
00:01:09,660 --> 00:01:13,530
‫然后输入｡

14
00:01:14,040 --> 00:01:20,700
‫这里是我们设置动作映射和轴映射的地方｡

15
00:01:20,700 --> 00:01:34,020
‫所以这两个概念本质上是控制器模拟摇杆或按钮之间的映射, 或者鼠标和鼠标按钮或键盘之间的映射｡

16
00:01:34,020 --> 00:01:36,870
‫动作是离散的｡

17
00:01:36,870 --> 00:01:41,910
‫这些都是你按下一个按钮, 它只是作为一个按下, 作为一个释放｡

18
00:01:41,910 --> 00:01:49,230
‫轴映射是更连续的东西, 比如当你稍微移动鼠标或者稍微倾斜控制器时,

19
00:01:49,590 --> 00:01:53,310
‫你可以倾斜一定的角度｡

20
00:01:53,310 --> 00:01:54,480
‫你可以倾斜它, 一点也不｡

21
00:01:54,480 --> 00:01:57,480
‫你可以告诉所有的方式或任何地方之间｡

22
00:01:57,480 --> 00:01:58,290
‫那些是斧头｡

23
00:01:58,290 --> 00:02:08,400
‫我们在本节中不讨论轴, 因为我们要处理的是一个尝试激活抓取器组件的操作｡

24
00:02:08,850 --> 00:02:13,020
‫所以我们要做的就是展开我们的动作映射｡

25
00:02:13,030 --> 00:02:16,290
‫所以你可以看到这里已经有了一些动作映射｡

26
00:02:16,290 --> 00:02:20,070
‫有一个跳跃, 然后有一个主要的行动｡

27
00:02:20,070 --> 00:02:26,220
‫这是为我们设置的, 因为我们使用的是第一人称模板, 而且这里已经有一个主要操作｡

28
00:02:26,220 --> 00:02:33,750
‫现在, 让我们展开主要操作, 您将看到有两种方法可以触发主要操作｡

29
00:02:33,750 --> 00:02:39,060
‫您可以使用鼠标左键或游戏手柄右键触发｡

30
00:02:39,060 --> 00:02:44,550
‫现在, 我想给予大家了解一下我们如何建立自己的操作映射｡

31
00:02:44,550 --> 00:02:50,220
‫实际上, 我将单击主要操作旁边的“删除”按钮, 然后我们将创建我们自己的操作｡

32
00:02:50,220 --> 00:02:54,750
‫因此, 首先要做的是单击操作映射旁边的添加按钮｡

33
00:02:54,750 --> 00:02:56,550
‫然后, 我们需要为此操作命名｡

34
00:02:56,550 --> 00:03:01,140
‫在我的例子中, 我要调用这个grab, 然后我们需要选择一个映射｡

35
00:03:01,140 --> 00:03:06,600
‫现在,

36
00:03:06,600 --> 00:03:12,210
‫您可以从下拉菜单中选择任何映射, 也可以单击键盘上的小按钮, 以便捕获正在执行的操作｡

37
00:03:12,210 --> 00:03:17,100
‫所以你点击它, 它变成黄色, 然后你再点击一次, 或者你用任何键｡

38
00:03:17,100 --> 00:03:19,890
‫如果我按空格键, 您可以看到它按空格键｡

39
00:03:19,920 --> 00:03:26,820
‫如果我真的用鼠标左键单击, 你可以看到它在这里添加了一个鼠标左键选项｡

40
00:03:26,820 --> 00:03:33,690
‫所以现在对你来说一个小小的挑战是继续设置这个动作映射, 添加鼠标左键｡

41
00:03:33,690 --> 00:03:38,370
‫如果你有一个控制器, 也许可以在这里添加一个控制器按钮｡

42
00:03:39,960 --> 00:03:40,360
‫好吧, 我会的

43
00:03:40,400 --> 00:03:40,910
‫欢迎回来｡

44
00:03:40,910 --> 00:03:44,960
‫因此, 我将在这个添加按钮中添加一个新的操作映射｡

45
00:03:45,140 --> 00:03:49,880
‫然后我们可以做的是我现在没有连接控制器｡

46
00:03:49,880 --> 00:03:58,790
‫所以你可以点击下拉菜单, 我们可以进入游戏手柄, 你可以找到游戏手柄的右触发器, 例如,

47
00:03:58,790 --> 00:04:03,860
‫这将设置它, 这样当你在游戏手柄上扣动触发器时,

48
00:04:03,860 --> 00:04:07,250
‫它将激活我们的抓取动作｡

49
00:04:07,250 --> 00:04:09,080
‫我们已经建立了动作映射｡

50
00:04:09,080 --> 00:04:10,910
‫现在我们需要真正利用它｡

51
00:04:10,910 --> 00:04:13,700
‫现在我们来看一下内容抽取｡

52
00:04:13,850 --> 00:04:21,050
‫我们将找到蜂鸣声播放器并打开它, 因为蜂鸣声播放器是具有抓取器组件的播放器｡

53
00:04:21,050 --> 00:04:25,850
‫这就是我们最终想要激活的东西, 让它抓住一些东西｡

54
00:04:26,240 --> 00:04:33,920
‫我们可以通过右键单击Blueprint Event图表并搜索grab来实现此目的｡

55
00:04:34,370 --> 00:04:42,410
‫现在有一个输入动作事件抓取事件, 它与您设置的任何键相关联, 您可以更改它,

56
00:04:42,410 --> 00:04:50,330
‫您还可以在游戏中创建屏幕, 允许您的玩家更改输入映射｡

57
00:04:50,600 --> 00:04:55,490
‫这里有两个事件, 一个是新闻事件, 一个是发布事件｡

58
00:04:55,490 --> 00:04:59,630
‫所以我想挑战你去记录那个特定的行动｡

59
00:04:59,630 --> 00:05:06,620
‫因此, 在按下时添加蓝图日志, 在释放时添加蓝图日志, 并检查映射是否工作｡

60
00:05:06,620 --> 00:05:07,640
‫所以进入游戏｡

61
00:05:07,640 --> 00:05:14,930
‫使用您映射到抓取操作的特定键, 看看日志消息是否打印出来｡

62
00:05:14,930 --> 00:05:16,400
‫暂停视频, 开始体验｡

63
00:05:19,650 --> 00:05:20,760
‫欢迎回来

64
00:05:20,790 --> 00:05:26,780
‫所以对于pressed, 我们要做一个print字符串, 它不会打招呼｡

65
00:05:26,790 --> 00:05:31,680
‫它会显示为“已抓取”, 然后我们还会显示为“已释放”｡

66
00:05:31,680 --> 00:05:36,870
‫同样, 一个打印字符串将显示released like｡

67
00:05:36,870 --> 00:05:40,980
‫所以现在让我们进入我们的地下城水平和点击播放｡

68
00:05:41,250 --> 00:05:45,570
‫现在如果我们点击鼠标按钮, 它会显示“已抓取”｡

69
00:05:45,570 --> 00:05:47,610
‫当我松开它的时候, 它就说松开了｡

70
00:05:47,610 --> 00:05:50,910
‫你可以看到, 这是我们所期望的｡

71
00:05:50,910 --> 00:05:51,420
‫好东西｡

72
00:05:51,420 --> 00:05:57,990
‫现在, 我们已经了解了如何设置可重映射和可映射到多个输入的操作映射｡

73
00:05:57,990 --> 00:05:59,730
‫我们下节课再见｡

