﻿1
00:00:04,370 --> 00:00:05,420
‫สวัสดีและยินดีต้อนรับ.

2
00:00:05,420 --> 00:00:11,990
‫ในการบรรยายนี้ เราจะเรียนรู้วิธีสร้างคลาสที่ช่วยให้เราสามารถแบ่งปันการกำหนดค่าและการทำงานระหว่างหลาย

3
00:00:11,990 --> 00:00:16,520
‫ๆ วัตถุในฉากของเรา

4
00:00:16,520 --> 00:00:18,410
‫มาดูกันว่ามันทำงานอย่างไร

5
00:00:19,040 --> 00:00:27,460
‫ตอนนี้พลังที่แท้จริงของการเขียนโปรแกรมด้วยอ็อบเจ็กต์มาถึงเมื่อเราเริ่มใช้คลาสและอินสแตนซ์

6
00:00:27,470 --> 00:00:29,150
‫แล้วคลาสอะไรล่ะ?

7
00:00:29,150 --> 00:00:36,680
‫มันเหมือนกับเทมเพลตหรือพิมพ์เขียวในความหมายปกติของคำนั้นสำหรับออบเจกต์

8
00:00:36,680 --> 00:00:43,670
‫การผจญภัยที่นี่ เราเรียกสิ่งนี้ว่าคลาสนักผจญภัย มันมีข้อมูลเริ่มต้นและมีฟังก์ชันการทำงานบางอย่าง

9
00:00:43,670 --> 00:00:50,180
‫แต่เราสามารถไปและสร้างตัวอย่างของคลาสนี้ได้ เช่น การผจญภัยหมายเลขหนึ่ง

10
00:00:50,420 --> 00:00:57,860
‫ตัวอย่างเช่น เราสามารถโทรหา Bob และเขามีสำเนาของตัวเองของข้อมูลนั้นจากคลาส Adventurer

11
00:00:57,860 --> 00:01:03,410
‫นี่คือวัตถุจริงและคลาสเป็นสิ่งที่เราทำวัตถุจาก

12
00:01:03,830 --> 00:01:10,610
‫จากนั้นคุณสามารถให้นักผจญภัยไปยังอินสแตนซ์ที่สองของคลาสเดียวกัน และพวกเขาใช้ฟังก์ชันร่วมกัน สังเกตว่าพวกเขาใช้ฟังก์ชันเดียวกันทั้งหมด

13
00:01:10,610 --> 00:01:15,470
‫และพวกเขาสามารถมีเวอร์ชันข้อมูลของตนเองได้

14
00:01:15,470 --> 00:01:19,220
‫คุณจะเห็นว่านักผจญภัยสองคนเปลี่ยนค่าประสบการณ์ของเขา

15
00:01:19,460 --> 00:01:21,770
‫ตอนนี้ประโยชน์ของสิ่งนี้เป็นสองเท่า

16
00:01:21,770 --> 00:01:27,710
‫หนึ่งคือ เรากำลังแบ่งปันการทำงานทั้งหมดนั้นระหว่างออบเจ็กต์ต่างๆ เหล่านี้ และประการที่สองคือ

17
00:01:27,710 --> 00:01:33,050
‫ข้อมูลใดๆ ที่เราไม่ได้เปลี่ยนแปลง เช่น ประสบการณ์ 500 หรือระดับที่หนึ่ง

18
00:01:33,050 --> 00:01:39,560
‫ถ้าฉันเปลี่ยนระดับหนึ่งเป็นระดับสอง มันจะเปลี่ยนในทุกอินสแตนซ์ของชั้นเรียนด้วย

19
00:01:39,800 --> 00:01:44,990
‫แล้วเราจะไปสร้างสิ่งนี้ใน Unreal ได้อย่างไร?

20
00:01:45,410 --> 00:01:54,620
‫สิ่งแรกที่ฉันต้องการทำคือนำบางอย่างที่จะทำหน้าที่เป็นโพรเจกไทล์ของเราเข้ามา เพื่อให้โพรเจกไทล์สามารถเป็นออบเจกต์และคลาสแรกของเราที่เราสร้างขึ้น

21
00:01:54,950 --> 00:02:03,650
‫ดังนั้นฉันจะไปที่ปุ่มป้อนโครงการอย่างรวดเร็วในแถบเครื่องมือ ลงไปที่รูปร่างและเลือกทรงกลมแล้วลากทรงกลมเข้าไปในฉากของฉัน

22
00:02:03,650 --> 00:02:10,160
‫ฉันจะลากมันขึ้นอีกหน่อย และฉันจะลองขยายมัน ทำให้มันเล็กลงอีกหน่อยโดยใช้เครื่องมือมาตราส่วน

23
00:02:10,160 --> 00:02:20,030
‫และถ้าฉันคลิกที่นี่ตรงกลางของ White Bit ฉันสามารถปรับขนาดทั้งหมดให้เท่ากันได้จนกว่าฉันจะได้ขนาดที่พอเหมาะพอดีสำหรับโพรเจกไทล์ของฉัน

24
00:02:20,330 --> 00:02:31,970
‫ตอนนี้ สิ่งที่ฉันต้องการจะทำกับโพรเจกไทล์นี้คือ ฉันต้องการเปลี่ยนจากการเป็นแค่วัตถุชิ้นเดียวให้เป็นคลาสพิมพ์เขียวสำหรับวัตถุหลายชิ้น

25
00:02:32,390 --> 00:02:34,280
‫มีวิธีง่ายๆ ที่เราสามารถทำได้

26
00:02:34,280 --> 00:02:38,270
‫ในแผงรายละเอียด มีปุ่มพิมพ์เขียวเล็กๆ

27
00:02:38,270 --> 00:02:44,720
‫หากคุณคลิกคุณจะเห็นข้อความแจ้งว่าเปลี่ยนนักแสดงคนนี้ให้เป็นคลาสพิมพ์เขียวที่นำกลับมาใช้ใหม่ได้ซึ่งสามารถมีพฤติกรรมของสคริปต์ได้

28
00:02:44,720 --> 00:02:49,970
‫เราสามารถคลิกที่มัน และเราแค่ต้องการมีคลาสย่อยใหม่นี้

29
00:02:49,970 --> 00:02:51,590
‫เราเพียงแค่ปล่อยให้ค่าเริ่มต้นตามที่เป็นอยู่

30
00:02:51,590 --> 00:02:54,500
‫สิ่งเดียวที่เราต้องการเปลี่ยนคือชื่อ

31
00:02:54,500 --> 00:03:01,130
‫ตอนนี้สิ่งที่เราต้องการเรียกว่าเป็นโพรเจกไทล์ แต่มีหลักการตั้งชื่อที่เรามักจะใช้

32
00:03:01,130 --> 00:03:02,150
‫มันไม่ได้บังคับ

33
00:03:02,150 --> 00:03:10,130
‫ไม่มีผลกระทบด้านการทำงานใดๆ ในโครงการนี้ แต่ช่วยให้เราเข้าใจสิ่งต่างๆ ได้ดีขึ้นเล็กน้อย

34
00:03:10,130 --> 00:03:20,060
‫เมื่อเราสร้างคลาสพิมพ์เขียว เรามักจะเติม BP นำหน้าด้วยขีดล่างตัวพิมพ์ใหญ่ และนั่นทำให้เราเห็นได้ทันทีว่าวัตถุที่นี่คืออะไร

35
00:03:20,060 --> 00:03:21,290
‫ชั้นเรียนพิมพ์เขียว

36
00:03:21,380 --> 00:03:28,610
‫เราสามารถไปข้างหน้าและคลิกเลือกซึ่งด้วยเหตุผลบางอย่างจะสร้างได้อย่างมีประสิทธิภาพและสิ่งที่ทำ

37
00:03:28,610 --> 00:03:34,940
‫ไปข้างหน้าและเปิดตัวแก้ไขใหม่ที่นี่ ตัวแก้ไขสำหรับคลาส Blueprint เอง

38
00:03:34,940 --> 00:03:40,190
‫ตอนนี้ เราสามารถเชื่อมต่อสิ่งนี้เข้ากับหน้าต่างหลักได้ เช่นเดียวกับเครื่องมือแก้ไขอื่นๆ

39
00:03:40,880 --> 00:03:43,040
‫และคุณจะเห็นอีกครั้งว่าเรามีอะไรมากมาย

40
00:03:43,040 --> 00:03:49,310
‫มันคล้ายกับพิมพ์เขียวระดับมาก แต่เรามีสิ่งอื่นๆ อีกสองสามอย่าง เช่น วิวพอร์ตในนี้

41
00:03:49,310 --> 00:03:57,740
‫ที่ช่วยให้เราสามารถดูตัวอย่างว่าคลาสพิมพ์เขียวนี้จะเป็นอย่างไรเมื่อเราสร้างอินสแตนซ์ของวัตถุ

42
00:03:58,130 --> 00:04:01,130
‫ตอนนี้เรามีคลาสหลักแล้ว

43
00:04:01,130 --> 00:04:07,010
‫เราควรจะนำอินสแตนซ์และวัตถุของคลาสนี้มาสู่ระดับได้มากขึ้น

44
00:04:07,370 --> 00:04:08,240
‫และแน่นอน เราทำได้

45
00:04:08,240 --> 00:04:17,210
‫เราสามารถทำซ้ำวัตถุที่เรามีอยู่แล้วที่นี่หรือคุณเปิดการวาดเนื้อหาและอยู่ที่รากของโฟลเดอร์เนื้อหาของคุณ

46
00:04:17,210 --> 00:04:22,640
‫หากคุณเลือกโฟลเดอร์เนื้อหาของคุณในบานหน้าต่างด้านซ้าย เราจะมีพิมพ์เขียวโพรเจกไทล์

47
00:04:22,640 --> 00:04:31,610
‫สิ่งที่เราทำได้คือ ลากมันเข้าไปในฉากของเรา และมันจะสร้างตัวอย่างใหม่ สำเนาใหม่ของพิมพ์เขียวนั้น

48
00:04:31,610 --> 00:04:34,400
‫แต่อย่างที่ฉันพูด สิ่งเหล่านี้เป็นสำเนาที่เชื่อมโยง

49
00:04:34,400 --> 00:04:43,010
‫การเปลี่ยนแปลงคุณสมบัติในตัวแก้ไขโพรเจกไทล์ BP ควรเปลี่ยนในทุกกรณี

50
00:04:43,010 --> 00:04:47,090
‫ความแตกต่างที่นี่คือ เรามีบานหน้าต่างรายละเอียดทางด้านขวา

51
00:04:47,090 --> 00:04:49,970
‫ที่เหมือนกันมากกับบานหน้าต่างรายละเอียดที่เรามีในระดับของเรา

52
00:04:49,970 --> 00:04:58,400
‫ตัวแก้ไข ยกเว้นว่าคุณต้องคลิกที่ส่วนประกอบในบานหน้าต่างด้านซ้ายมือเพื่อดูคุณสมบัติ

53
00:04:58,400 --> 00:05:06,620
‫ดังนั้นคุณอาจต้องคลิกลงไปที่องค์ประกอบตาข่ายแบบคงที่เพื่อดูคุณสมบัติบางอย่างที่เราเคยเห็นโดยตรงที่ระดับตัวแสดงรูท

54
00:05:06,620 --> 00:05:11,960
‫ดังนั้นสิ่งหนึ่งที่ควรทราบเกี่ยวกับวิธีการทำที่นี่คือการเปลี่ยนเนื้อหา

55
00:05:11,960 --> 00:05:16,520
‫ดังนั้น ณ เวลานี้ เนื้อหาบนลูกบอลจึงเป็นสีขาวมาก

56
00:05:16,520 --> 00:05:18,440
‫เราอาจต้องการเปลี่ยนสิ่งนี้เป็นบางอย่าง

57
00:05:18,910 --> 00:05:23,860
‫หากคุณเลือกองค์ประกอบตาข่ายแบบคงที่นี้ในบานหน้าต่างด้านซ้าย จากนั้นไปที่บานหน้าต่างรายละเอียดทางด้านขวา

58
00:05:23,860 --> 00:05:29,110
‫คุณจะเห็นว่ามีส่วนที่ระบุว่าวัสดุและองค์ประกอบเป็นศูนย์

59
00:05:29,140 --> 00:05:37,990
‫คุณสามารถคลิกลูกศรลงบนสิ่งนี้ และคุณสามารถดูรายการวัสดุทั้งหมดที่เรามีในโครงการของเรา และคุณสามารถเลือกสิ่งเหล่านี้และลองใช้ดู

60
00:05:37,990 --> 00:05:40,960
‫ฉันก็เลยลองอะไรทำนองนี้ดู วัสดุที่เป็นหินก้อนนี้

61
00:05:40,960 --> 00:05:47,740
‫และคุณจะเห็นว่าลูกกระสุนปืนใหญ่ของเราดูไร้สาระนิดหน่อย ดังนั้นฉันจะไม่ใช้ลูกกระสุนปืนใหญ่นั้น

62
00:05:47,740 --> 00:05:53,150
‫ฉันอยากจะท้าให้คุณเปลี่ยนโพรเจกไทล์นี้เป็นลูกกระสุนปืนใหญ่

63
00:05:53,170 --> 00:05:56,350
‫ทีนี้ วิธีที่เราจะทำคือ อย่างแรกเลย เปิดใช้งานฟิสิกส์

64
00:05:56,350 --> 00:06:12,040
‫คุณจะต้องเลือกองค์ประกอบตาข่ายแบบคงที่เพื่อค้นหาคุณสมบัติทางฟิสิกส์ จากนั้นเปิดใช้งานฟิสิกส์และเลือกวัสดุที่คุณชอบซึ่งเหมาะกับลูกกระสุนปืนใหญ่ดีกว่าก้อนกรวดปัจจุบันที่ฉันเลือกไว้มาก

65
00:06:12,040 --> 00:06:16,030
‫แล้วกลับไปที่ฉากของคุณและดูว่าเกิดอะไรขึ้น

66
00:06:16,030 --> 00:06:18,530
‫พวกเขาเปลี่ยนแปลงอะไรที่นั่นหรือไม่มี?

67
00:06:18,550 --> 00:06:20,470
‫หยุดชั่วคราว เล่นวิดีโอ แล้วไปกันเลย

68
00:06:24,060 --> 00:06:24,540
‫ตกลง.

69
00:06:24,540 --> 00:06:25,410
‫ยินดีต้อนรับกลับ.

70
00:06:25,440 --> 00:06:33,390
‫อย่างแรกเลย ถ้าฉันตีเล่น คุณจะสังเกตเห็นว่าสองลูกนี้นั่งอยู่ตรงนั้นเพราะว่าฟิสิกส์ไม่ได้เปิดใช้งาน

71
00:06:33,390 --> 00:06:35,060
‫เราต้องการเปิดใช้งานฟิสิกส์

72
00:06:35,070 --> 00:06:40,650
‫ไปที่บานหน้าต่างรายละเอียดของเราโดยเลือกองค์ประกอบตาข่ายแบบคงที่ในบานหน้าต่างด้านซ้าย

73
00:06:40,650 --> 00:06:48,550
‫และเราจะเลื่อนลงไปที่ส่วนฟิสิกส์และช่องทำเครื่องหมายสำหรับการจำลองฟิสิกส์

74
00:06:48,570 --> 00:06:54,840
‫การเปลี่ยนแปลงอื่นๆ ที่ฉันต้องการทำที่นี่คือฉันต้องการเปลี่ยนส่วนวัสดุ และนี่คือองค์ประกอบศูนย์

75
00:06:54,870 --> 00:07:01,500
‫หากคุณคลิกที่เมนูดร็อปดาวน์ตอนนี้ ฉันจะมองหาอันที่เป็นโลหะ และฉันคิดว่าฉันจะเลือกวัสดุที่เป็นโลหะโครเมียม

76
00:07:01,500 --> 00:07:04,770
‫ดังนั้นฉันจึงได้ลูกบอลโครเมียมเล็กๆ หนึ่งอัน

77
00:07:04,770 --> 00:07:05,940
‫ตอนนี้เยี่ยมมาก

78
00:07:05,940 --> 00:07:09,120
‫จึงไม่น่าเบื่อหน่ายเหมือนเมื่อก่อน

79
00:07:09,690 --> 00:07:12,630
‫ตอนนี้เราสามารถบันทึกได้หากต้องการ แต่ไม่จำเป็นอย่างยิ่ง

80
00:07:12,630 --> 00:07:14,460
‫เราสามารถไปข้างหน้าและตีเล่น

81
00:07:14,460 --> 00:07:19,020
‫และถ้าเราซูมออก คุณจะเห็นว่าลูกบอลเหล่านั้นกลิ้งไปมาบนพื้นโดยเปิดใช้งานฟิสิกส์และด้วยวัสดุใหม่

82
00:07:19,020 --> 00:07:25,920
‫ไม่ใช่แค่หนึ่งในนั้น แต่ทั้งคู่เพราะพวกมันถูกเชื่อมโยงกลับไปที่คลาสพิมพ์เขียวนี้ และพวกมันเป็นตัวอย่างของ

83
00:07:25,920 --> 00:07:28,200
‫มัน.

84
00:07:28,410 --> 00:07:29,400
‫นี่มันวิเศษมาก

85
00:07:29,400 --> 00:07:36,930
‫เราจะสามารถใช้สิ่งนี้กับสิ่งต่าง ๆ ที่เราต้องการหลายอินสแตนซ์ของคลาสเดียวกันในเกมของเรา

86
00:07:36,930 --> 00:07:42,360
‫และป้องกันไม่ให้เราต้องทำซ้ำหลายครั้งเกินไป

87
00:07:42,360 --> 00:07:43,080
‫สิ่งที่ดี

88
00:07:43,080 --> 00:07:44,640
‫เจอกันใหม่ตอนหน้าค่ะ

