ماهي واجهة Open GL ؟ وما وظيفتها؟


مكتبة الرسوميات المفتوحة أو أوبن جي إل (Open Graphics Library) عبارة عن واجهة برمجة التطبيقات مستقلة تعمل في عدة بيئات وعدة أنظمة تشغيل وهي متوافقة مع عدة لغات مصممة لإنتاج رسوميات الحاسب ثنائية الأبعاد وثلاثية الأبعاد. تحوي الواجهة أكثر من 250 استدعاء مختلف يمكن استخدامها لرسم مناظر ثلاثية الأبعاد معقدة باستخدام مكوّنات هندسيّة بسيطة كنقط والخطوط والمضلّعات ,في عالم رسومات الحاسب تعرف هذه المكوّنات باسم البدائيَات.

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

تم تصميم مكتبة على أساس محورين أساسييّن هما:
توفير واجهة موحّدة وسهلة للوصول إلى قدرات المكوّنات الصلبة في الرسومات وخاصّة الثلاثيّة الأبعاد منها.
إخفاء الاختلافات المتواجدة بين شتّى أنواع المنصّات الصلبة عبر إجبار كلّ الإنجازات المتوافقة على دعم جميع الميّزات المعرّفة في المواصفات.
تتمثّل المهمّة الرئيسيّة للمكتبة في التعرّف على البدائيّات الهندسيّة (نقط، خطوط ومضلّعات أساسا) ومن ثمّ تحويلها إلى مجموعة من العنصورات. تعرف هذه العمليّة في عالم رسومات الحاسب بماسورة الرسوميات. أغلب استدعاءات أو بالأصحّ آوامر المكتبة تقوم أساسا بوصف خصائص البدائيّات (أساسا الإحداثيّات) أو في بعض الأحيان توفير بعض التوجيهات إلى الماسورة لتعديل كيفيّة معالجتها للبدائيّات.

إن واجهة الـ OpenGL تتألف من أكثر من 250 وظيفة مختلفة والتي يمكن استخدامها لرسم مشاهد معقدة ثلاثية الأبعاد. لقد طورت هذه اللغة بواسطة شركة Silicon Graphics في عام 1992 والتي تستخدم ضمن الـ CAD والواقع الافتراضي والتصور العلمي.. إلخ. كما أنها تستخدم في ألعاب الفيديو حيث أنها تتنافس مع Direct3D على منصات مايكروسوفت ويندوز

في أبسط مستوي لأوبن جي إل هي عبارة عن مواصفات، بمعنى آخر وبسيط هي عبارة عن مستند يصف مجموعة من المهام الدقيقة والسلوكيات التي يجب أن تؤديه.
مثال بسيط: إن أي لعبة تستخدم جرافيكس ضخمة تحتاج لوصول مباشر إلى كرت الشاشة فهذا الوصول يتم عن طريق استخدام الـ OpenGL والتي يستخدم منصة API بدلا من الـ Virtual Machine كـ NET. Framework
تعمل هذه الواجهة كحلقة وصل بين أي برنامج وبين مجموعة من المزايا المقدمة في النظام... وهي مقسمة إلى عدة أقسام منها على سبيل المثال Direct3D وهذه المكتبة خاصة بعملية التواصل بين البرنامج والمسرع الرسومي ومنها أيضا DirectSound وهذه خاصة بعمليات التواصل بين البرنامج وبطاقة الصوت...

OpenGL هي مكتبة أخرى طورتها شركة SGI وحاليا تطورها مجموعة [1] Khronos Group... تمكنك من التواصل مع المسرع الرسومي بشكل أسهل وهي تنافس مكتبة Direct3D والتي تطورها مايكروسوفت

إذا أردنا مثالا بسيطا عن مهمة هذه المكتبة
تصور أنك تريد رسم مكعب مثلا... في الحالة العادية ودون استخدام إحدى هذه المكتبات فإنك ستحتاج لمخاطبة المسرع الرسومي بشكل مباشر بلغة صعبة جدا وتعقيدات كثيرة مما يزيد من صعوبة البرمجة ويزيد من تكاليفها أيضا...
أما حين استخدام واجهة Direct3D فالذي عليك فعله أولا هو استدعاء أوامر المكتبة وستحتاج هنا لمكتبة Direct3D فقط من مجموعة مكتبات DirectX ثم تأمرها برسم المضلعات (وهي أشكال ثلاثية الأضلاع في عالم ثلاثي الأبعاد تكون الأساس الخاص بكل الرسومات الثلاثية الأبعاد) وتحدد نقاط كل مضلع الثلاث في الفضاء الثلاثي وتحدد لونه ونوعه والكثير من مزاياه مثل المواد وغيرها ثم تنتهي لتتولى المكتبة بعد ذلك عملية مخاطبة المسرع الرسومي ورسم كل الأمور بشكل أسهل بكثير مما لو قمت برسم كل شي يدويا
طبعا قد تتساءل أولا تتطلب هذه العملية قوة معالجة إضافية لتحويل البيانات ؟؟؟
سنقول لك لا لأن المسرع الرسومي يأتي بدعم مسبق لهذه التعليمات... لهذا ترى المسرعات الحديثة تدعم مكتبة DirectX 9 بينما القديمة DirectX 8.1 والتي قبلها 8 و7.1 و7 وهكذا... يقوم المعالج الرسومي تلقائيا برسم هذه الأوامر أي أنه أصبح يفهم أوامر الـ DirectX والـ OpenGL دون الحاجة للترجمة

ولكن عيب هذه الطريقة انك بحاجة لتطوير المسرع كلما ظهرت نسخة جديدة من DirectX أو OpenGL وكل نسخة جديدة تتضمن مزايا أكثر وقوة أكبر وتحسينات إضافية... وعلى فكرة لأن سرعة تطور DirectX أكبر من سرعة تطور OpenGL ولكن OpenGL أغنى من DirectX ولكنه أصعب أيضا... لهذا يستخدم OpenGL في البرامج الرسومية المحترفة وتوجد نسخ خاصة من البطاقات الرسومية تقدم دعما أقوى لهذه الواجهة.

المصدر : ويكبيديا



Hm

وائل عبد الكافي : من الجمهورية العربية السورية, اهتمامي وحبي للتكنولوجيا والجرافيك والتصميم هو ما جعلني أستمر ليس فقط لتقديم المواضيع بل أيضا لمساعدة اخواني الذين يشاركونني بنفس الاهتمامات ,لدي هوايات اخرى منها الرياضة ، القراءة ، والتصميم بحد ذاته ومدونة عالم التقنية والتصميم تعبر عما أهواه .

ليست هناك تعليقات

جميع الحقوق محفوظة لــ عالم التقنية والتصميم 2017 ©