Skip to main content

OpenGL reg;จุดสุดยอดบัฟเฟอร์?

ห้องสมุดกราฟิกแบบเปิด reg;(OpenGl reg;) Vertex Buffer เป็นพื้นที่ของหน่วยความจำคอมพิวเตอร์มักจะอยู่บนการ์ดกราฟิกโดยตรงที่ช่วยให้สามารถเข้าถึงอาร์เรย์ของจุดยอดและคุณสมบัติของพวกเขาได้อย่างรวดเร็วบ่อยครั้งที่ OpenGL reg;Vertex Buffer ใช้เพื่อสร้างวัตถุบัฟเฟอร์จุดยอด (VBO) อนุญาตให้วัตถุภายในฉากสามมิติ (3D) ที่จะแสดงผลเป็นส่วนหนึ่งของรายการแสดงผลและไม่อยู่ในโหมดทันทีอย่างไรก็ตามบางครั้งสามารถใช้บัฟเฟอร์จุดสุดยอดนอก VBO เพื่อจัดเก็บข้อมูลเกี่ยวกับวัตถุหรือเพื่อช่วยให้การเปลี่ยนแปลงง่ายขึ้นในรุ่นที่ซับซ้อนควรสังเกตว่าบัฟเฟอร์จุดสุดยอดไม่จำเป็นต้องอยู่ในหน่วยความจำกราฟิกการ์ดเนื่องจากสามารถจัดสรรได้เช่นโครงสร้างข้อมูลใด ๆถ้า OpenGL reg;จุดสุดยอดบัฟเฟอร์จะถูกใช้เป็นส่วนหนึ่งของ VBO จากนั้นการ์ดกราฟิกที่ใช้จะต้องรองรับ OpenGL reg พิเศษ;ส่วนขยาย VBO เพื่อให้แน่ใจว่าบัฟเฟอร์ถูกวางไว้ในหน่วยความจำกราฟิก

ในระดับพื้นฐานที่สุดคือ OpenGL reg;Vertex Buffer เป็นเพียงบัฟเฟอร์ที่เรียบง่ายพื้นที่หน่วยความจำที่จัดสรรซึ่งสามารถเก็บข้อมูลได้มันจะกลายเป็นบัฟเฟอร์จุดสุดยอดเมื่อเก็บอาร์เรย์จุดสุดยอดไว้ในนั้นOpengl reg;Vertex Array เป็นอาร์เรย์ของโครงสร้างข้อมูลที่กำหนดคุณสมบัติทั้งหมดของจุดยอดแต่ละจุดข้อมูลนี้อาจรวมถึงตำแหน่ง X, Y และ Z ของจุดสุดยอดในฉาก 3D สีของจุดสุดยอดคุณสมบัติปกติและอื่น ๆคำสั่งจะถูกดำเนินการโดยตรงตามที่เรียกจากภายในโปรแกรมไม่จำเป็นในกรณีเหล่านี้ที่จะมีอาร์เรย์จุดสุดยอดเนื่องจากคำสั่งสำหรับการวางและการวาดจุดสุดยอดสามารถส่งโดยตรงไปยังฮาร์ดแวร์แม้ว่าจะอาจทำให้เกิดปัญหาประสิทธิภาพที่ร้ายแรงสำหรับการเรนเดอร์โหมดที่ไม่ใช่ขั้นตอนข้อมูลเกี่ยวกับวัตถุ 3 มิติหรือโมเดลจำเป็นต้องวางไว้ในอาร์เรย์จุดยอดดังนั้นจึงมีโครงสร้างที่ OpenGL reg;สามารถตีความได้อย่างง่ายดาย;อาร์เรย์นั้นจะต้องถูกเก็บไว้ในพื้นที่พิเศษของหน่วยความจำที่รู้จักกันในชื่อ OpenGL บัฟเฟอร์จุดสุดยอด

ด้วยตัวเองบัฟเฟอร์จุดสุดยอดไม่จำเป็นต้องมีคุณลักษณะพิเศษใด ๆ นอกเหนือจากการรวบรวมข้อมูลที่สมบูรณ์ที่ใช้ในการวาดวัตถุเมื่อ OpenGL reg;บัฟเฟอร์จุดสุดยอดถูกแปลงเป็น OpenGL reg;จุดยอดบัฟเฟอร์บัฟเฟอร์ผ่านส่วนขยาย OpenGL อย่างไรก็ตามมีลำดับพิเศษของเหตุการณ์เกิดขึ้นเพื่อช่วยเพิ่มประสิทธิภาพการวาดภาพของวัตถุที่กำหนดไว้ในบัฟเฟอร์จุดสุดยอดกล่าวคือบัฟเฟอร์ได้รับการจัดสรรและจัดเก็บไว้ในหน่วยความจำกราฟิกการ์ดบนฝั่งเซิร์ฟเวอร์ของการตั้งค่าไคลเอนต์เซิร์ฟเวอร์ OpenGL ใช้.การคำนวณบางอย่างสามารถทำได้ล่วงหน้าบน VBO เพื่อให้สามารถแสดงผลได้เร็วที่สุดนอก VBO บัฟเฟอร์จุดสุดยอดธรรมดามักจะไม่ได้รับการรักษานี้และสามารถจัดสรรและใช้งานได้เช่นประเภทข้อมูลอื่น ๆ