كائن إطار المخزن المؤقت

يُعدّ كائن إطار المخزن المؤقت (FBO) امتدادًا لـ OpenGL يسمح بعرض الصور بمرونة على مخازن مؤقتة خارج الشاشة ، بما في ذلك العرض على مخزن مؤقت للنسيج . ويمكن استخدامه لتطبيق مجموعة واسعة من مرشحات الصور وتأثيرات ما بعد المعالجة ، وذلك عن طريق عرض الصور على المخزن المؤقت خارج الشاشة أولًا، ثم تطبيق التأثيرات، قبل إرسالها إلى المخزن المؤقت على الشاشة.

يُستخدم مخزن الإطارات (FBO) في OpenGL لكفاءته وسهولة استخدامه. ولا يعاني استخدام مخزن الإطارات من العبء الإضافي المرتبط بتبديل سياق الرسم في OpenGL ، وقد حلّ إلى حد كبير محل المخزن المؤقت الجزئي (pbuffer) والأساليب الأخرى التي تستخدم تبديل السياق.

يُعد FBO مماثلاً لنموذج أهداف العرض في DirectX .

الاستخدامات

يُستخدم إطار العمل (FBO) بشكل رئيسي في وظيفتين: المعالجة اللاحقة للصور المُعالجة، والتركيب بين المشاهد المختلفة. ومن الأمثلة على ذلك:

  1. تُلتقط الصورة المُعالجة وتُخضع لتقنيات تظليل الأجزاء أو غيرها من التعديلات. وهذا يسمح بتنفيذ العديد من تأثيرات رسومات الحاسوب الشائعة اليوم، بما في ذلك إضافة تأثيرات التمويه أو التوهج.
  2. يمكن استخدام هذه التقنية لإنشاء مشاهد من زوايا مختلفة، على سبيل المثال: شاشة تلفزيون في منزل تعرض المنظر من كاميرا ثانوية. يمكن عرض المشهد من خلال إطار عرض (FBO) إلى نسيج، ثم تطبيق هذا النسيج على سطح التلفزيون. يُطلق على هذه العملية أحيانًا اسم "العرض إلى نسيج" أو RTT.

مزايا مقارنة بالأساليب الأخرى

تُعتبر الطرق التي تتضمن استخدام FBO متفوقة للأسباب التالية:

  • يُعدّ إعداده أسهل من معظم الطرق الأخرى.
  • لا يتطلب تبديل السياق.
  • يكون أكثر كفاءة لأن الموارد يتم مشاركتها ضمن نفس السياق.
  • يتميز بمرونة أكبر لأنه يمكن الحصول على جميع بيانات مخزن العمق ، ومخزن الاستنسل ، وما إلى ذلك.

بنيان

لاستخدام مخزن الإطار (FBO)، يكفي إنشاء نسخة منه. ويأتي مع مخزن الإطار عدة ملحقات. يمكن بعد ذلك ربط هذه الملحقات بمستقبل مُختار: إما نسيج أو مخزن عرض . يمكن لمخزن الإطار عرض نقاط ربط ألوان متعددة (GL_COLOR_ATTACHMENT0 وما فوق)، وعادةً ما تتحقق التطبيقات من اكتمال مجموعة الملحقات المختارة في مخزن الإطار قبل العرض عليها. [ 1 ]

على سبيل المثال:

  • أنشئ FBO وقم بربطه.
  • قم بتوصيل مخزن الألوان (إما كمخزن عرض أو نسيج) بـ FBO.
  • قم بتوصيل مخزن العمق (إما كمخزن عرض أو نسيج) بـ FBO.
  • قم بربط إطار النافذة الأصلي (id=0)
  • قم بعرض النسيج على الشاشة باستخدام مُظلل البكسل، اعتمادًا على كل من معلومات اللون ومعلومات العمق.

مراجع