ตัวอย่างช่องว่างระหว่างการแปลงสแกนคืออะไร


9

ในการกวดวิชานี้ ,

มันมักจะเป็นกรณีที่มีการแสดงผลเป็นรูปสามเหลี่ยมที่แบ่งปันขอบ OpenGL ให้การรับประกันว่าตราบใดที่ตำแหน่งจุดสุดยอดที่ใช้ร่วมกันเหมือนกันจะไม่มีช่องว่างตัวอย่างระหว่างการแปลงการสแกน

1 ช่องว่างตัวอย่างระหว่างการแปลงการสแกนคืออะไร

2 ภายใต้สถานการณ์ใดมันจะเกิดขึ้น?

3 เกิดขึ้นเมื่อเส้นตรงกลางของชิ้นส่วนแตกหรือไม่?

คำตอบ:


8

ช่องว่างตัวอย่างจะเกิดขึ้นหากคุณไม่ทำสิ่งที่ "ถูกต้อง"

ใน OpenGL หรือ D3D สมมติว่าคำสั่งที่คดเคี้ยวสอดคล้องกันได้ถ้าคุณมีรูปสามเหลี่ยม ABC และ CBD แล้วเมื่อจุดตัวอย่าง - นั่นคือการทดสอบในระหว่างการสแกนแปลงเพื่อตรวจสอบว่าจุด (อ่านพิกเซล) ที่อยู่ภายในรูปสามเหลี่ยม - โกหกว่าบน shared edge BC จากนั้นตัวอย่างนั้นจะเป็นหนึ่งในสามเหลี่ยมสองรูปนั้น

วิธีนี้จะช่วยหลีกเลี่ยงช่องว่างและการเติมสองครั้ง หลังจะเป็นปัญหากับการดำเนินการพูดความโปร่งแสงหรือลายฉลุ


2
ดังตัวอย่างตัวอย่างสามเหลี่ยมสองรูปสามเหลี่ยมที่ใช้ร่วมกันอาจแยกพิกเซลเดียวกันเป็นสองเท่าได้อย่างสมบูรณ์ แต่การใช้งาน OpenGL จะรับประกันได้เพียงหนึ่งรูปสามเหลี่ยมที่ครอบคลุมจุดกึ่งกลางพิกเซล สิ่งที่หนึ่งคือการดำเนินการขึ้นอยู่กับ
Andreas
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.