2
การแปลงรังสีเป็นวัตถุอวกาศสำหรับภาพเคลื่อนไหวเบลอ
My raytracer รองรับวัตถุหลากหลายประเภท ฉันใช้เทคนิคมาตรฐานในการแปลงรังสีให้เป็นพื้นที่วัตถุ มันใช้งานได้ดีมากจนกระทั่งฉันเพิ่มการเคลื่อนไหวเบลอ ฉันทำแบบจำลองการเคลื่อนไหวเบลอเป็นลำดับของการแปลง (เพื่อทำให้การสนทนาง่ายขึ้นสมมติว่ามีสองอย่าง) แทนที่จะเป็นแบบเดียว วิธีการของฉันคือใช้การแปลงผกผันของรังสีที่ทั้งเฟรมหลักและวางตำแหน่ง / ทิศทาง ดูเหมือนว่ามันจะทำงานได้ดีสำหรับการแปล แต่มันก็แยกย่อยสำหรับการหมุนเวียน เช่นนี่คือรูปสามเหลี่ยมสองรูปที่อยู่ระหว่างการหมุน 30 และ 90 องศา: (4 ตัวอย่าง, การสร้างใหม่ MN, ตัวอย่างสีแดงมาจากใกล้กับสอง keyframes) ที่มุมฉันคาดว่าตัวอย่าง lerped จะอยู่บนเส้นตรงระหว่างจุดยอดทั้งสอง พวกเขากลับนูนออกมาด้านนอก นี่เป็นสิ่งที่ผิด ในฉากที่น่าสนใจยิ่งขึ้นด้วยการแปลงที่น่าสนใจมากขึ้นมันทำให้เกิดโหมดความล้มเหลวที่หลากหลาย เช่นนี่คือใบพัดหมุน 45 รอบ: (100 ตัวอย่างภาพปกติ) ปัญหาบางอย่างเกิดจากการแตกหักของ BVH (ซึ่งถือว่าส่วนใหญ่ของวัตถุอยู่ที่คีย์เฟรม) แต่ถึงแม้แรงเดรัจฉานบังคับจะไม่ถูกต้องก็ตาม ฉันสามารถแก้ไขทั้งหมดนี้ได้โดยทำการแปลงไปข้างหน้าเท่านั้น (เปลี่ยนวัตถุไม่ใช่รังสี) แต่ใช้ได้กับวัตถุที่เป็นไปได้เท่านั้น (รูปสามเหลี่ยมเท่านั้นจริง ๆ ) ฉันจะทำให้ raytracer ของฉันสร้างการประมาณเชิงเส้นเพื่อการแปลง (โดยเฉพาะการหมุน) โดยการแปลงรังสีไม่ใช่วัตถุได้อย่างไร