1
ความเข้ากันได้กับ OpenGL การตั้งชื่อแบบแผนและ ARB vs EXT
ฉันคิดว่าฉันได้สร้างความเข้าใจโดยทั่วไปเกี่ยวกับวิธีการตั้งชื่อการประชุมและส่วนขยายของ OpenGL จนกระทั่งฉันพบกรณีที่ทำให้ฉันสับสน นี่คือความเข้าใจของฉัน: ไม่มีคำต่อท้าย - glGenBuffers()เช่น ฟังก์ชั่นนี้เป็นส่วนหนึ่งของโปรไฟล์หลัก หน้าวิกิพีเดียบอกว่านี้ถูกบันทึกอยู่ในรายละเอียดหลักเริ่มต้นจากรุ่น 1.5 ARB - glGenBuffersARB()เช่น ฟังก์ชั่นนี้เป็นส่วนหนึ่งของGL_ARB_vertex_buffer_objectส่วนขยายมาตรฐาน ข้อมูลจำเพาะของส่วนขยายนี้อย่างชัดเจนประกาศGenBuffersARB()ในส่วน "วิธีการและฟังก์ชั่นใหม่" ส่วน "การพึ่งพา" บอกฉันว่าฉันสามารถเข้าถึงสิ่งนี้ได้จากบริบท 1.4+ หากฮาร์ดแวร์รองรับส่วนขยาย EXT - เป็นส่วนขยายและฟังก์ชั่นเฉพาะของผู้ขายที่มีเพียงผู้ขายบางรายเท่านั้นที่สามารถรองรับได้ วัตถุบัฟเฟอร์ Vertex ดูเหมือนไม่มีส่วนขยาย EXT ในรีจิสทรี นี่คือสิ่งที่ความเข้าใจของฉันพังลง: glGenFramebuffersตามที่วิกิแสดงให้เห็นถูกเพิ่มเข้าไปในแกนใน 3.0 ตอนนี้ฉันต้องการเข้าถึงฟีเจอร์บัฟเฟอร์เฟรมที่โปรไฟล์โปรไฟล์หลักที่ต่ำกว่า 3.0 ดังนั้นฉันต้องการใช้เป็นส่วนขยาย รีจิสทรีสเป็คบอกว่ามีสองส่วนขยายที่มีอยู่ - ARBและEXT คำถามที่ 1 - หากมีส่วนขยาย ARB อยู่ทำไมส่วนขยาย EXT จึงมีอยู่ คุณจะไม่เลือกอันที่เป็นมาตรฐานมากกว่าของผู้ขายเฉพาะหรือไม่? ดูข้อมูลจำเพาะ ARB ในส่วน …
14
opengl