﻿1
00:00:04,500 --> 00:00:05,430
‫你好, 欢迎｡

2
00:00:05,430 --> 00:00:12,390
‫在这节课中, 我们将学习如何在C++中设置位置调用函数,

3
00:00:12,390 --> 00:00:16,740
‫这样我们就可以在开始玩的时候把一个立方体带到一个新的位置｡

4
00:00:16,740 --> 00:00:19,500
‫你可以看到, 这个立方体在我们开始玩的时候突然出现了｡

5
00:00:19,500 --> 00:00:23,520
‫让我们深入了解一下函数在C++中是如何工作的｡

6
00:00:23,580 --> 00:00:32,010
‫因此, 让我们来看看函数是如何从Blueprint转换到C++的, 特别是在这个阶段使用函数｡

7
00:00:32,010 --> 00:00:36,390
‫我们将在本节稍后介绍如何创建我们自己的｡

8
00:00:36,570 --> 00:00:40,260
‫为了让你回忆一下, 这是Blueprint中的函数｡

9
00:00:40,260 --> 00:00:45,630
‫你可以看到我们有一个节点, 左边有输入引脚, 右边有输出引脚,

10
00:00:45,630 --> 00:00:50,910
‫我们可以把变量之类的东西插入到输入引脚中, 在C++中做同样的事情｡

11
00:00:50,910 --> 00:00:55,170
‫看起来你再次使用的函数名中没有空格｡

12
00:00:55,170 --> 00:01:00,720
‫所以, 我们没有把演员位置节点作为单独的单词, 而是用骆驼式大小写把它们放在一起,

13
00:01:00,720 --> 00:01:03,690
‫然后用括号括起来｡

14
00:01:03,690 --> 00:01:10,440
‫在圆括号内, 我们有一个输入列表, 这些输入可能不止一个｡

15
00:01:10,440 --> 00:01:14,460
‫你可以用逗号分隔它们, 但第一个例子我们只会有一个.

16
00:01:14,550 --> 00:01:18,000
‫而这些输入实际上被称为参数｡

17
00:01:18,000 --> 00:01:20,670
‫别问我为什么不想为此争论｡

18
00:01:20,670 --> 00:01:27,870
‫所以我们必须把这些变量放进去, 但是你不需要传递变量｡

19
00:01:27,870 --> 00:01:29,130
‫变量只是一种方法｡

20
00:01:29,130 --> 00:01:30,960
‫您也可以传递值｡

21
00:01:30,960 --> 00:01:36,600
‫所以如果我们遇到这样的情况,

22
00:01:36,600 --> 00:01:44,820
‫我们只想把位置设为1到3, 我们也可以在C++中直接在函数的括号内使用F Vector构造函数来实现｡

23
00:01:44,820 --> 00:01:51,060
‫这意味着我们将它设置为一个特定的值, 而不是变量中包含的值｡

24
00:01:51,060 --> 00:01:52,620
‫所以我们来给予试吧｡

25
00:01:52,620 --> 00:02:01,710
‫我们将转到Visual Studio代码, 并在更新My Vector之后查看开始演示｡

26
00:02:01,950 --> 00:02:07,470
‫我将添加几行新代码, 并输入set actor

27
00:02:07,470 --> 00:02:13,020
‫location, 确保输入正确, 因为在C++中, 名字必须完全匹配,

28
00:02:13,020 --> 00:02:18,360
‫然后打开括号, 在这里我们将构造一个新的F向量值｡

29
00:02:18,360 --> 00:02:22,950
‫我们再输入F向量的左括号｡

30
00:02:22,950 --> 00:02:28,470
‫在这里我们实际上是把参数传递给F Vector的构造函数｡

31
00:02:28,470 --> 00:02:34,320
‫所以这很像调用一个函数然后把这个函数的值传递给另一个函数｡

32
00:02:34,320 --> 00:02:36,870
‫但我们稍后会详细讨论这方面的内容｡

33
00:02:36,870 --> 00:02:43,560
‫这里我们可以输入1, 逗号2, 逗号3, 这意味着f向量1,

34
00:02:43,560 --> 00:02:48,990
‫2, 3将被传递到set actor位置,

35
00:02:48,990 --> 00:02:50,910
‫然后我们可以在完成的行的末尾放一个分号｡

36
00:02:50,910 --> 00:02:53,070
‫所以让我们进入虚幻｡

37
00:02:53,070 --> 00:02:56,490
‫让我们继续编译代码｡

38
00:02:56,490 --> 00:03:02,550
‫为了让我们能够看到它的效果, 我们需要去看我们的移动平台演员,

39
00:03:02,550 --> 00:03:09,840
‫你会注意到这个演员实际上没有组件, 这意味着它实际上不能有位置, 因为只有组件可以给予它提供位置｡

40
00:03:09,840 --> 00:03:16,170
‫因此, 我们可以继续并向该移动平台演员添加类似立方体的东西,

41
00:03:16,170 --> 00:03:27,210
‫或者转到详细信息窗格中的广告, 然后我们转到“立方体”, 这将为我们提供一个立方体, 我们可以继续并单击“播放”, 看看我们是否能够将该演员设置为位置｡

42
00:03:27,210 --> 00:03:34,110
‫我们可以单击移动平台, 然后使用工具栏中的弹出按钮弹出, 然后双击移动平台｡

43
00:03:34,110 --> 00:03:37,980
‫你可以看到它把我们带到了移动平台的位置｡

44
00:03:37,980 --> 00:03:45,810
‫在异常值或场景视图中选择该选项后, 我们可以查看详细信息窗格, 并看到该选项｡

45
00:03:45,810 --> 00:03:51,720
‫果然, 变换显示它的位置是1, 2, 3｡

46
00:03:51,720 --> 00:03:55,530
‫我们已经在C++代码中正确地设置了它｡

47
00:03:55,530 --> 00:04:04,500
‫下一部分, 如果我们从my x变量中设置my向量的Y值, 这会让人很困惑｡

48
00:04:04,500 --> 00:04:06,780
‫所以我们把这句话删掉, 开始为我演奏｡

49
00:04:06,780 --> 00:04:16,080
‫这是第19行, 我会删除一些多余的空行, 这样我们就有了一个在超级大人物和演员之间的位置｡

50
00:04:16,320 --> 00:04:22,230
‫然后我想挑战你们, 用一个变量, 而不是在原地构造f向量｡

51
00:04:22,230 --> 00:04:26,580
‫所以把我们使用的F向量构造函数替换掉｡

52
00:04:26,610 --> 00:04:31,800
‫更新my向量, 使其具有不同的位置｡

53
00:04:31,800 --> 00:04:35,010
‫你能把它拿近一点吗？

54
00:04:35,010 --> 00:04:40,680
‫当我们点击播放时, 立方体实际上被放置在玩家可以看到的地方｡

55
00:04:40,680 --> 00:04:42,480
‫暂停视频, 开始体验｡

56
00:04:45,390 --> 00:04:47,080
‫你好, 欢迎回来｡

57
00:04:47,100 --> 00:04:55,260
‫我们要做的就是去掉这个F向量, 括号和参数, 这就是它们的名字, 记得吗？

58
00:04:55,260 --> 00:05:02,520
‫然后作为设置参与者位置的参数, 我们输入向量｡

59
00:05:02,520 --> 00:05:10,920
‫所以它将使用my向量变量中的值来设置演员在开始播放时的位置｡

60
00:05:10,920 --> 00:05:14,220
‫所以让我们进入虚幻吧让我们现在停止玩｡

61
00:05:14,220 --> 00:05:18,750
‫让我们来看看第三人称角色的位置｡

62
00:05:18,750 --> 00:05:22,110
‫我们可以看到这里有这个位置｡

63
00:05:22,110 --> 00:05:25,080
‫我能做的是, 你可以手动复制每一个｡

64
00:05:25,080 --> 00:05:30,510
‫你实际上可以右键点击位置, 点击复制, 转到你的移动平台｡

65
00:05:30,780 --> 00:05:39,540
‫在矢量所在的位置, 我们可以右键单击并点击“粘贴”, 它会将整个矢量粘贴到这里｡

66
00:05:39,540 --> 00:05:44,010
‫现在我们知道我在移动平台立方在这里000｡

67
00:05:44,010 --> 00:05:48,810
‫但是如果我点击play, 实际上不会发生什么, 因为我忘记编译了｡

68
00:05:48,810 --> 00:05:53,280
‫这是一件永远要记住的事情, 我们确实需要编译对C++的任何更改｡

69
00:05:53,280 --> 00:05:59,790
‫因此, 我们必须点击编译按钮, 只有当它完成时, 我们才会真正看到我们所做的更改｡

70
00:05:59,790 --> 00:06:01,500
‫现在我们按播放键｡

71
00:06:01,500 --> 00:06:02,310
‫就这样｡

72
00:06:02,310 --> 00:06:06,870
‫立方体就站在玩家面前｡

73
00:06:06,870 --> 00:06:11,610
‫所以我们已经成功地将它移到了使用C++代码开始播放地方

74
00:06:11,610 --> 00:06:12,390
‫好东西｡

75
00:06:12,390 --> 00:06:14,070
‫我们下节课再见｡

