﻿1
00:00:04,270 --> 00:00:05,200
‫Xin chào và chào mừng.

2
00:00:05,200 --> 00:00:10,060
‫Bài giảng này chúng ta sẽ hiển thị một màn hình rời và chúng ta sẽ thực

3
00:00:10,060 --> 00:00:13,870
‫hiện hoàn toàn từ bên trong C ++ để tạo ra widget đó.

4
00:00:13,870 --> 00:00:15,490
‫Hãy đi sâu vào và xem nó được thực hiện như thế nào.

5
00:00:16,150 --> 00:00:21,640
‫Vì vậy, chúng tôi muốn hiển thị một số giao diện người dùng khi người chơi của chúng tôi chết để cho họ biết điều gì đang xảy ra mà họ đã

6
00:00:21,640 --> 00:00:23,260
‫mất và cấp độ sắp được thiết lập lại.

7
00:00:23,260 --> 00:00:25,240
‫Vì vậy, không có gì ngạc nhiên đối với họ.

8
00:00:25,240 --> 00:00:31,990
‫Vì vậy, chúng ta sẽ cần tạo một số giao diện người dùng, một tiện ích giao diện người dùng, một UMG, tiện ích đồ họa chuyển động không thực.

9
00:00:32,350 --> 00:00:35,830
‫Vì vậy, trước hết hãy làm điều đó bằng cách tạo một thư mục để lưu trữ giao diện người dùng.

10
00:00:35,830 --> 00:00:41,470
‫Và tôi đã biết chúng ta sẽ có hai mục giao diện người dùng, vì vậy tôi nghĩ tôi sẽ có một thư mục giao diện người dùng ở

11
00:00:41,470 --> 00:00:47,200
‫đây và sau đó chúng ta hãy vào đây và nhấp chuột phải và sau đó đi, bạn nên làm điều này trước đây, nhưng hãy để tôi. Tôi sẽ hướng

12
00:00:47,200 --> 00:00:47,800
‫dẫn bạn qua.

13
00:00:48,070 --> 00:00:52,600
‫Chúng ta sẽ đi đến phần giao diện người dùng, sau đó chọn bản thiết kế tiện ích và tiền

14
00:00:52,600 --> 00:00:57,130
‫tố chúng ta sẽ sử dụng là dấu gạch dưới WP và sau đó nó sẽ bị mất màn hình.

15
00:00:57,430 --> 00:01:02,770
‫Bây giờ bạn có thể thực hiện một số lớp cơ sở cho loại nội dung này trong C ++, nhưng chúng tôi sẽ không đề cập đến vấn đề

16
00:01:02,770 --> 00:01:03,520
‫này trong phần này.

17
00:01:03,520 --> 00:01:07,480
‫Nói chung là không cần thiết để làm điều đó và thực hiện công việc này trong Blueprint dễ dàng hơn nhiều.

18
00:01:07,480 --> 00:01:13,000
‫Không có nhiều lợi thế khi làm điều đó trong C ++ trừ khi bạn là một giao diện người dùng sẽ trở nên cực kỳ phức tạp và

19
00:01:13,000 --> 00:01:15,850
‫bạn muốn đưa một số logic giao diện người dùng đó vào C ++.

20
00:01:15,850 --> 00:01:20,560
‫Trong trường hợp đó, đây không phải là trường hợp, vì vậy chúng ta có thể tiếp tục và sử dụng các bản thiết kế.

21
00:01:20,560 --> 00:01:22,510
‫Xét cho cùng, giao diện người dùng là một thứ trực quan.

22
00:01:22,510 --> 00:01:28,870
‫Sẽ rất hợp lý khi sử dụng một công cụ trực quan để kết hợp chúng lại với nhau ngay bây giờ vì bạn đã biết về cách tạo

23
00:01:28,870 --> 00:01:29,500
‫các widget.

24
00:01:29,500 --> 00:01:32,860
‫Sau đó, tôi sẽ đưa ra điều này như một thách thức với bạn để thiết lập một màn hình thua.

25
00:01:32,860 --> 00:01:37,180
‫Chúng tôi muốn thêm một số văn bản giải thích rằng người chơi đã thua và chúng tôi sắp khởi động lại.

26
00:01:37,240 --> 00:01:42,040
‫Muốn đặt văn bản đó ở vị trí trung tâm, làm cho nó hiển thị, đảm bảo rằng nó hiển thị trong trò chơi.

27
00:01:42,040 --> 00:01:45,610
‫Tuy nhiên, như tôi đã nói, hãy giải thích rằng sắp tới sẽ có một cuộc khởi động lại.

28
00:01:45,730 --> 00:01:50,500
‫Và sau khi bạn đã thử thách thức này, chúng ta sẽ xem xét cách chúng ta có thể tạo ra điều này từ C ++.

29
00:01:50,500 --> 00:01:53,020
‫Có thể bạn đã thấy cách thực hiện điều này trong Blueprint trước đây.

30
00:01:53,020 --> 00:01:55,690
‫Chúng ta sẽ xem cách chúng ta có thể làm điều đó từ bên trong C ++.

31
00:01:55,690 --> 00:01:57,070
‫Vì vậy, hãy tạm dừng video và tiếp tục.

32
00:01:57,160 --> 00:01:58,420
‫Được rồi, chào mừng bạn trở lại.

33
00:01:58,600 --> 00:02:03,340
‫Vì vậy, tôi sẽ đi và tạo, trước hết, một chút văn bản.

34
00:02:03,340 --> 00:02:09,400
‫Vì vậy, tôi muốn tìm kiếm trong bảng màu bên trái, tìm kiếm mục văn bản và đưa mục đó vào.

35
00:02:10,090 --> 00:02:17,270
‫Tôi sẽ thay đổi nó để bạn mất văn bản đối thoại khá đơn giản và không tưởng tượng ở đây và chúng tôi sẽ thay đổi

36
00:02:17,290 --> 00:02:22,300
‫màu sắc và độ mờ và hoặc giao diện thành màu đỏ để làm rõ ràng rằng họ

37
00:02:22,300 --> 00:02:22,900
‫đã mất.

38
00:02:22,900 --> 00:02:28,090
‫Và chỉ cần xoa nó thêm một chút nữa và tôi sẽ mở rộng phông chữ của chúng tôi và thay đổi kích thước lớn hơn.

39
00:02:28,090 --> 00:02:35,320
‫Và sau đó tôi sẽ mở rộng hộp xung quanh văn bản của chúng ta và tôi sẽ căn giữa văn bản của chúng ta.

40
00:02:35,320 --> 00:02:38,080
‫Vì vậy, để giải thích, tôi sẽ căn giữa một dòng ở văn bản.

41
00:02:38,080 --> 00:02:44,400
‫Và nếu tôi mở rộng ra, hãy xem liệu có nơi nào khác mà tôi có thể căn giữa trong ghi chú ở đó

42
00:02:44,440 --> 00:02:44,890
‫không.

43
00:02:44,890 --> 00:02:52,720
‫Vì vậy, tôi sẽ chỉ làm cho kích thước hộp gần như phù hợp và sau đó tôi sẽ đi đến căn chỉnh của tôi và các

44
00:02:52,720 --> 00:02:55,150
‫neo của tôi và những thứ tương tự.

45
00:02:55,450 --> 00:03:02,080
‫Và tôi sẽ chọn menu thả xuống cho neo và chọn giá trị đặt trước cho neo vào giữa, bởi vì đó là

46
00:03:02,080 --> 00:03:03,370
‫điều tôi muốn làm.

47
00:03:03,790 --> 00:03:12,430
‫Tôi muốn đặt căn chỉnh của mình thành 0. 5 và 0. 5, về cơ bản có nghĩa là chúng ta đang căn chỉnh với tâm

48
00:03:12,430 --> 00:03:14,530
‫của đối tượng hơn là góc trên cùng bên trái.

49
00:03:14,770 --> 00:03:16,690
‫Tôi sẽ làm lại mỏ neo.

50
00:03:16,690 --> 00:03:16,930
‫Được chứ.

51
00:03:16,930 --> 00:03:19,060
‫Điều đó không phải là rất hữu ích.

52
00:03:19,390 --> 00:03:24,520
‫Và sau đó là vị trí X tại sao tôi nghĩ nếu tôi chỉ đặt vị trí bên cạnh số 0 và số không bởi

53
00:03:24,520 --> 00:03:29,260
‫vì tôi đã đặt neo của mình như vậy, thì vị trí mất của tôi sẽ ở đâu đó ở giữa và tôi sẽ

54
00:03:29,260 --> 00:03:31,300
‫di chuyển nó tăng nhẹ hơn bao giờ hết.

55
00:03:31,300 --> 00:03:38,200
‫Giữ vị trí X của tôi ở vị trí 0, vị trí Y -50, bởi vì tôi muốn thêm vào một số văn bản phụ nói rằng trên thực tế, có

56
00:03:38,200 --> 00:03:43,090
‫thể dễ dàng hơn chỉ cần sao chép văn bản khác ở đây vì nó đã được thiết lập tất cả những

57
00:03:43,090 --> 00:03:43,930
‫gì tôi cần.

58
00:03:43,930 --> 00:03:46,060
‫Tôi chỉ muốn làm cho nó nhỏ hơn một chút.

59
00:03:46,060 --> 00:03:54,160
‫Định vị lại vị trí 0 và tôi sẽ nói rằng cấp độ sẽ khởi động lại sau 5 giây và tôi sẽ làm cho kích thước phông chữ đó

60
00:03:54,160 --> 00:03:55,270
‫nhỏ hơn nhiều.

61
00:03:55,270 --> 00:04:00,460
‫Vì vậy, nó ít ở mặt của bạn hơn, một cái gì đó như thế này, và sau đó chỉ cần di

62
00:04:00,460 --> 00:04:05,950
‫chuyển nó xuống một chút, một chút và tiếp tục đặt lại vị trí X đó về 0 và 100% hài lòng với vị trí.

63
00:04:05,950 --> 00:04:08,560
‫Tôi sẽ nâng nó lên một chút nữa.

64
00:04:08,560 --> 00:04:14,050
‫Nếu tôi giữ phím shift, thì tôi có thể khóa nó vào trục mà tôi đang di chuyển sao cho nó ít nhiều ở giữa

65
00:04:14,050 --> 00:04:14,560
‫như vậy.

66
00:04:14,590 --> 00:04:15,640
‫Được rồi, vì vậy tôi hài lòng với điều đó.

67
00:04:15,640 --> 00:04:18,940
‫Bây giờ chúng ta cần phải tiếp tục và thử và sinh ra thứ đó.

68
00:04:18,970 --> 00:04:19,870
‫Chung ta se lam chuyện đo như thê nao?

69
00:04:19,870 --> 00:04:25,210
‫Trước hết, chúng ta sẽ cần biết lớp widget nào chúng ta sẽ tạo ra và chúng ta cần biết chúng

70
00:04:25,210 --> 00:04:27,520
‫ta sẽ làm điều đó từ đâu bây giờ.

71
00:04:27,520 --> 00:04:31,870
‫Như tôi đã nói, tôi nghĩ rằng một nơi tốt để làm điều này là từ chính bộ điều khiển trình phát.

72
00:04:32,200 --> 00:04:37,660
‫Và chúng ta sẽ cần biết trong bộ điều khiển người chơi có lớp nào, lớp tiện ích nào mà chúng ta đang cố gắng tạo

73
00:04:37,660 --> 00:04:38,030
‫ra?

74
00:04:38,030 --> 00:04:42,670
‫Bây giờ, tôi biết đó là một lớp bản thiết kế, nhưng chúng ta vẫn cần nó là một lớp mà chúng ta đang cố gắng tạo ra.

75
00:04:43,000 --> 00:04:48,880
‫Vì vậy, cách chúng tôi sẽ làm điều này là tạo một thuộc tính mới ở đây sẽ được chỉnh sửa ở

76
00:04:48,880 --> 00:04:55,990
‫bất kỳ đâu và chúng tôi sẽ muốn đây là một lớp con của vì đây luôn là một cách tốt để đảm bảo rằng chúng

77
00:04:55,990 --> 00:04:57,250
‫ta có một lớp.

78
00:04:57,250 --> 00:05:04,270
‫Về cơ bản, bạn có thể sử dụng loại lớp của mình nếu bạn muốn, nhưng điều đó không hạn chế loại lớp chúng ta có

79
00:05:04,270 --> 00:05:05,350
‫thể sử dụng.

80
00:05:05,350 --> 00:05:09,790
‫Và ở đây chúng tôi muốn hạn chế việc bạn chỉ sử dụng widget.

81
00:05:09,790 --> 00:05:17,390
‫Nếu bạn xem lại bản thiết kế của mình, bạn có thể xem liệu chúng tôi có đi đến một nơi nào đó trong đây hay không, bạn có thể tìm thấy ở đó.

82
00:05:17,410 --> 00:05:22,930
‫Lớp cha đang sử dụng một widget mà chúng tôi biết khi bạn đặt tiền tố vào nó sẽ trở thành một lớp bạn sử dụng một widget.

83
00:05:23,050 --> 00:05:26,680
‫Vì vậy, đây là một lớp con của.

84
00:05:27,490 --> 00:05:34,360
‫Và sau đó chúng tôi sử dụng dấu ngoặc nhọn của chúng tôi sẽ là bạn sử dụng một tiện ích và tôi thực sự sẽ tuyên bố

85
00:05:34,360 --> 00:05:40,150
‫rằng một ở đây thay vì làm bất kỳ bao gồm vì vậy lớp bạn sử dụng một tiện ích và sau đó

86
00:05:40,150 --> 00:05:46,630
‫chúng ta sẽ gọi điều này là mất lớp màn hình chỉ để giữ cho nó thực sự rõ ràng những gì đang xảy ra ở đó.

87
00:05:47,020 --> 00:05:54,400
‫Bây giờ tôi sẽ tiếp tục và biên dịch ở giai đoạn này trong khi chúng tôi làm những việc tiếp theo vì việc biên dịch khi thay đổi tệp tiêu

88
00:05:54,400 --> 00:05:56,710
‫đề sẽ mất nhiều thời gian hơn một chút.

89
00:05:56,710 --> 00:06:02,860
‫Bây giờ thực sự quá trình biên dịch sẽ không thành công ở giai đoạn này vì chúng tôi chưa đưa vào mô-đun UMG.

90
00:06:02,860 --> 00:06:03,820
‫Chúng tôi không biết làm thế nào để làm điều đó.

91
00:06:03,820 --> 00:06:09,010
‫Đừng lo lắng về quá trình biên dịch ở giai đoạn này và vào khoảng 9 phút trong video, chúng tôi sẽ

92
00:06:09,010 --> 00:06:09,760
‫sửa lỗi này.

93
00:06:10,060 --> 00:06:14,560
‫Bây giờ đã kết thúc trong C ++, những gì chúng ta sẽ làm là thực sự sinh ra widget đó.

94
00:06:14,560 --> 00:06:17,290
‫Vì vậy, chúng tôi sẽ muốn làm điều đó thậm chí có thể trước thời điểm.

95
00:06:17,290 --> 00:06:20,320
‫Nó không thực sự quan trọng vì bộ đếm thời gian không chờ đợi.

96
00:06:20,320 --> 00:06:24,820
‫Nó chỉ đặt thời gian và sau đó chuyển thẳng sang dòng mã tiếp theo, vì vậy chúng tôi sẽ không phải đợi 5 giây nếu chúng tôi làm điều

97
00:06:24,820 --> 00:06:29,110
‫này ngay lập tức, nếu chúng tôi tạo ra giao diện người dùng ngay sau đó, không thực sự quan trọng chúng tôi thực hiện điều này theo

98
00:06:29,110 --> 00:06:29,860
‫thứ tự nào Trong.

99
00:06:30,220 --> 00:06:36,520
‫Vì vậy, những gì chúng tôi sẽ muốn làm là sử dụng một chức năng có tên là tạo tiện ích con hiện không khả dụng.

100
00:06:36,520 --> 00:06:38,980
‫Vì vậy, chúng tôi cần phải bao gồm một cái gì đó trước tiên.

101
00:06:38,980 --> 00:06:45,850
‫Và những gì chúng ta sẽ bao gồm là tiện ích người dùng dấu gạch chéo chi tiết chuyển tiếp và đó là lớp

102
00:06:45,850 --> 00:06:50,260
‫mà chúng ta cần truy cập vào chức năng tạo tiện ích con này.

103
00:06:50,740 --> 00:06:53,620
‫Và về cơ bản chúng ta sẽ nói tạo widget.

104
00:06:53,620 --> 00:06:58,270
‫Thực ra, nó cần phải được, hãy xem những gì chúng ta cần cung cấp cho nó.

105
00:06:58,270 --> 00:07:00,910
‫Tôi sẽ đến F 12 để thực hiện nó.

106
00:07:00,910 --> 00:07:07,330
‫Bạn có thể thấy nó hơi phức tạp để xem, nhưng chúng tôi có một tham số mẫu ở đây, về cơ bản theo mặc định, bạn sử

107
00:07:07,330 --> 00:07:11,080
‫dụng một widget, vì vậy chúng tôi có thể không phải cung cấp thông số đó.

108
00:07:11,590 --> 00:07:19,390
‫Và sau đó là đối tượng sở hữu và lớp mà chúng ta cần tạo và sau đó là tên tiện ích con mà chúng ta không nhất thiết phải

109
00:07:19,390 --> 00:07:23,830
‫cung cấp và sau đó nó trả về dưới dạng con trỏ đến tiện ích con.

110
00:07:24,040 --> 00:07:29,200
‫Vì vậy, những gì tôi thực sự sẽ làm là ở đây, chúng tôi sẽ cung cấp cho nó một đối tượng chủ sở hữu.

111
00:07:29,200 --> 00:07:31,560
‫Giờ đây, chỉ những thứ nhất định mới có thể sở hữu tiện ích này.

112
00:07:31,580 --> 00:07:36,310
‫Một trong những thứ đó thực sự là bộ điều khiển trình phát, vì vậy chúng ta có thể vượt qua điều này.

113
00:07:36,310 --> 00:07:40,750
‫Sau đó, điều tiếp theo là chúng tôi muốn chuyển vào lớp con RT của bạn sử dụng một widget.

114
00:07:40,750 --> 00:07:46,540
‫Chà, may mắn thay, chúng tôi đã định cấu hình nó trong tệp tiêu đề nên chúng tôi có thể tiếp tục và chuyển nó vào

115
00:07:46,540 --> 00:07:52,150
‫và tôi sẽ ngăn việc thụt lề của tôi cố gắng sửa chính nó trong khi tôi chưa đặt dấu chấm phẩy ở cuối dòng

116
00:07:52,150 --> 00:07:55,420
‫và sau đó chúng ta hãy đi và xem xét những gì khác.

117
00:07:55,420 --> 00:07:56,050
‫Vâng, đó là nó.

118
00:07:56,050 --> 00:07:58,540
‫Nó chỉ trả về widget tại thời điểm này.

119
00:07:58,540 --> 00:08:06,910
‫Vì vậy, những gì chúng tôi có thể làm là có một con trỏ cho bạn, sử dụng một ngôi sao tiện ích và đây sẽ là màn hình mất tích của chúng tôi.

120
00:08:06,910 --> 00:08:09,310
‫Vì vậy, chúng tôi đã có lớp màn hình mất.

121
00:08:09,310 --> 00:08:13,000
‫Sau khi chúng tôi tạo tiện ích, nó sẽ trở thành một màn hình rời thực sự.

122
00:08:13,000 --> 00:08:16,060
‫Điều tiếp theo chúng ta cần làm là hiển thị giao diện người dùng này.

123
00:08:16,060 --> 00:08:20,020
‫Chúng tôi làm điều đó bằng cách thêm nó vào khung nhìn theo cách nói không thực.

124
00:08:20,020 --> 00:08:25,510
‫Nhưng trước tiên, vì chúng tôi thêm vào khung nhìn bằng cách gọi một hàm trên màn hình xanh, chúng tôi cần đảm bảo rằng

125
00:08:25,510 --> 00:08:27,100
‫nó không phải là con trỏ null.

126
00:08:27,100 --> 00:08:32,410
‫Vì vậy, nếu mất màn hình không bằng con trỏ null, tại sao nó có thể là con trỏ null?

127
00:08:32,410 --> 00:08:36,760
‫Nhân tiện, một thử thách nhỏ cho bạn xem liệu bạn có thể tìm ra lý do tại sao chúng ta có thể kết thúc với một con trỏ rỗng ở

128
00:08:36,760 --> 00:08:37,210
‫đây hay không.

129
00:08:37,600 --> 00:08:41,200
‫Một lý do là có thể chúng ta đã quên thiết lập lớp màn hình mất.

130
00:08:41,200 --> 00:08:46,180
‫Và nếu trường hợp đó xảy ra và chúng ta không có tập hợp lớp màn hình xanh hợp lệ, thì việc tạo widget sẽ

131
00:08:46,180 --> 00:08:47,860
‫trả về con trỏ null cho chúng ta.

132
00:08:47,860 --> 00:08:54,340
‫Và chúng tôi không muốn điều đó xảy ra và chúng tôi không muốn chắc chắn gọi một hàm trên con trỏ null.

133
00:08:54,340 --> 00:08:56,500
‫Vì vậy, chúng tôi sẽ làm mất mũi tên màn hình.

134
00:08:56,740 --> 00:09:01,270
‫Và sau đó những gì chúng tôi muốn ở đây là một chức năng được gọi là thêm vào khung nhìn.

135
00:09:02,060 --> 00:09:07,820
‫Việc này đơn giản chỉ cần thực hiện điều đó, hãy thêm nó vào màn hình để chúng ta có thể nhìn thấy màn hình lỏng lẻo đó.

136
00:09:08,090 --> 00:09:14,780
‫Bây giờ, tôi cũng sẽ tiếp tục và biên dịch nó, chuyển sang một cuộn và mở bản thiết kế của

137
00:09:14,780 --> 00:09:17,330
‫chúng tôi cho bộ điều khiển trình phát.

138
00:09:17,330 --> 00:09:19,100
‫Vì vậy, bộ điều khiển người chơi game bắn súng ở đây.

139
00:09:19,550 --> 00:09:25,520
‫Và chúng ta sẽ có thể thấy ở đâu đó trong đây một biến vẫn chưa xuất hiện.

140
00:09:25,640 --> 00:09:27,110
‫Có lẽ tôi đã có một số lỗi xây dựng.

141
00:09:27,110 --> 00:09:28,850
‫Hãy xem nhật ký tin nhắn.

142
00:09:29,180 --> 00:09:36,140
‫Có, chúng ta có thể thấy một vài lỗi xây dựng ở đây, cụ thể là những lỗi kỳ lạ về việc thiếu các ký hiệu bên ngoài.

143
00:09:36,140 --> 00:09:41,780
‫Nếu chúng tôi có chút gì đó nói về bạn, hãy sử dụng một tiện ích không khả dụng ngay bây

144
00:09:41,780 --> 00:09:49,520
‫giờ nếu bạn quay lại với một vài bài giảng trước đây, chúng tôi biết rằng những loại lỗi này có xu hướng xảy ra khi chúng tôi

145
00:09:49,520 --> 00:09:50,840
‫thiếu phụ thuộc mô-đun.

146
00:09:50,840 --> 00:09:57,770
‫Vì vậy, nếu chúng ta mở CSS dot build dot CSS đơn giản của game bắn súng và tôi sẽ đóng thiết bị đầu cuối để có thêm

147
00:09:57,770 --> 00:10:04,370
‫một chút không gian, thì bạn có thể thấy những gì chúng ta cần làm là thêm một phụ thuộc công khai mới ở đây.

148
00:10:04,580 --> 00:10:12,140
‫Vì vậy, cuối cùng, chúng tôi sẽ thêm một phụ thuộc công khai cho UMG, vì vậy một dấu phẩy mới.

149
00:10:12,140 --> 00:10:20,600
‫Và sau đó trong dấu ngoặc kép, chúng tôi sẽ đặt UMG và điều đó về cơ bản cho phép chúng tôi sử dụng tiện ích bao gồm mà chúng tôi đã có

150
00:10:20,600 --> 00:10:24,380
‫ở đây, tiện ích người dùng gạch chéo về phía trước bản thiết kế.

151
00:10:24,680 --> 00:10:28,700
‫Tất cả những thứ đó nằm trong một mô-đun riêng biệt với những thứ tiêu chuẩn được bao gồm.

152
00:10:28,700 --> 00:10:32,690
‫Vì vậy, chúng tôi cần phải đi và nói với Unreal rằng chúng tôi muốn sử dụng mô-đun đó trong C ++ của chúng tôi.

153
00:10:32,690 --> 00:10:34,640
‫Hãy tiếp tục và xây dựng và xem nó có hoạt động không.

154
00:10:34,640 --> 00:10:36,410
‫Bây giờ điều đó có vẻ thành công.

155
00:10:36,410 --> 00:10:42,500
‫Nếu chúng tôi truy cập trình chỉnh sửa và quay lại trình điều khiển chơi game bắn súng của mình, một số lý do tôi không nghĩ rằng nó đã

156
00:10:42,500 --> 00:10:46,340
‫được tải lại đúng cách, vì vậy tôi phải nhấn biên dịch tại đây trong trình chỉnh sửa.

157
00:10:46,340 --> 00:10:48,430
‫Bây giờ chúng ta quay trở lại bộ điều khiển người chơi game bắn súng.

158
00:10:48,430 --> 00:10:50,630
‫Cuối cùng, bạn có thể thấy rằng mất lớp màn hình.

159
00:10:50,850 --> 00:10:57,830
‫Chúng ta có thể nhấp vào menu thả xuống ở đó và đi và chọn AWP, gạch dưới màn hình mất ở đó, biên dịch,

160
00:10:57,830 --> 00:11:00,140
‫lưu và hãy đi và tự giết mình.

161
00:11:00,140 --> 00:11:01,900
‫Chúng tôi sẽ bị bắn vào một vài lần.

162
00:11:01,910 --> 00:11:03,380
‫Bang Bang.

163
00:11:03,380 --> 00:11:04,250
‫Và ở đó bạn đi.

164
00:11:04,250 --> 00:11:09,320
‫Màn hình Lou của chúng tôi đã xuất hiện cho chúng tôi biết điều gì đang xảy ra, mức đó sắp khởi động lại sau 5 giây.

165
00:11:09,320 --> 00:11:10,220
‫Và nó đã làm.

166
00:11:10,220 --> 00:11:11,270
‫Nó có.

167
00:11:11,270 --> 00:11:20,030
‫Vì vậy, bây giờ bạn không chỉ biết cách bạn có thể tạo đồ họa UMG mà còn biết cách bạn có thể tạo ra những thứ này từ C

168
00:11:20,030 --> 00:11:22,070
‫++ chứ không phải từ Blueprint.

169
00:11:22,070 --> 00:11:26,960
‫Bài giảng tiếp theo, chúng ta sẽ có cái nhìn ít bi quan hơn về mọi thứ và thử xem liệu chúng ta

170
00:11:26,960 --> 00:11:30,680
‫có thể tạo ra một số điều kiện chiến thắng cho trò chơi này hay không.

171
00:11:30,680 --> 00:11:31,550
‫Tôi sẽ gặp bạn ở đó.

