﻿1
00:00:04,830 --> 00:00:05,820
‫Xin chào và chào mừng.

2
00:00:05,820 --> 00:00:12,150
‫Trong bài giảng này, chúng ta sẽ tìm hiểu về các đối tượng và cách chúng ta có thể sử dụng chức năng trên các đối

3
00:00:12,150 --> 00:00:16,170
‫tượng và dữ liệu của chúng để bắt đầu tạo các chương trình thú vị.

4
00:00:16,170 --> 00:00:17,700
‫Hãy đi sâu vào.

5
00:00:18,910 --> 00:00:24,430
‫Vì vậy, hãy bắt đầu bài giảng này bằng cách giới thiệu một khái niệm mới, khái niệm về các đối tượng.

6
00:00:24,430 --> 00:00:27,670
‫Nó hoàn toàn quan trọng đối với nhiều ngôn ngữ lập trình.

7
00:00:27,940 --> 00:00:35,560
‫Vì vậy, một đối tượng về cơ bản là một thứ mà bạn muốn đại diện cho một sự vật, một cái gì đó giống như trong một trò chơi, bạn có

8
00:00:35,560 --> 00:00:37,120
‫thể có một nhà thám hiểm.

9
00:00:37,120 --> 00:00:46,600
‫Anh ta là một đối tượng trong thế giới của bạn và anh ta có thể có một số dữ liệu đại diện cho anh ta là gì, những thứ giống như anh ta, chẳng hạn như

10
00:00:46,600 --> 00:00:51,490
‫điểm kinh nghiệm, hoặc có thể cấp độ của anh ta, anh ta là nhà thám hiểm cấp hai.

11
00:00:51,490 --> 00:00:57,520
‫Những thứ như thế là dữ liệu tạo nên một nhà thám hiểm, nhưng đó không phải là tất cả những gì một nhà thám hiểm.

12
00:00:57,520 --> 00:01:05,050
‫Một nhà thám hiểm cũng có một số chức năng, chẳng hạn như khả năng bắn tên, chẳng hạn như

13
00:01:05,050 --> 00:01:06,670
‫có thể nhảy, v.v.

14
00:01:07,210 --> 00:01:09,130
‫Có những thứ khác có thể là đồ vật.

15
00:01:09,130 --> 00:01:15,310
‫Vì vậy, ví dụ: chúng ta có thể đại diện cho mọi thứ trong thế giới thực, trong máy tính, chẳng hạn như trình phát

16
00:01:15,310 --> 00:01:21,040
‫và chúng tôi có thể lưu trữ các thuộc tính liên quan cho trình phát những thứ như người chơi sử dụng bộ

17
00:01:21,400 --> 00:01:23,980
‫điều khiển, người chơi là số một hay số hai?

18
00:01:24,010 --> 00:01:29,680
‫Các loại dữ liệu đó và các chức năng liên quan, chẳng hạn như lấy thông tin đầu vào hiện tại của chúng.

19
00:01:29,890 --> 00:01:35,380
‫Chẳng hạn như họ đang giữ phím cách để lấy cấp độ kỹ năng của người chơi và sau đó bạn có thể có

20
00:01:35,380 --> 00:01:38,650
‫các đối tượng hoàn toàn trừu tượng, những thứ như một danh sách.

21
00:01:38,650 --> 00:01:43,210
‫Vì vậy, bạn có thể có một danh sách có các mục một, hai, ba, bốn trong đó, hoặc có thể có bất kỳ

22
00:01:43,210 --> 00:01:44,470
‫mục nào bạn thích trong đó.

23
00:01:44,470 --> 00:01:50,590
‫Dữ liệu có thể thay đổi, nhưng nó cũng có thể có một số chức năng, chẳng hạn như xóa mục cuối cùng khỏi

24
00:01:50,590 --> 00:01:52,630
‫danh sách hoặc thêm vào cuối danh sách.

25
00:01:52,630 --> 00:01:55,180
‫Vì vậy, bạn có thể thấy các đối tượng rất, rất linh hoạt.

26
00:01:55,180 --> 00:01:58,660
‫Chúng có thể được sử dụng để đại diện cho vô số những thứ khác nhau.

27
00:01:58,660 --> 00:02:05,260
‫Và bạn sẽ nhận thấy rằng chức năng ở dưới cùng của các đối tượng này thực sự là các nút đó

28
00:02:05,260 --> 00:02:08,410
‫là gì hoặc rất nhiều nút trong Bản thiết kế.

29
00:02:08,410 --> 00:02:15,100
‫Vì vậy, họ bắt đầu có được một chút ánh xạ giữa các đối tượng và chức năng.

30
00:02:15,490 --> 00:02:15,760
‫Được chứ.

31
00:02:15,760 --> 00:02:17,950
‫Vì vậy, chúng tôi đã giới thiệu một loạt các khái niệm mới ở đó.

32
00:02:17,950 --> 00:02:19,810
‫Hãy tóm tắt lại một chút.

33
00:02:19,810 --> 00:02:24,550
‫Vì vậy, chúng tôi đã nói rằng các đối tượng là tập hợp dữ liệu và chức năng.

34
00:02:24,940 --> 00:02:28,930
‫Điều mà chúng ta có thể không nhận ra là các tác nhân thực sự là các đối tượng.

35
00:02:28,930 --> 00:02:31,930
‫Diễn viên là đối tượng có thể đi trong một mức độ.

36
00:02:31,930 --> 00:02:36,790
‫Và bạn có thể thấy điều này nếu bạn đi vào cấp độ của mình, bạn chọn khối lập phương, bạn có thể

37
00:02:36,790 --> 00:02:39,820
‫thấy rằng có cả đống trong ngăn chi tiết, một tải dữ liệu.

38
00:02:39,820 --> 00:02:45,370
‫Và như chúng ta sẽ thấy một chút, có rất nhiều chức năng ở dạng nút trong bản thiết kế.

39
00:02:46,090 --> 00:02:47,380
‫Sau đó là các thành phần.

40
00:02:47,380 --> 00:02:50,800
‫Bây giờ các thành phần chúng ta chưa đi vào chi tiết trước đây, nhưng chúng ở đây.

41
00:02:51,070 --> 00:02:57,040
‫Chúng là các đối tượng có thể đi vào một tác nhân, trong khi các tác nhân đi theo cấp độ, các thành phần đi vào chính một

42
00:02:57,040 --> 00:02:57,610
‫tác nhân.

43
00:02:57,610 --> 00:03:03,250
‫Vì vậy, với Cube được chọn, bạn có thể thấy ở trên cùng của ngăn chi tiết có thành phần

44
00:03:03,250 --> 00:03:04,180
‫lưới tĩnh này.

45
00:03:04,540 --> 00:03:11,080
‫Nếu bạn thực sự nhấp vào đó, bạn sẽ thấy rằng ngăn chi tiết có một tập hợp các chi tiết bị hạn chế.

46
00:03:11,080 --> 00:03:19,240
‫Nó cho bạn thấy không phải tất cả các thuộc tính có sẵn trên Cube Actor, mà chỉ tập hợp con các thuộc

47
00:03:19,240 --> 00:03:25,840
‫tính thuộc thành phần lưới tĩnh, về cơ bản là thành phần chịu trách nhiệm cho chúng ta

48
00:03:25,840 --> 00:03:28,090
‫biết cách vẽ một hình khối.

49
00:03:28,360 --> 00:03:34,330
‫Giờ đây, những đối tượng này thường có thể có nhiều dữ liệu hơn thế này, và điều đó có nghĩa là chúng có

50
00:03:34,330 --> 00:03:40,600
‫thể trở nên khá nặng để máy tính của bạn thao tác và chắc chắn nếu nó phải sao chép những đối tượng này xung quanh.

51
00:03:40,720 --> 00:03:47,080
‫Vì vậy, thay vì làm điều đó, chúng tôi sử dụng một cấu trúc thông minh được gọi là tham chiếu, về cơ bản

52
00:03:47,080 --> 00:03:53,860
‫chỉ là một địa chỉ hoặc tôi phải đi đâu để tìm đối tượng này trong bộ nhớ của máy tính để tôi không phải di

53
00:03:53,860 --> 00:03:55,690
‫chuyển đối tượng này mọi lúc?

54
00:03:55,690 --> 00:04:01,810
‫Chúng ta sẽ trình bày thêm một chút về cách điều này thực sự hoạt động trong bộ nhớ khi chúng ta sử dụng C ++, nhưng hiện tại,

55
00:04:01,810 --> 00:04:04,150
‫đủ để biết rằng đó chỉ là một địa chỉ.

56
00:04:04,720 --> 00:04:09,730
‫Vì vậy, những gì chúng ta có thể làm, chẳng hạn, hãy đi sâu vào Unreal.

57
00:04:09,730 --> 00:04:17,110
‫Nếu chúng tôi đang ở cấp độ chính của mình và chúng tôi muốn sử dụng một số chức năng trên khối lập phương của mình, thì những gì tôi có thể làm là

58
00:04:17,110 --> 00:04:22,300
‫tôi có thể chọn khối lập phương trong cảnh và sau đó tôi có thể chuyển đến bản thiết kế cấp của mình

59
00:04:22,300 --> 00:04:27,790
‫và nhấp chuột phải, và sau đó tôi có thể nhấp vào tạo tham chiếu đến Cube và điều này tạo ra một nút mới.

60
00:04:27,850 --> 00:04:29,230
‫Bây giờ điều đó đang làm gì?

61
00:04:29,230 --> 00:04:33,010
‫Về cơ bản, điều đó cho chúng ta biết đây là địa chỉ của Cube.

62
00:04:33,010 --> 00:04:35,980
‫Nếu bạn muốn làm điều gì đó với khối lập phương, đây là nơi bạn tìm thấy nó.

63
00:04:36,220 --> 00:04:41,260
‫Điều gì xảy ra trong Blueprint khi bạn chạy trò chơi là nó sẽ đi và tìm khối lập phương đó.

64
00:04:41,260 --> 00:04:47,110
‫Và sau đó, bạn có thể đặt câu hỏi hoặc sử dụng chức năng trên khối, chẳng hạn như nói, Này, thành phần lưới

65
00:04:47,110 --> 00:04:48,760
‫tĩnh của bạn sống ở đâu?

66
00:04:48,760 --> 00:04:51,280
‫Và anh ta đi, được rồi, các thành phần lưới tĩnh ở đó.

67
00:04:51,280 --> 00:04:56,530
‫Vì vậy, chúng tôi đi tìm thành phần lưới tĩnh và sau đó chúng tôi có thể đặt các câu hỏi về điều đó và nó có thể nói, Này,

68
00:04:56,530 --> 00:04:57,370
‫tên bạn là gì?

69
00:04:57,370 --> 00:04:58,600
‫Thành phần lưới tĩnh.

70
00:04:58,600 --> 00:05:01,540
‫Và thành phần lưới tĩnh có thể nói, Này, tên tôi là Bob.

71
00:05:01,540 --> 00:05:07,720
‫Và đó là cách chúng ta có thể sử dụng các tham chiếu này và chức năng đã sử dụng của nhiều đối tượng khác

72
00:05:07,720 --> 00:05:09,610
‫nhau để đến nơi chúng ta muốn.

73
00:05:09,610 --> 00:05:16,000
‫Bây giờ chúng ta đã nói rằng một tham chiếu là nơi để tìm một đối tượng và bây giờ một thứ khác đáng chỉ

74
00:05:16,000 --> 00:05:17,770
‫ra là một ghim dữ liệu.

75
00:05:17,770 --> 00:05:18,250
‫A là gì.

76
00:05:18,590 --> 00:05:21,320
‫Pinn Chà, tham chiếu khối lập phương này thực sự có một.

77
00:05:21,320 --> 00:05:26,650
‫Thứ tròn nhỏ màu xanh lam này ở phía bên tay phải của nó là một chốt dữ liệu.

78
00:05:26,660 --> 00:05:30,530
‫Chúng tôi đã thực sự nhìn thấy những thứ này trước đây trên các nút chuỗi in ở phía bên trái và chúng

79
00:05:30,530 --> 00:05:31,220
‫có màu tím.

80
00:05:31,370 --> 00:05:37,430
‫Và làm thế nào để chúng khác nhau như thế nào với các loại ghim khác mà chúng ta đã thấy, những ghim màu trắng này?

81
00:05:37,580 --> 00:05:42,680
‫Chốt dữ liệu là đầu vào hoặc đầu ra của dữ liệu cho một nút.

82
00:05:42,680 --> 00:05:47,840
‫Vì vậy, một nút, nếu nó ở bên trái, nó là đầu vào, nó là dữ liệu mà nút có thể làm việc.

83
00:05:47,870 --> 00:05:52,100
‫Nếu nó ở phía bên tay phải, đó là dữ liệu mà Node tạo ra.

84
00:05:52,100 --> 00:06:00,650
‫Vì vậy, trong trường hợp của khối lập phương, nút này tạo ra một tham chiếu đến tác nhân khối lập phương, sau đó là các chân thực thi.

85
00:06:00,650 --> 00:06:06,530
‫Đây thực sự là những gì các chân trắng đó thực sự được gọi để phân biệt chúng với các chân

86
00:06:06,530 --> 00:06:09,710
‫dữ liệu và chúng vẫn là thời điểm chạy nút.

87
00:06:09,710 --> 00:06:12,440
‫Vì vậy, các chân dữ liệu là thứ để chạy nút.

88
00:06:12,440 --> 00:06:14,840
‫Các chân thực thi là thời điểm chạy nó.

89
00:06:14,840 --> 00:06:21,470
‫Vì vậy, với tất cả thông tin đó, chúng ta hãy sử dụng một chút chức năng của các đối tượng này.

90
00:06:21,470 --> 00:06:23,360
‫Vì vậy, chúng tôi đã có tài liệu tham khảo về khối lập phương của chúng tôi.

91
00:06:23,360 --> 00:06:30,290
‫Nếu chúng tôi kéo chốt tham chiếu khối lập phương ra, bạn có thể sử dụng tất cả các chức năng của khối đó.

92
00:06:30,290 --> 00:06:36,290
‫Như tôi đã nói, chúng ta có một thành phần trên khối lập phương được gọi là thành phần lưới tĩnh và tôi muốn tiếp tục

93
00:06:36,290 --> 00:06:38,390
‫và nắm giữ một tham chiếu đến nó.

94
00:06:38,390 --> 00:06:47,030
‫Vì vậy, chúng tôi sẽ tìm kiếm thành phần lưới tĩnh và mục dưới cùng nhất đối với tôi là lấy thành phần lưới tĩnh.

95
00:06:47,030 --> 00:06:48,050
‫Tôi có thể nhấp vào đó.

96
00:06:48,050 --> 00:06:55,460
‫Chúng ta nhận được một nút mới với đầu vào là tham chiếu khối và đầu ra là tham chiếu đến thành phần lưới

97
00:06:55,460 --> 00:06:56,480
‫tĩnh của nó.

98
00:06:56,480 --> 00:07:01,700
‫Vì vậy, nếu chúng ta kéo ra khỏi điều đó, thì chúng ta có thể yêu cầu chức

99
00:07:01,700 --> 00:07:11,330
‫năng của các thành phần lưới tĩnh chẳng hạn như nhận tên hiển thị và điều đó giúp chúng ta nhận được đầu vào của tham chiếu thành phần lưới tĩnh và nó sử dụng

100
00:07:11,330 --> 00:07:19,460
‫chức năng của nó là lấy tên hiển thị và sau đó trả về một chuỗi hoặc một giá trị văn bản mà chúng ta có thể in bằng

101
00:07:19,460 --> 00:07:20,330
‫nút chuỗi in.

102
00:07:20,330 --> 00:07:26,270
‫Vì vậy, chúng tôi có thể kéo ra khỏi đó và nhập chuỗi in và sau đó chúng tôi có thể kết

103
00:07:26,270 --> 00:07:30,680
‫nối các nút thực thi để chạy sau hai chuỗi in khác khi bắt đầu phát.

104
00:07:31,010 --> 00:07:33,710
‫Bạn sẽ nhận thấy rằng một số nút này không có chốt thực thi.

105
00:07:33,710 --> 00:07:34,730
‫Điều đó có thể gây nhầm lẫn.

106
00:07:34,730 --> 00:07:35,870
‫Khi nào họ chạy?

107
00:07:35,870 --> 00:07:42,500
‫Chà, chúng được chạy bất cứ khi nào bản thiết kế cho rằng nó phù hợp, về cơ bản là bất cứ khi nào

108
00:07:42,500 --> 00:07:45,050
‫nó cần bởi một nút có chốt thực thi.

109
00:07:45,050 --> 00:07:50,090
‫Vì vậy, nếu chúng ta tiếp tục và nhấn chơi, bạn có thể thấy rằng nó bật lên với một thành phần lưới tĩnh khối hình khối bằng không hoặc

110
00:07:50,090 --> 00:07:51,170
‫một cái gì đó tương tự.

111
00:07:51,170 --> 00:07:52,400
‫Đó là một cây lập trình bit.

112
00:07:52,430 --> 00:07:56,210
‫Nó không phải, nó không phải Bob Nó tham gia nhiều hơn thế một chút.

113
00:07:56,210 --> 00:08:02,240
‫Nhưng bạn có thể thấy về cơ bản chúng tôi đã mã hóa chuỗi câu hỏi mà tôi đã có trên trang trình bày của mình.

114
00:08:02,390 --> 00:08:09,200
‫Vì vậy, tôi muốn thách thức bạn tiếp tục và lấy khối lượng của thành phần lưới tĩnh của chúng tôi.

115
00:08:09,200 --> 00:08:11,270
‫Chúng tôi đã cấu hình nó trong quá khứ.

116
00:08:11,270 --> 00:08:15,950
‫Nếu bạn đi vào cấp độ và nhìn vào ngăn chi tiết, bạn có thể thấy rằng một trong những thuộc tính vật

117
00:08:15,950 --> 00:08:20,540
‫lý là khối lượng và chúng tôi đã định cấu hình nó như một phần dữ liệu trên thành phần lưới tĩnh.

118
00:08:20,660 --> 00:08:26,540
‫Chà, nếu bạn xóa nút get display name và kéo ra khỏi thành phần static mesh, bạn sẽ có thể

119
00:08:26,540 --> 00:08:33,470
‫tìm kiếm get mass và điều đó sẽ giúp bạn có được phần dữ liệu trên thành phần static mesh và xem liệu bạn

120
00:08:33,470 --> 00:08:39,920
‫có thể in giá trị đó bằng cách sử dụng video tạm dừng nút chuỗi in của chúng tôi và bắt đầu.

121
00:08:43,330 --> 00:08:43,930
‫Được chứ.

122
00:08:43,930 --> 00:08:44,800
‫Chào mừng trở lại.

123
00:08:44,830 --> 00:08:51,640
‫Vì vậy, nếu chúng ta quay lại bản thiết kế, chỉ cần xóa tên hiển thị của chúng ta, kéo thành phần lưới

124
00:08:51,640 --> 00:08:53,680
‫tĩnh và tìm kiếm khối lượng.

125
00:08:53,890 --> 00:08:55,990
‫Sau đó, chúng ta có thể kéo vào nút đó.

126
00:08:55,990 --> 00:09:00,640
‫Chúng tôi có một giá trị trả lại ở đây và đó sẽ là giá trị khối lượng của chúng tôi.

127
00:09:00,640 --> 00:09:05,350
‫Bạn có thể xem nếu bạn di chuột qua nó, nó cho biết sẽ trả về khối lượng của thành phần này tính bằng kilogam.

128
00:09:05,350 --> 00:09:08,470
‫Và nhân tiện, giá trị trả về chỉ có nghĩa là dữ liệu đầu ra.

129
00:09:08,530 --> 00:09:14,590
‫Và sau đó chúng ta có thể kéo nút đó vào chuỗi in của chúng tôi cho chuỗi in.

130
00:09:14,590 --> 00:09:17,800
‫Và bạn thấy nó tạo ra một nút chuyển đổi nhỏ, không sao cả.

131
00:09:17,800 --> 00:09:22,900
‫Nó chuyển đổi từ bất kỳ giá trị này thành thứ gì đó mà chuỗi in sẽ chấp nhận.

132
00:09:22,900 --> 00:09:29,050
‫Chúng tôi có thể tiếp tục và nhấn chơi và bạn thấy chúng tôi nhận được giá trị 1000, mà chúng tôi biết là khối lượng chúng tôi đã định cấu hình hoặc

133
00:09:29,050 --> 00:09:30,970
‫bất cứ điều gì bạn thực sự định cấu hình.

134
00:09:30,970 --> 00:09:34,810
‫Bạn có thể thay đổi điều đó và thấy rằng giá trị này cũng sẽ thay đổi.

135
00:09:34,810 --> 00:09:36,220
‫Vì vậy, đó là nó cho bài giảng này.

136
00:09:36,220 --> 00:09:43,090
‫Chúng tôi đã tìm hiểu về các đối tượng và các tham chiếu của chúng cũng như cách sử dụng các nút chức năng trong bản thiết kế.

