الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

مشروع Google ANGLE يتجاوز اختبارات OpenGL ES 2.0

بدأه Abdullah.Alshammeri في 1 ديسمبر 2011 · 9 رد · 1,238 مشاهدة · في الأخبار والنقاشات التقنية
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

أعلن فريق Google ANGLE أنه نجح و حصل على شهادة بدرجة امتياز بعد أن أنهى Implementation كامل لمواصفات OpenGL ES 2.0 ، و تجاوز الاختبارات المخصصة لذلك . ماذا يعني هذا ؟

1- مع الوقت لن تحتاج إلى Direct3D ( إلا إن كنت تريد دعم شيء غير موجود في مواصفات OpenGL ES 2.0 ) !

2- مشروع WebGL لن يواجه مشاكل مع نظام Windows ، فالتطبيق سيتم تحويله من OpenGL APIs إلى Direct3D APIs .

3- اختيار Mozilla لمشروع ANGLE في عمل Implementation للـ WebGL لمتصفحها Firefox كان قرار حكيم .

*

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

بغض النظر عن كل شيء ، نتمنى ينجح المشروع ، طبعاً نحن نتحدث عن OpenGL ES 2.0 و ليس OpenGL .

http://blog.chromium.org/2011/11/opengl-es-20-certification-for-angle.html

7

logo1.png تطبيق طمأنينة ، نسخة بيتا على أندرويد

عبدالله الشمّري - Al-Shammari

CodingAlone.com

twitter @abshammeri

abshammeri AT gmail.com

github : abshammeri

#2
اقتباس
المشكلة لمن لا يدركها ، هي مشكلة عويصة ، استعصت عن الحل لسنين ، و ان ظهرت بعض المكتبات التي تدعي أنها تقوم بهذا ، لكن ليست مكتملة. باختصار نحن نعيش سنة غير عادية و يجب أن تشعر بهذا ... حتى لو كنت لاتهتم بكل " هذا الكلام الفارغ" . فقط ما نأمله أن لا يتأثر الأداء بسبب هذا التحويل ،

ممكن توضيح اكثر ؟!

اين هي المشكلة المقصودة لم افهم !!

يَارَبُ إِن ضَاقَت قُلُوُب الْنَّاسٍ عَنْ مّافِي .. مِنْ خَيْرٍٍ فَعَفْوكَ لَا يَضِيْقْ ..

#4

أخي عبدالله هل من توضيح لمن هم ليسوا مهتمين بمكتبات الرسوم للدرجه مثلنا :D

#5

معذرة على التأخر ، لم أكن في المود لأرد على شيء :-/ .

حسب فهمي المتواضع ، الفكرة كالتالي :

- نريد نرسم شيء على الشاشة ( أو تطوير لعبة ) و نريد أن نستفيد من قدرات البطاقة الرسومية ( GPU مثلاً ) ، هناك حلّين Direct3D على Windows أو OpenGL على جميع الأنظمة بما فيها Windows .

- المنطق يقول نختار OpenGL لأنها تعمل على أكثر من نظام ، ونقدر نقول أنها Standard على مستوى المصنّعين .

- للأسف OpenGL على Windows منبوذة لأن Microsoft لاتهتم بها وتهتم فقط بـ Direct3D . عندما تشتري جهاز يعمل على Windows 7 مثلاً ، قد تجد الجهة المصنّعة للبطاقة الرسومية قد ضمّنت Drivers تدعم Direct3D وتتجاهل أو تدعم OpenGL بشكل جزئي .. يبدو انها اتفاقات بين الشركات المصنعة و Microsoft ،

- زادت الحاجة إلى الاهتمام أكثر في OpenGL لأنها أصبحت مضمّنة مع المتصفحات الحديثة WebGL ، وهي نسخة تعتمد على مواصفات OpenGL ES تقريباً ( نفس المواصفات المستخدمة في الأنظمة الحديثة مثل iOS و Android ) .

- لحل هذه المشكلة قالوا ، بدلاً من انتظار مصنّعي البطاقات الرسومية لعمل implementation لـ OpenGL على Windows في جميع بطاقاتهم الرسومية بشكل منتظم ( وهذا لن يحدث ) ، لماذا لا نبني طبقة فوق Direct3D تحوّل من دالة OpenGL إلى Direct3D .

- هذا ما يقوم به مشروع ANGLE ، عندما تكتب glDrawPoint ، يحولها إلى d3dDrawPoint .

أي أنك إذا رأيت عبارة تقول أن هذا الكمبيوتر يدعم Direct3D 9، فهذا يعني بالضرورة أنه يدعم OpenGL ES 2.0 ، في السابق كان يجب أن نتأكد أن كلمة OpenGL مكتوبة على كرتونة الكمبيوتر لأنه من الممكن أن يكون مصنّع الكرت لم يهتم بدعم OpenGL كما ينبغي . أشهر مثال كروت شركة Intel ، تتأخر في دعم OpenGL . بعكس nvidia و ATI .

هذا ينطبق فقط على OpenGL ES 2.0 النسخة الموجهة للأجهزة الصغيرة مثل الموبايل أو إلى المتصفحات مثل chrome . بينما OpenGL 4.x مثلاً ، فلا زال يجب أن تتأكد أن صاحب البطاقة الرسومية يدعمها ، ولا تكتفي فقط بدعم DirectX 11 مثلاً .

هذا فهمي للموضوع ..

3

logo1.png تطبيق طمأنينة ، نسخة بيتا على أندرويد

عبدالله الشمّري - Al-Shammari

CodingAlone.com

twitter @abshammeri

abshammeri AT gmail.com

github : abshammeri

#6

شكرا عبدالله.. لكن أليس وجود layer في الوسط يستهلك performance عما لو كان مصنعي الكروت يدعمون الـ APIs بنفسهم خصوصا وانها موجهه للأجهزه الصغيره؟!

#7

لا اعرف ، لكن المنطق يقول انها ستكون ابطا لكن هذا يعتمد على ال implementation

في لغة Cpp هناك طرق سحرية تجعل من تغليف كود ما غير مكلف ، تستخدم شعوذة Template, او باستخدام #define لو كانوا مستخدمين لغة C بمعنى عملية التحويل تتم اثناء الترجمة ، او قبلها تحديدا

مجرد تخمين

1 −1

logo1.png تطبيق طمأنينة ، نسخة بيتا على أندرويد

عبدالله الشمّري - Al-Shammari

CodingAlone.com

twitter @abshammeri

abshammeri AT gmail.com

github : abshammeri

#8
اقتباس
شكرا عبدالله.. لكن أليس وجود layer في الوسط يستهلك performance عما لو كان مصنعي الكروت يدعمون الـ APIs بنفسهم خصوصا وانها موجهه للأجهزه الصغيره؟!

لا أعتقد أنها تستهلك أي موارد إضافه في حال تم إنشاءها بطرق ذكيه , وما فهمته من شرح أخي عبدالله أنهم يقومون بتحويل الدوال من أ إلى ب وربما أنهم يستخدمون نظام شبيه بنظام الكاش أو الكنفيرتر بحيث تتم عمليه التحويل مره واحده وبعدها تقوم بمحاكاة الديريكت بدون وسيط

مجرد أفكار فقط blink.gif

تم تعديل هذه المشاركة بواسطة bastr3 في 5 ديسمبر 2011 في 03:40

CMS Sfhati , Website Generator


نظام إدارة المحتوى صفحتي ... جربه الآن 


 


small-logo.png

#9
اقتباس
- لحل هذه المشكلة قالوا ، بدلاً من انتظار مصنّعي البطاقات الرسومية لعمل implementation لـ OpenGL على Windows في جميع بطاقاتهم الرسومية بشكل منتظم ( وهذا لن يحدث ) ، لماذا لا نبني طبقة فوق Direct3D تحوّل من دالة OpenGL إلى Direct3D .

شكرا عبدالله .. كم من البيانات تم ارساله في هذا الموضوع وانت تحديدا تعرف السبب ..

السؤال البسيط الذي يطرح نفسه .. قلت انهم فكروا في ان يصمموا طبقة فوق Diract3D تحول من دالة OpenGL الى Diract3D .. طيب هذا فقط في حال انظمة الوندوز ؟ لاننا نعرف ان openGL موجهة الى كل الانظمة وعلى جميع المنصات ولا تخص جهة دون الاخرى .. اذا هل هذه الطبقة فقط لوندوز ؟

يَارَبُ إِن ضَاقَت قُلُوُب الْنَّاسٍ عَنْ مّافِي .. مِنْ خَيْرٍٍ فَعَفْوكَ لَا يَضِيْقْ ..

#10

نعم فقط لـ Windows .

بالمناسبة ، التفاصيل مع السورس كود موجود في الموقع الرسمي ، تأخذها من مصدرها أفضل :

http://code.google.com/p/angleproject/

اقتباس
, وما فهمته من شرح أخي عبدالله أنهم يقومون بتحويل الدوال من أ إلى ب وربما أنهم يستخدمون نظام شبيه بنظام الكاش أو الكنفيرتر بحيث تتم عمليه التحويل مره واحده وبعدها تقوم بمحاكاة الديريكت بدون وسيط

الفكرة من المشروع هي عملية التحويل من أ إلى ب لكن كيف يقومون بهذا ، لا أعرف ؟ لم أتحدث عن التفاصيل البرمجية ، لأني لا أعرف .

logo1.png تطبيق طمأنينة ، نسخة بيتا على أندرويد

عبدالله الشمّري - Al-Shammari

CodingAlone.com

twitter @abshammeri

abshammeri AT gmail.com

github : abshammeri

مواضيع مشابهة