يدعم Godot محرّكَي عرض: GLES2 وGLES3. يجب عليك الاختيار بين GLES2 أو GLES3 عند بدء مشروعك، وتجنب التبديل إن أمكن. يمكن للمشروعات التبديل بين محركي العرض هذين، لكن هذا التحوّل يتطلب عملاً إضافيًا في عملية النقل.
وعلى نظام التشغيل Android، تستخدم أجهزة العرض هذه واجهات برمجة تطبيقات OpenGL ES 2.0 وOpen ES 3.0 على التوالي. يتميز عارض GLES3 بإمكانيات وميزات أكثر تطورًا، في حين يتوافق عارض GLES2 مع المزيد من أجهزة Android. وتنتج أجهزة العرض أيضًا إخراجًا مرئيًا مختلفًا قليلاً لبيانات مشهد الإدخال المتطابقة. ينتج هذا التفاوت عن عارض GLES2 الذي يستخدم مساحة لون sRGB بينما يستخدم عارض GLES3 مساحة لون خطية.
اختيار عارض
خدمات الموقع الجغرافي في حالات الطوارئ (GLES2)
ويكون عارض GLES2 هو الأنسب للمشاريع ثنائية الأبعاد أو ثلاثية الأبعاد ذات متطلبات الرسومات المتواضعة، كما أنه متوافق تقريبًا مع جميع أجهزة Android النشطة. إذا تم تصميم مشروعك للعمل بشكل جيد على الأجهزة القديمة، وتنوي دعمها، فقد يكون GLES2 هو الخيار الأفضل.
من القيود المهمة على عارض GLES2 على Android عدم توافق سوى تنسيق زخرفة مضغوط واحد: ETC1. لا يدعم ETC1 قناة ألفا. قد تستخدم محركات أخرى زخارف ETC1 مزدوجة كحل بديل، مع زخرفة واحدة تشتمل على بيانات اللون وزخرفة ثانية تتضمن بيانات قناة ألفا. لا يفعل جودوت ذلك. يجب أن تستخدم المشروعات التي تستخدم عارض GLES2 على Android زخارف غير مضغوطة عند تضمين قناة ألفا. تستخدم الزخارف غير المضغوطة ذاكرة أكبر بكثير ولا تعمل بشكل جيد مثل الزخارف المضغوطة. وقد تواجه الأجهزة القديمة ذات الموارد المحدودة على وجه الخصوص مشاكل عند استخدام زخارف كبيرة غير مضغوطة، بما في ذلك نفاد مساحة الذاكرة.
قد لا تكون ميزات العرض المتقدمة متاحة لعارض GLES2. وتشمل القيود المفروضة على عارض GLES2، على سبيل المثال لا الحصر، ما يلي:
- قياس الأداء ضعيف لكل ضوء نشط في الوقت الفعلي.
- عدم التوافق مع ميزات العرض، مثل نطاق الدقة العالية أو خصائص الانكسار أو انعكاسات مساحة الشاشة أو التظليل في مساحة الشاشة
- القيود المفروضة على مدى تعقيد أداة التظليل.
- عدم توفّر دعم للإضاءة العالمية في الوقت الفعلي.
- عدم دعم تسريع وحدة معالجة الرسومات للجسيمات.
خدمات مقارنة الأسعار
ويتوافق عارض GLES3 مع ما يقارب% 90 من أجهزة Android النشطة التي تتوافق مع OpenGL ES 3.0. لا يتوافق إصدار OpenGL ES 3.0 إلا على أقدم أجهزة Android النشطة.
على الرغم من توافق عارض GLES3 مع أي جهاز OpenGL ES 3.0، لكن من غير المرجح أن تعمل الأجهزة القديمة بمعدّلات إطارات مقبولة. تحتوي بعض الأجهزة القديمة أيضًا على أخطاء في برنامج تشغيل الرسومات في عمليات تنفيذ OpenGL ES 3.0. يتضمن عارض GLES3 على Android إجراءات محدودة للتخفيف من أخطاء السائقين. لا تزعجك هذه المشاكل على الأجهزة الأحدث.
يتوافق عارض GLES3 مع تنسيق ضغط بنية ETC2 على Android. على عكس ETC1، يتضمن برنامج ETC2 دعمًا لقناة ألفا.
لمزيد من المعلومات، اطّلع على مستندات Godot - الاختلافات بين GLES2 وGLES3