‫สวัสดีและยินดีต้อนรับ.
‫ในการบรรยายนี้ เราจะเรียนรู้การวาดทรงกลมดีบักในฉากของเรา เพื่อที่เราจะได้เห็นภาพตำแหน่งเวกเตอร์
‫f ต่างๆ ในอวกาศ
‫มาดูกันว่ามันทำงานอย่างไร
‫อีกไม่นานเราจะต้องการเรียกองค์ประกอบการคว้าของเราที่ตำแหน่งด้วยการหมุนเวียน
‫สำหรับสิ่งนี้ เราจำเป็นต้องรู้สองสามอย่างว่าองค์ประกอบใดที่เราพยายามจะคว้าตำแหน่ง การหมุน ในกรณีนี้
‫ชื่อกระดูกที่เรามองข้ามไปได้อย่างมีความสุข
‫แต่เราจำเป็นต้องรู้สิ่งอื่นๆ เหล่านี้
‫เมื่อพูดถึงการหมุน มันค่อนข้างตรงไปตรงมา เพราะเราสามารถหาการหมุนของส่วนประกอบของเราได้
‫เมื่อพูดถึงองค์ประกอบ มันก็ค่อนข้างตรงไปตรงมา
‫สิ่งที่เราต้องทำคือนำองค์ประกอบที่เราชนกันเมื่อเราทำการติดตามทรงกลมของเรา
‫ในทางกลับกัน ตำแหน่งนั้นค่อนข้างจะยุ่งยากขึ้นนิดหน่อยเพราะเราไม่ได้แค่ต้องการเอาตำแหน่งขององค์ประกอบจริงเท่านั้น
‫เพราะผมอาจจะดูที่นี่ ผมอาจคาดหวังว่าจะคว้ามันไว้ได้ ศีรษะ.
‫แต่ถ้าคุณเห็นรากของวัตถุนี้ จริงๆ แล้ว มันอยู่ใกล้ฐาน
‫จึงสามารถนำไปสู่ผลลัพธ์ที่แปลกไปบ้าง
‫ฉันหยิบมันขึ้นมาใกล้ยอด ใกล้ปีก แล้วมันจะเคลื่อนตัวการ์กอยล์ขึ้นและลอยสูงเกินไป ดังนั้นมันจะไม่รู้สึกถูกถ้าคุณทำแบบนั้น
‫ฉันได้ลองแล้วมันแปลกนิดหน่อย
‫สิ่งที่เราจะทำคือต้องการค้นหาว่าเราชนกับการ์กอยล์นี้ที่ไหน เมื่อเราไล่ตามทรงกลม
‫ถ้าเราไปที่การคว้า CP ของเรา จริงๆ แล้วมีสองสามตัวเลือกในผลลัพธ์ Hit ของเราในการหาเวกเตอร์ของตำแหน่ง
‫ดังนั้น หากคุณกดจุดผลลัพธ์แล้วกดพื้นที่ควบคุม คุณจะเห็นสิ่งต่าง ๆ มากมายที่นี่
‫คุณจะเห็นได้ว่าหนึ่งในนั้นคือองค์ประกอบที่เราตี
‫เราจะใช้สิ่งนั้นในภายหลัง
‫มีจุดกระทบที่อาจเป็นจุดที่น่าสนใจ
‫นอกจากนี้ยังมีสถานที่
‫เพื่อหาว่าเป็นจุดกระทบหรือสถานที่ที่ฉันต้องการ เป็นการดีที่เราจะมีวิธีที่จะทำให้เห็นภาพนี้ในโลก
‫นึกภาพจุดที่เรากำลังพยายามจะดู
‫และโชคดีที่มีไฟล์รวมที่เราพบว่าการวาดเส้นแก้ไขข้อบกพร่องของเราอยู่ในไฟล์เดียวกัน
‫มีฟังก์ชัน draw debug sphere เช่นกันและมีพารามิเตอร์เหมือนกันมากมาย
‫คุณต้องการโลกเป็นพารามิเตอร์แรก ศูนย์กลางของทรงกลม
‫รัศมีเป็นแบบลอย จำนวนส่วนที่ทรงกลมควรมี
‫เราจะเห็นว่านี่หมายความว่าอย่างไรเมื่อเราวาดมันจริงๆ
‫แล้วมีสีอะไรบ้างครับว่าควรจะคงอยู่ในฉากนั้นนานแค่ไหน ฯลฯ เรามาลองวาดทรงกลมนี้กัน
‫และในตอนแรก ฉันจะใช้มันเพื่อวาดทรงกลมที่จุดสิ้นสุดของการกวาดของเรา
‫เราจะเรียกการวาดดีบักทรงกลม
‫เราไม่จำเป็นต้องรวมอะไรใหม่เพราะเราได้วาดเส้นดีบักไว้แล้วที่นี่
‫Get World จะเป็นอาร์กิวเมนต์แรก จากนั้นจุดศูนย์กลางของทรงกลมนี้
‫ซึ่งจะเป็นเวกเตอร์สิ้นสุด รัศมี
‫ผมจะให้รัศมี 10 เซนติเมตร จะให้ 10 ส่วนด้วย
‫แล้วคราวนี้ผมจะได้สี F
‫ให้สิ่งที่แตกต่างออกไป
‫F สี ทวิภาค ทวิภาค คราวนี้อาจเป็นทรงกลมสีน้ำเงิน เส้นถาวร
‫ฉันต้องการให้สิ่งนี้เป็นจริงเพราะเราเรียกว่า grab หนึ่งครั้ง ไม่ใช่ทุก ๆ tic
‫ผมจะตั้งค่านี้เป็นจริงจากนั้นตลอดชีวิต
‫ฉันจะตั้งค่าทรงกลมให้คงอยู่เป็นเวลา 5 วินาที จากนั้นส่วนที่เหลือก็ไม่สำคัญ
‫ฉันจะใส่เครื่องหมายอัฒภาคที่ท้ายบรรทัดและคอมไพล์ใหม่ถ้าเรากดเล่นหลังจากคอมไพล์เสร็จแล้ว
‫เราจะย้ายกลับจากการ์กอยล์เล็กน้อย และฉันจะคลิกซ้ายแล้วคุณทำได้ มองเห็นลูกทรงกลมที่อยู่ด้านหน้าสี่เมตรที่ฉันมองอยู่ตอนนี้
‫ฉันคิดว่ามันจะคงอยู่เป็นเวลา 5 วินาที แต่จริง ๆ แล้วสิ่งที่ฉันต้องใส่ในที่นี้ไม่ใช่การคงอยู่นั้นเป็นความจริงเพราะโดยพื้นฐานแล้วจะเพิกเฉยต่ออายุการใช้งานทั้งหมดและทำให้พวกเขาอยู่ตลอดไป
‫ดังนั้นถ้าเราใส่ค่าเท็จแล้วเวลา 5 วินาที
‫ดังนั้นฉันจึงทำผิดพลาดที่นั่น ซึ่งง่ายต่อการทำและง่ายต่อการแปลเอกสาร จากนั้นเราก็ไปต่อและกดปุ่มเล่นในเกมของเรา
‫และถ้าเราสร้างหนึ่งในทรงกลมเหล่านั้นหลังจากผ่านไป 5 วินาที ทรงกลมนั้นจะหายไปอีกครั้ง
‫จึงไม่เกะกะโลกของเรานานเกินไป
‫เรามาท้าให้คุณคิดดูว่าเราต้องการตำแหน่งใดจากผลการตีของเรา
‫วาด Debug Sphere สำหรับแต่ละอัน ตำแหน่งผลลัพธ์ของ Hit และจุดกระทบของผลลัพธ์ Hit และใช้สี f ที่แตกต่างกันเพื่อแสดงและทำให้ชัดเจนว่าอันไหนคืออันไหนและอะไรคือความแตกต่าง
‫อันไหนที่เราคิดว่าเราอาจต้องการ?
‫หยุดวิดีโอชั่วคราวและไปกันเลย
‫ตกลง.
‫ยินดีต้อนรับกลับ.
‫กลับไปที่โค้ดแล้วลงไปที่คำสั่ง if ที่เราได้ทำเครื่องหมายไว้
‫ดังนั้นเราจะมีผลการตีบางประเภท
‫และก่อนที่เราจะจับตัวนักแสดง สิ่งที่ฉันจะทำคือวาด debug sphere โดยใช้ Get World
‫และตำแหน่งแรกที่เราจะวาดคือตำแหน่งผลลัพธ์ของ Hit ที่จะไปในรัศมีสิบ สิบส่วน
‫สี f ทวิภาค สีเขียวโคลอนในครั้งนี้ และเส้นคงอยู่จะเป็นเท็จ และตลอดอายุขัย
‫ให้เวลา 5 วินาทีแล้วลองคัดลอกบรรทัดนี้เพราะเราต้องการสิ่งเดียวกันแทบทุกประการ ยกเว้นว่าเราต้องการเปลี่ยน
‫ตำแหน่งผลการตีสำหรับจุดผลการตี
‫จุดกระทบและสี
‫บางทีเราอาจจะเปลี่ยนให้อ่านเพื่อให้เราทราบความแตกต่างระหว่างสีเขียวกับสีแดง
‫มารวบรวมและตรงไปที่ตัวแก้ไข
‫มาตีกันเล่นๆ
‫และคุณเห็นว่าเมื่อฉันไม่โดนอะไรจริง ๆ ฉันก็จะได้ทรงกลมสีน้ำเงินนี้
‫และถ้าฉันขึ้นไปบนตัวการ์กอยล์ ให้มองไปที่ตัวการ์กอยล์แล้วลองตีดู
‫โอเค เรามีจุดสองจุดที่แตกต่างกันมากที่นี่
‫สีเขียวอยู่ค่อนข้างไกลจากการ์กอยล์
‫สีแดงอยู่ใกล้กว่ามาก
‫เกิดอะไรขึ้นที่นี่?
‫ถ้าเราดูเอกสารผลการชนแล้วลงมาดูว่าสถานที่นั้นควรเป็นอย่างไร
‫คุณสามารถดูการสนทนาที่นี่ สถานที่นั้นในอวกาศโลกที่รูปร่างที่เคลื่อนที่จะสิ้นสุดกับวัตถุที่ได้รับผลกระทบหากมี
‫เป็นการตี
‫และถ้าฉันดีดออกและหยุดสักครู่เพื่อดูว่าจุดเหล่านี้เป็นอย่างไร คุณจะเห็นว่า
‫Green One ตรงกับคำอธิบายนั้นจริงๆ
‫เรามีทรงกลมรัศมีหนึ่งเมตรที่เราฉายหรือกวาดไปทางการ์กอยล์นี้ และมันจะกระทบกับกอบลินทันทีที่มาถึงจุดสีเขียวที่นี่
‫เพราะนั่นคือรัศมีประมาณหนึ่งเมตรรอบๆ ตัวการ์กอยล์ ในขณะที่จุดกระทบบอกเราว่าที่ไหน
‫ทรงกลมกระทบกับการ์กอยล์
‫ตอนนี้ มันน่าจะอยู่ในจุดที่เราต้องการจะคว้ามันไว้มากกว่า เพราะจริงๆ แล้วมันอยู่บนกอบลิน
‫ถ้าฉันคว้ามันไว้ตรงนี้ การ์กอยล์จะหมุนและหมุนไปรอบๆ จุดสุ่มกลางอากาศ และดูเหมือนว่าเราจะจับมันไม่ได้เลย
‫ในขณะที่บริเวณจุดสีแดงนี้ ดูเหมือนว่าฉันเพิ่งคว้ามันไว้ที่ปลายปีกและดูเป็นธรรมชาติ
‫สิ่งที่ดี
‫ดังนั้นในการบรรยายครั้งนี้ เราได้เรียนรู้เพิ่มเติมเล็กน้อยเกี่ยวกับสิ่งที่มีอยู่จากผลลัพธ์ของ
‫Hit และเราได้เรียนรู้วิธีวาดวัตถุแก้ไขข้อบกพร่องเพิ่มเติมในฉากของเรา
‫เจอกันใหม่ตอนหน้าค่ะ