นี่คือการเขียนที่ดีเกี่ยวกับ VBOs
ประสิทธิภาพ
นี่เป็นภาพรวมที่ดีของซีแมนทิกส์การโทร
ที่นี่นี่เป็นอีกภาพรวมที่ดีของปัญหาด้านประสิทธิภาพ ในนั้นเราจะเห็นว่า VBOs มีประสิทธิภาพมากกว่าอาร์เรย์
เหตุผลที่เราชอบ VBOs คือข้อมูลถูกโหลดลงบนการ์ดและคุณไม่จำเป็นต้องถ่ายโอนทุกเฟรม ขึ้นอยู่กับประเภทของ VBO ที่สร้างขึ้นคุณสามารถให้คำแนะนำเกี่ยวกับการใช้งานไดรฟเวอร์กราฟิกได้
การใช้
VBOs ดีมากสำหรับรูปทรงเรขาคณิตแบบคงที่เช่นภูมิประเทศที่คุณไม่คาดหวังว่าจะเปลี่ยนแปลงหรือสำหรับรูปทรงเรขาคณิตที่ทันสมัย
เวอร์เท็กซ์อาร์เรย์เหมาะสำหรับข้อมูลที่เปลี่ยนแปลงบ่อย แต่ยังอ่านได้จากเครื่องโฮสต์ - ดังนั้นสำหรับการเรนเดอร์ข้อมูลโดยตรงที่ถูกควบคุม (ตัวอย่างเช่นเลเซอร์เรนจ์ไฟนเดอเรเตอร์บัฟเฟอร์เป็นที่ที่ฉันใช้บ่อย) หากคุณสามารถออกไปโดยไม่อ่านข้อมูลบนอุปกรณ์โฮสต์ (ดังนั้นเพียงแค่กดลงบนการ์ด) VBOs ในโหมดเขียนอย่างเดียวเป็นตัวเลือกที่ดี
ความเบา
อาร์เรย์จุดสุดยอดฝั่งไคลเอ็นต์
มีอยู่ใน OpenGL ก่อนหน้า 3.0, เลิกใช้แล้วใน 3.0 และหายไปใน 3.1+ OpenGL ES สนับสนุนพวกเขา (OpenGL ES 2 ไม่ได้)
VBOs
สามารถใช้งานได้หลังจาก OpenGL 1.5 นี่เป็นวิธีเดียวในการเก็บข้อมูลเรขาคณิตใน OpenGL ES 2 (และอื่น ๆ , WebGL)