‫สวัสดีและยินดีต้อนรับ.
‫ในการบรรยายนี้ เราจะเรียนรู้วิธีสร้างคลาสที่ช่วยให้เราสามารถแบ่งปันการกำหนดค่าและการทำงานระหว่างหลาย
‫ๆ วัตถุในฉากของเรา
‫มาดูกันว่ามันทำงานอย่างไร
‫ตอนนี้พลังที่แท้จริงของการเขียนโปรแกรมด้วยอ็อบเจ็กต์มาถึงเมื่อเราเริ่มใช้คลาสและอินสแตนซ์
‫แล้วคลาสอะไรล่ะ?
‫มันเหมือนกับเทมเพลตหรือพิมพ์เขียวในความหมายปกติของคำนั้นสำหรับออบเจกต์
‫การผจญภัยที่นี่ เราเรียกสิ่งนี้ว่าคลาสนักผจญภัย มันมีข้อมูลเริ่มต้นและมีฟังก์ชันการทำงานบางอย่าง
‫แต่เราสามารถไปและสร้างตัวอย่างของคลาสนี้ได้ เช่น การผจญภัยหมายเลขหนึ่ง
‫ตัวอย่างเช่น เราสามารถโทรหา Bob และเขามีสำเนาของตัวเองของข้อมูลนั้นจากคลาส Adventurer
‫นี่คือวัตถุจริงและคลาสเป็นสิ่งที่เราทำวัตถุจาก
‫จากนั้นคุณสามารถให้นักผจญภัยไปยังอินสแตนซ์ที่สองของคลาสเดียวกัน และพวกเขาใช้ฟังก์ชันร่วมกัน สังเกตว่าพวกเขาใช้ฟังก์ชันเดียวกันทั้งหมด
‫และพวกเขาสามารถมีเวอร์ชันข้อมูลของตนเองได้
‫คุณจะเห็นว่านักผจญภัยสองคนเปลี่ยนค่าประสบการณ์ของเขา
‫ตอนนี้ประโยชน์ของสิ่งนี้เป็นสองเท่า
‫หนึ่งคือ เรากำลังแบ่งปันการทำงานทั้งหมดนั้นระหว่างออบเจ็กต์ต่างๆ เหล่านี้ และประการที่สองคือ
‫ข้อมูลใดๆ ที่เราไม่ได้เปลี่ยนแปลง เช่น ประสบการณ์ 500 หรือระดับที่หนึ่ง
‫ถ้าฉันเปลี่ยนระดับหนึ่งเป็นระดับสอง มันจะเปลี่ยนในทุกอินสแตนซ์ของชั้นเรียนด้วย
‫แล้วเราจะไปสร้างสิ่งนี้ใน Unreal ได้อย่างไร?
‫สิ่งแรกที่ฉันต้องการทำคือนำบางอย่างที่จะทำหน้าที่เป็นโพรเจกไทล์ของเราเข้ามา เพื่อให้โพรเจกไทล์สามารถเป็นออบเจกต์และคลาสแรกของเราที่เราสร้างขึ้น
‫ดังนั้นฉันจะไปที่ปุ่มป้อนโครงการอย่างรวดเร็วในแถบเครื่องมือ ลงไปที่รูปร่างและเลือกทรงกลมแล้วลากทรงกลมเข้าไปในฉากของฉัน
‫ฉันจะลากมันขึ้นอีกหน่อย และฉันจะลองขยายมัน ทำให้มันเล็กลงอีกหน่อยโดยใช้เครื่องมือมาตราส่วน
‫และถ้าฉันคลิกที่นี่ตรงกลางของ White Bit ฉันสามารถปรับขนาดทั้งหมดให้เท่ากันได้จนกว่าฉันจะได้ขนาดที่พอเหมาะพอดีสำหรับโพรเจกไทล์ของฉัน
‫ตอนนี้ สิ่งที่ฉันต้องการจะทำกับโพรเจกไทล์นี้คือ ฉันต้องการเปลี่ยนจากการเป็นแค่วัตถุชิ้นเดียวให้เป็นคลาสพิมพ์เขียวสำหรับวัตถุหลายชิ้น
‫มีวิธีง่ายๆ ที่เราสามารถทำได้
‫ในแผงรายละเอียด มีปุ่มพิมพ์เขียวเล็กๆ
‫หากคุณคลิกคุณจะเห็นข้อความแจ้งว่าเปลี่ยนนักแสดงคนนี้ให้เป็นคลาสพิมพ์เขียวที่นำกลับมาใช้ใหม่ได้ซึ่งสามารถมีพฤติกรรมของสคริปต์ได้
‫เราสามารถคลิกที่มัน และเราแค่ต้องการมีคลาสย่อยใหม่นี้
‫เราเพียงแค่ปล่อยให้ค่าเริ่มต้นตามที่เป็นอยู่
‫สิ่งเดียวที่เราต้องการเปลี่ยนคือชื่อ
‫ตอนนี้สิ่งที่เราต้องการเรียกว่าเป็นโพรเจกไทล์ แต่มีหลักการตั้งชื่อที่เรามักจะใช้
‫มันไม่ได้บังคับ
‫ไม่มีผลกระทบด้านการทำงานใดๆ ในโครงการนี้ แต่ช่วยให้เราเข้าใจสิ่งต่างๆ ได้ดีขึ้นเล็กน้อย
‫เมื่อเราสร้างคลาสพิมพ์เขียว เรามักจะเติม BP นำหน้าด้วยขีดล่างตัวพิมพ์ใหญ่ และนั่นทำให้เราเห็นได้ทันทีว่าวัตถุที่นี่คืออะไร
‫ชั้นเรียนพิมพ์เขียว
‫เราสามารถไปข้างหน้าและคลิกเลือกซึ่งด้วยเหตุผลบางอย่างจะสร้างได้อย่างมีประสิทธิภาพและสิ่งที่ทำ
‫ไปข้างหน้าและเปิดตัวแก้ไขใหม่ที่นี่ ตัวแก้ไขสำหรับคลาส Blueprint เอง
‫ตอนนี้ เราสามารถเชื่อมต่อสิ่งนี้เข้ากับหน้าต่างหลักได้ เช่นเดียวกับเครื่องมือแก้ไขอื่นๆ
‫และคุณจะเห็นอีกครั้งว่าเรามีอะไรมากมาย
‫มันคล้ายกับพิมพ์เขียวระดับมาก แต่เรามีสิ่งอื่นๆ อีกสองสามอย่าง เช่น วิวพอร์ตในนี้
‫ที่ช่วยให้เราสามารถดูตัวอย่างว่าคลาสพิมพ์เขียวนี้จะเป็นอย่างไรเมื่อเราสร้างอินสแตนซ์ของวัตถุ
‫ตอนนี้เรามีคลาสหลักแล้ว
‫เราควรจะนำอินสแตนซ์และวัตถุของคลาสนี้มาสู่ระดับได้มากขึ้น
‫และแน่นอน เราทำได้
‫เราสามารถทำซ้ำวัตถุที่เรามีอยู่แล้วที่นี่หรือคุณเปิดการวาดเนื้อหาและอยู่ที่รากของโฟลเดอร์เนื้อหาของคุณ
‫หากคุณเลือกโฟลเดอร์เนื้อหาของคุณในบานหน้าต่างด้านซ้าย เราจะมีพิมพ์เขียวโพรเจกไทล์
‫สิ่งที่เราทำได้คือ ลากมันเข้าไปในฉากของเรา และมันจะสร้างตัวอย่างใหม่ สำเนาใหม่ของพิมพ์เขียวนั้น
‫แต่อย่างที่ฉันพูด สิ่งเหล่านี้เป็นสำเนาที่เชื่อมโยง
‫การเปลี่ยนแปลงคุณสมบัติในตัวแก้ไขโพรเจกไทล์ BP ควรเปลี่ยนในทุกกรณี
‫ความแตกต่างที่นี่คือ เรามีบานหน้าต่างรายละเอียดทางด้านขวา
‫ที่เหมือนกันมากกับบานหน้าต่างรายละเอียดที่เรามีในระดับของเรา
‫ตัวแก้ไข ยกเว้นว่าคุณต้องคลิกที่ส่วนประกอบในบานหน้าต่างด้านซ้ายมือเพื่อดูคุณสมบัติ
‫ดังนั้นคุณอาจต้องคลิกลงไปที่องค์ประกอบตาข่ายแบบคงที่เพื่อดูคุณสมบัติบางอย่างที่เราเคยเห็นโดยตรงที่ระดับตัวแสดงรูท
‫ดังนั้นสิ่งหนึ่งที่ควรทราบเกี่ยวกับวิธีการทำที่นี่คือการเปลี่ยนเนื้อหา
‫ดังนั้น ณ เวลานี้ เนื้อหาบนลูกบอลจึงเป็นสีขาวมาก
‫เราอาจต้องการเปลี่ยนสิ่งนี้เป็นบางอย่าง
‫หากคุณเลือกองค์ประกอบตาข่ายแบบคงที่นี้ในบานหน้าต่างด้านซ้าย จากนั้นไปที่บานหน้าต่างรายละเอียดทางด้านขวา
‫คุณจะเห็นว่ามีส่วนที่ระบุว่าวัสดุและองค์ประกอบเป็นศูนย์
‫คุณสามารถคลิกลูกศรลงบนสิ่งนี้ และคุณสามารถดูรายการวัสดุทั้งหมดที่เรามีในโครงการของเรา และคุณสามารถเลือกสิ่งเหล่านี้และลองใช้ดู
‫ฉันก็เลยลองอะไรทำนองนี้ดู วัสดุที่เป็นหินก้อนนี้
‫และคุณจะเห็นว่าลูกกระสุนปืนใหญ่ของเราดูไร้สาระนิดหน่อย ดังนั้นฉันจะไม่ใช้ลูกกระสุนปืนใหญ่นั้น
‫ฉันอยากจะท้าให้คุณเปลี่ยนโพรเจกไทล์นี้เป็นลูกกระสุนปืนใหญ่
‫ทีนี้ วิธีที่เราจะทำคือ อย่างแรกเลย เปิดใช้งานฟิสิกส์
‫คุณจะต้องเลือกองค์ประกอบตาข่ายแบบคงที่เพื่อค้นหาคุณสมบัติทางฟิสิกส์ จากนั้นเปิดใช้งานฟิสิกส์และเลือกวัสดุที่คุณชอบซึ่งเหมาะกับลูกกระสุนปืนใหญ่ดีกว่าก้อนกรวดปัจจุบันที่ฉันเลือกไว้มาก
‫แล้วกลับไปที่ฉากของคุณและดูว่าเกิดอะไรขึ้น
‫พวกเขาเปลี่ยนแปลงอะไรที่นั่นหรือไม่มี?
‫หยุดชั่วคราว เล่นวิดีโอ แล้วไปกันเลย
‫ตกลง.
‫ยินดีต้อนรับกลับ.
‫อย่างแรกเลย ถ้าฉันตีเล่น คุณจะสังเกตเห็นว่าสองลูกนี้นั่งอยู่ตรงนั้นเพราะว่าฟิสิกส์ไม่ได้เปิดใช้งาน
‫เราต้องการเปิดใช้งานฟิสิกส์
‫ไปที่บานหน้าต่างรายละเอียดของเราโดยเลือกองค์ประกอบตาข่ายแบบคงที่ในบานหน้าต่างด้านซ้าย
‫และเราจะเลื่อนลงไปที่ส่วนฟิสิกส์และช่องทำเครื่องหมายสำหรับการจำลองฟิสิกส์
‫การเปลี่ยนแปลงอื่นๆ ที่ฉันต้องการทำที่นี่คือฉันต้องการเปลี่ยนส่วนวัสดุ และนี่คือองค์ประกอบศูนย์
‫หากคุณคลิกที่เมนูดร็อปดาวน์ตอนนี้ ฉันจะมองหาอันที่เป็นโลหะ และฉันคิดว่าฉันจะเลือกวัสดุที่เป็นโลหะโครเมียม
‫ดังนั้นฉันจึงได้ลูกบอลโครเมียมเล็กๆ หนึ่งอัน
‫ตอนนี้เยี่ยมมาก
‫จึงไม่น่าเบื่อหน่ายเหมือนเมื่อก่อน
‫ตอนนี้เราสามารถบันทึกได้หากต้องการ แต่ไม่จำเป็นอย่างยิ่ง
‫เราสามารถไปข้างหน้าและตีเล่น
‫และถ้าเราซูมออก คุณจะเห็นว่าลูกบอลเหล่านั้นกลิ้งไปมาบนพื้นโดยเปิดใช้งานฟิสิกส์และด้วยวัสดุใหม่
‫ไม่ใช่แค่หนึ่งในนั้น แต่ทั้งคู่เพราะพวกมันถูกเชื่อมโยงกลับไปที่คลาสพิมพ์เขียวนี้ และพวกมันเป็นตัวอย่างของ
‫มัน.
‫นี่มันวิเศษมาก
‫เราจะสามารถใช้สิ่งนี้กับสิ่งต่าง ๆ ที่เราต้องการหลายอินสแตนซ์ของคลาสเดียวกันในเกมของเรา
‫และป้องกันไม่ให้เราต้องทำซ้ำหลายครั้งเกินไป
‫สิ่งที่ดี
‫เจอกันใหม่ตอนหน้าค่ะ