ประโยชน์ของการบัฟเฟอร์สามเท่าคืออะไร?


20

ผมอ่านทุกอย่างที่เขียนในคำถามก่อนหน้านี้ จากสิ่งที่ฉันเข้าใจในการบัฟเฟอร์สองครั้งโปรแกรมจะต้องรอจนกว่าการวาดรูปเสร็จแล้วจะถูกคัดลอกหรือสลับก่อนที่จะเริ่มการวาดภาพต่อไป ในการบัฟเฟอร์สามครั้งโปรแกรมมีบัฟเฟอร์สองหลังและสามารถเริ่มการวาดในอันที่ไม่เกี่ยวข้องกับการคัดลอกดังกล่าวได้ทันที

แต่ด้วยการบัฟเฟอร์สามเท่าหากคุณอยู่ในสถานการณ์ที่คุณสามารถใช้ประโยชน์จากบัฟเฟอร์ที่สามไม่ได้หมายความว่าคุณกำลังวาดเฟรมเร็วกว่าที่จอภาพสามารถรีเฟรชได้ ดังนั้นคุณจะไม่ได้รับอัตราเฟรมที่สูงขึ้นจริงๆ แล้วประโยชน์ของการบัฟเฟอร์แบบสามทางคืออะไร?

คำตอบ:


6

ทั้งการบัฟเฟอร์สองเท่าและสามเท่าช่วยแก้ปัญหาการวาดซ้ำสีดำบนหน้าจอ อย่างไรก็ตามการบัฟเฟอร์สามครั้งจะช่วยแก้ปัญหาการเกิดพร้อมกันเมื่อบัฟเฟอร์การวาดปัจจุบันกำลังถูก memcpy-ed ไปที่หน้าจอและฉากเกมของคุณสามารถเริ่มวาดได้แล้ว

บทความนี้เป็นวิธีที่ดีที่สุดในการอธิบายถึงประโยชน์ของการบัฟเฟอร์สามเท่า ... http://remis- Thoughts.blogspot.in/2012/01/triple-buffering-as-concurrency.html


หากต้องการตอบคำถามของคุณหากเวลาในการแสดงภาพต่อเฟรมไม่สูงคุณจะไม่ได้รับเฟรมที่แตกต่างจากที่จอมอนิเตอร์สามารถผลักได้ นั่นเป็นเหตุผลหนึ่งที่คนส่วนใหญ่ถูกล็อคอัตราการวาดภาพวิดีโอ / อะแดปเตอร์ของพวกเขาด้วยการซิงค์ วันนี้ทีวีส่วนใหญ่ในปัจจุบันให้อัตราการรีเฟรช 120Hz และในการทำเกม 3D คุณจะต้องวาดภาพให้มากเท่าที่ต้องการ (LR interleaved) ต่อวินาที ทุกอย่างขึ้นอยู่กับเกมและกลุ่มเป้าหมายของคุณในระยะสั้น
Karthik Kumar Viswanathan
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.