كيفية استخدام OpenGL بدون مدير نافذة في Linux؟
-
25-09-2019 - |
سؤال
لقد انتهيت للتو من كتاب LFS ونظام Linux الخاص بي يعمل الآن. أرغب في استخدام OpenGL لعرض الرسومات على الشاشة ، في حين أن الحزمة المثبتة الوحيدة الآن هي تلك الموضحة على http://www.linuxfromscratch.org/lfs/view/stable/chapter03/packages.html.
لا أريد تثبيت شيء مثل Gnome أو Kde أو X.org. بدلاً من ذلك ، أريد استخدام OpenGL مباشرة من برامجي. هل هذا ممكن ، وكيف يمكنني القيام بذلك؟ أم أنها سهلة بنفس القدر (لا أعتقد ذلك: 'P) ككتابة تطبيق OpenGL الذي يعمل بملء الشاشة؟
المحلول
ليس عليك تثبيت Gnome أو KDE. يتم استخدامها في Windows المدارة ، ويمكنك تشغيل تطبيقات رسومية دون وجود مدير نافذة.
لذلك ، سيكون عليك تثبيت خادم X. خادم X مسؤول عن رسم الأشياء على شاشتك. بدون خادم X ، لا يمكنك تشغيل التطبيقات الرسومية.
بمجرد تثبيت X ، قم بتشغيله ، وتصدير الخاص بك DISPLAY
متغير البيئة ، والباقي يشبه كتابة تطبيق OpenGL الذي يعمل بملء الشاشة :-)
نصائح أخرى
kmscube
مثال DRM
من الممكن أن يكون العرض التوضيحي الأكثر شعبية متاحًا https://github.com/robclark/kmscube الذي يستخدم OpenGL و EGL.
لسوء الحظ ، فإن حزمة Ubuntu 18.04 مع برامج تشغيل الملكية Nvidia لا تعمل بالنسبة لي:
drmModeGetResources failed: Invalid argument
failed to initialize legacy DRM
تقرير الشوائب: https://github.com/robclark/kmscube/issues/12
لكنني جعلتها تعمل على المحاكي.
يستغرق الشاشة بأكملها ، ويظهر مكعب غزل ملون.