English  

كتب opengl specifications

اذا لم تجد ما تبحث عنه يمكنك استخدام كلمات أكثر دقة.

عرض المزيد

مواصفات أوبن جي إل (معلومة)


في أبسط مستوي لأوبن جي إل هي عبارة عن مواصفات، بمعنى آخر وبسيط هي عبارة عن مستند يصف مجموعة من المهام الدقيقة والسلوكيات التي يجب أن تؤديه.

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

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

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

إذا أردنا مثالا بسيطا عن مهمة هذه المكتبة

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

أما حين استخدام واجهة Direct3D فالذي عليك فعله أولا هو استدعاء أوامر المكتبة وستحتاج هنا لمكتبة Direct3D فقط من مجموعة مكتبات DirectX ثم تأمرها برسم المضلعات (وهي أشكال ثلاثية الأضلاع في عالم ثلاثي الأبعاد تكون الأساس الخاص بكل الرسومات الثلاثية الأبعاد) وتحدد نقاط كل مضلع الثلاث في الفضاء الثلاثي وتحدد لونه ونوعه والكثير من مزاياه مثل المواد وغيرها ثم تنتهي لتتولى المكتبة بعد ذلك عملية مخاطبة المسرع الرسومي ورسم كل الأمور بشكل أسهل بكثير مما لو قمت برسم كل شي يدويا

طبعا قد تتساءل أولا تتطلب هذه العملية قوة معالجة إضافية لتحويل البيانات ؟؟؟

سنقول لك لا لأن المسرع الرسومي يأتي بدعم مسبق لهذه التعليمات... لهذا ترى المسرعات الحديثة تدعم مكتبة DirectX 9 بينما القديمة DirectX 8.1 والتي قبلها 8 و7.1 و7 وهكذا... يقوم المعالج الرسومي تلقائيا برسم هذه الأوامر أي أنه أصبح يفهم أوامر الـ DirectX والـ OpenGL دون الحاجة للترجمة

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

المصدر: wikipedia.org