‫สวัสดีและยินดีต้อนรับ.
‫ในการบรรยายนี้ เรากำลังจะทำให้ผู้เล่นของเรามองเห็นจากศัตรู เพื่อที่เราจะสามารถเป็นผู้เล่น
‫ในการซ่อนตัวหลังสิ่งกีดขวางและไม่ให้ผู้ติดตามศัตรูไม่มี
‫เล็งมาที่เราจนกว่าเราจะโผล่ออกมาและปรากฏแก่พวกเขา
‫คุณจะเห็นว่าฉันซ่อนอยู่หลังมุมหนึ่ง และเขาหาฉันไม่พบ
‫มาดูวิธีการทำโดยใช้เครื่องมือที่ไม่จริงกันดีกว่า
‫จึงไม่เหมาะที่ศัตรูคนนี้ ก. ฉัน. สามารถติดตามเราได้ที่มุมโค้งมน
‫ออกไปไกลแค่ไหน หลบหลังเสาแค่ไหนก็ยังหาเราเจอ
‫มันยังคงมาและมุ่งมาที่เรา
‫เราต้องการแก้ไขสิ่งนั้น และเราจะทำเช่นนี้โดยการตรวจสอบแนวสายตาจากศัตรูไปยังผู้เล่น
‫ตอนนี้ ใน Unreal มีฟังก์ชันสำหรับสิ่งนี้อยู่แล้วในตัวควบคุมการมองที่เรียกว่าเส้นสายตา
‫และถ้าคุณไปค้นหาสิ่งนั้น คุณจะพบว่ามีฟังก์ชันที่คืนค่าบูลีน
‫ดังนั้นการบอกเราว่าเรามีแนวสายตาหรือไม่ จากนั้นจึงต้องใช้นักแสดงที่เราควรพยายามตรวจสอบแนวสายตา
‫และพิจารณาสิ่งต่างๆ เช่น ตำแหน่งตาของเบี้ยที่เป็นปัญหาโดยอัตโนมัติ
‫ทั้งหมดนี้ถูกเข้ารหัสใน Unreal แล้ว มันเจ๋งมาก ดังนั้นมันควรจะตรงไปตรงมาทีเดียว
‫ถ้าเราไปที่ตัวควบคุม AI DHCP ของเรา สิ่งที่เราอยากทำโดยพื้นฐานคือเปลี่ยนแปลงสิ่งต่างๆ
‫ใน TIC เพื่อให้เราทำสิ่งแรกสุดในสายตา
‫แล้วสิ่งที่เราอยากทำถ้าเรามีเส้นสายตาคือเราต้องการย้ายไปที่และเราต้องการตั้งโฟกัส
‫แต่ถ้าเราไม่ทำอย่างอื่น สิ่งที่เราอยากทำคือโฟกัสให้ชัดเจน
‫จำไว้นะ เราเห็นฟังก์ชันนั้นมาก่อนแล้ว และเราต้องการทำ มาดูการหยุดเคลื่อนที่โดยพื้นฐานแล้ว
‫และนั่นเป็นอีกฟังก์ชันหนึ่งที่เรายังไม่ได้เห็น
‫สิ่งที่ฉันจะทำตอนนี้คือ ฉันสามารถท้าทายให้คุณนำสิ่งนี้ไปปฏิบัติทั้งหมดด้วยตัวเองหากคุณรู้สึกมั่นใจ
‫ไม่อย่างนั้น อย่างอื่นจะซับซ้อนกว่าที่เราไม่เคยเห็นมาก่อน เพราะอีกสองเรื่อง เราได้ย้ายไปยังนักแสดงแล้ว
‫เราได้โฟกัสที่ตั้งไว้แล้ว เราเคยทำมาก่อน
‫และมีเพียงแค่เส้นสายตาที่เราเพิ่งเห็น
‫มันค่อนข้างตรงไปตรงมา
‫คุณสามารถใช้สิ่งนั้นได้
‫แต่แล้วเรื่องอื่นล่ะ?
‫มาลองใช้ส่วนคำสั่ง ELT กัน
‫มันจะไม่คอมไพล์เพราะคุณต้องการ if ก่อนอย่างอื่น แต่ลองเขียน ELT
‫clause กัน
‫สิ่งแรกที่ต้องโฟกัสคือ เรากำลังบอกว่าหยุดพยายามติดตามผู้เล่นเพราะคุณมองไม่เห็นผู้เล่น
‫คุณไม่ควรทำให้รู้สึกว่าคุณรู้ว่าผู้เล่นอยู่ที่ไหน แม้ว่าตาจะมองเห็นได้อย่างชัดเจน
‫เพราะมันสามารถเข้าถึงตำแหน่งของผู้เล่น และอื่นๆ ได้
‫แต่เราต้องสร้างภาพลวงตาที่ AI รู้เท่าที่มองเห็นเท่านั้น
‫สิ่งที่เราจะทำคือเราจะเรียกให้โฟกัสชัดเจน
‫และถ้าเราไปที่ตัวควบคุม AI H และดูโฟกัสที่ชัดเจน คุณจะเห็นว่ามันอยู่ในลำดับความสำคัญที่เราต้องเคลียร์
‫ตอนนี้ขอเตือนว่าลำดับความสำคัญเหล่านี้เป็นระดับโฟกัสที่แตกต่างกัน
‫ดังนั้นเราจึงมีการเคลื่อนไหวเริ่มต้นและการเล่นเกมเพลย์เป็นสิ่งที่มีความสำคัญสูงสุด
‫และสิ่งที่เรากำหนดโดยค่าเริ่มต้นคือลำดับความสำคัญในการเล่นเกม
‫ดังนั้นสิ่งที่เราต้องการจะทำคือล้างลำดับความสำคัญของการเล่นเกม ซึ่งหมายความว่าหากเรามุ่งเน้นที่การเคลื่อนไหวเป็นหลัก
‫เช่น หากตาของเราต้องการย้ายกลับไปที่จุดป้องกัน การโฟกัสนั้นจะไม่ถูกล้างและจะเป็น ย้ายกลับไปที่จุดคุ้มกัน
‫นั่นคือวิธีการทำงานของโฟกัส
‫นั่นเป็นวิธีที่ระบบลำดับความสำคัญทำงานที่นั่น
‫สิ่งที่เราแค่อยากจะทำคือคัดลอกรหัสลำดับความสำคัญของโฟกัสนี้ในการเล่นเกมโคลอน และนั่นคือลำดับความสำคัญที่เราต้องการทำให้ชัดเจนในบรรทัดนี้ที่นี่
‫แล้วอีกอย่างคือหยุดการเคลื่อนไหว
‫ดังนั้นเราจึงต้องการไปที่ RH ที่ควบคุมโดย AI อีกครั้งและดูการเคลื่อนไหวหยุด
‫และแน่นอนว่า มีฟังก์ชันไม่มีอาร์กิวเมนต์ง่ายๆ ที่เรียกว่าหยุดการเคลื่อนไหว ซึ่งช่วยให้เราทำแบบนั้นได้
‫ดังนั้นคุณไป
‫นั่นคือข้อความที่เขียนโดยพื้นฐาน
‫ดังนั้น ตอนนี้ ขอเตือนว่ายังคงเป็นเรื่องยากสำหรับคุณที่จะใช้ส่วน if กับเส้นสายตา if และการย้ายไปยังและกำหนดโฟกัส
‫และโดยพื้นฐานแล้วคุณต้องการลบรหัสนี้ที่นี่
‫ฉันแค่จะแสดงความคิดเห็นและจัดเรียงว่าคุณต้องการให้เป็นที่ใด
‫ดังนั้นหยุดวิดีโอชั่วคราว
‫ไม่มีความท้าทาย เลื่อนที่นี่
‫เพียงแค่ไปและใช้สามบรรทัดนี้ด้วยตัวคุณเอง
‫ตกลง.
‫ยินดีต้อนรับกลับ.
‫มาเริ่มกันเลยดีกว่า
‫ถ้าใช่ ถ้าเปิดวงเล็บ แนวสายตา ไป แล้วเราต้องการทำ แนวสายตา ให้กับนักแสดง ซึ่งเป็นตัวจำนำผู้เล่น
‫ที่เราต้องการเข้าถึง
‫ให้ยกเลิกการใส่ความคิดเห็นว่าผู้เล่นจำนำที่นี่ และมันทำให้การเยื้องของเรามัวหมองเล็กน้อย
‫มาแก้ไขกันเถอะ
‫แล้วเราต้องการวงเล็บของเรา วงเล็บปีกกาของเราที่นี่ และเราต้องการที่จะย้ายไปยังนักแสดง
‫อันที่จริง เราสามารถคัดลอกและยกเลิกการแสดงความเห็นเกี่ยวกับการย้ายไปยังนักแสดงได้ที่นี่
‫และเราต้องการที่จะยกเลิกการแสดงความคิดเห็น
‫ใช่ ไปกันเลย
‫และจุดโฟกัส เราสามารถขยับสิ่งนั้นได้เช่นกัน
‫ตอนนี้ จุดโฟกัส ไม่สำคัญว่าคุณจะทำก่อนหรือหลังย้ายไปหานักแสดง เพราะในขณะที่การย้ายไปยังนักแสดงจะกำหนดโฟกัส
‫แต่จะกำหนดลำดับความสำคัญที่ต่ำกว่า โฟกัสการเคลื่อนไหวมากกว่าโฟกัสในการเล่นเกม
‫ดังนั้น ไม่สำคัญว่าเราจะดำเนินการทั้งสองในลำดับใด
‫และสุดท้าย เราสามารถลบบรรทัดที่แสดงความคิดเห็นนี้ซึ่งเราได้รับตัวจำนำผู้เล่นในการเริ่มเล่นเพราะเราไม่ต้องการมันอีกต่อไป
‫และทุกอย่างอยู่ในเครื่องหมายถูกในขณะนี้ เพื่อให้เราสามารถลบการเริ่มเล่นออกได้
‫ฉันจะปล่อยไว้เผื่อในกรณีที่เราต้องการในภายหลัง เพื่อช่วยฉันไม่ต้องยุ่งยากในการเพิ่มกลับเข้าไปใหม่
‫ไปที่ Unreal และคอมไพล์กัน เสร็จแล้วมาเล่นกัน
‫ลองดูว่าเราจะซ่อนตัวจากนักแสดงคนนี้ได้ไหม
‫ฉันจะพยายามย้ายไปรอบ ๆ มุมอย่างรวดเร็วพอสมควร
‫มันค่อนข้างยุ่งยากนิดหน่อยเพราะพวกมันสามารถเคลื่อนที่ได้เร็วที่สุดเท่าที่คุณจะทำได้ แต่ถ้าคุณไปอยู่ตรงมุมแบบนั้น
‫พวกมันก็จะไป พระองค์ลืมตาฉันแล้ว
‫เขาหยุดพยายามไล่ตามฉันแล้ว
‫ฉันสามารถมองไปรอบ ๆ มุมและเห็นว่าฉันกำลังเคลื่อนไหว
‫เขาไม่ได้เปลี่ยนการเล็งเพราะเราโฟกัสได้ชัดเจนแล้ว
‫สามารถมองไปรอบมุมจากอีกด้านหนึ่งได้
‫มาดูกัน.
‫เลือกรอบที่นี่
‫ไปเลย
‫คุณจะเห็นว่าเขายังคงเล็งไปที่ตำแหน่งสุดท้ายที่ฉันอยู่
‫แต่ถ้าฉันปรากฏขึ้นในสายตา เขาก็เล็งและเคลื่อนที่ภายในรัศมีการยอมรับ
‫เมื่อพูดถึงเรื่องนี้ ฉันต้องการให้นักออกแบบสามารถกำหนดค่ารัศมีการยอมรับนั้นได้
‫เลยย้ายมาไว้ในพร็อพเพอร์ตี้ใหม่กัน
‫ฉันจะสร้างส่วนส่วนตัวที่นี่ด้วยคุณสมบัติใหม่
‫ซึ่งจะไปแก้ไขที่ไหนก็ได้
‫และเราต้องการให้มันเป็นทศนิยมที่เรียกว่ารัศมีการยอมรับ และให้ค่าเริ่มต้นเป็น 200
‫จากนั้นรัศมีการยอมรับนี้ เราสามารถดำเนินการต่อไปและใช้ในการย้ายไปเป็นนักแสดง
‫และถ้าคุณคอมไพล์มัน มันจะให้พฤติกรรมที่เหมือนกันทุกประการกับคุณ ยกเว้นตอนนี้
‫คุณสามารถเปลี่ยนสิ่งนั้นได้ในพิมพ์เขียวคอนโทรลเลอร์ AI
‫สำหรับการบรรยายครั้งนี้
‫เราได้ค้นพบฟังก์ชันแนวสายตาดังกล่าว ซึ่งช่วยให้เราตรวจสอบได้ว่าตาสามารถมองเห็นหรือมองเห็นสิ่งใดสิ่งหนึ่งได้หรือไม่
‫และเราได้ใช้ฟังก์ชันการซ่อนพื้นฐานนี้ ดังนั้น AI จึงไม่ติดตามเราเมื่อมองไม่เห็นเรา
‫บรรยายต่อไป.
‫เราจะปรับปรุงสิ่งต่าง ๆ จาก AI ที่ตั้งโปรแกรมเองนี้และใช้แผนผังพฤติกรรม
‫เครื่องมือที่ทรงพลังจริง ๆ ในการทำให้ AI ของเราเจ๋งกว่านั้นมาก