GLFW هي مكتبة مفتوحة المصدر ومتعددة المنصات لتطوير تطبيقات OpenGL وOpenGL ES وVulkan. فهو يوفر واجهة برمجة تطبيقات بسيطة ومستقلة عن النظام الأساسي لإنشاء النوافذ والسياقات والأسطح وقراءة المدخلات والتعامل مع الأحداث وما إلى ذلك.
يدعم GLFW أصلاً أنظمة التشغيل Windows وmacOS وLinux والأنظمة الأخرى المشابهة لنظام Unix. في نظام Linux، يتم دعم كل من Wayland وX11.
تم ترخيص GLFW بموجب ترخيص zlib/libpng.
يمكنك تنزيل أحدث إصدار ثابت كمصدر أو ثنائيات Windows. يحتوي كل إصدار يبدأ بالإصدار 3.0 أيضًا على علامة توضيحية مقابلة مع الأرشيف المصدر والثنائي.
الوثائق متاحة على الإنترنت ومضمنة في جميع الأرشيفات المصدرية والثنائية. راجع ملاحظات الإصدار للتعرف على الميزات الجديدة والتحذيرات والإهمال في الإصدار الأخير. لمزيد من التفاصيل راجع تاريخ الإصدار.
الفرع master
هو فرع التكامل المستقر ويجب دائمًا تجميعه وتشغيله على جميع الأنظمة الأساسية المدعومة، على الرغم من أن تفاصيل الميزات المضافة حديثًا قد تتغير حتى يتم تضمينها في الإصدار. تتوفر الميزات الجديدة والعديد من إصلاحات الأخطاء في الفروع الأخرى حتى تصبح مستقرة بدرجة كافية لدمجها.
إذا كنت جديدًا على GLFW، فقد تجد البرنامج التعليمي لـ GLFW 3 مفيدًا. إذا كنت قد استخدمت GLFW 2 في الماضي، فهناك دليل انتقالي للانتقال إلى GLFW 3 API.
يوجد GLFW بسبب مساهمات العديد من الأشخاص حول العالم، سواء عن طريق الإبلاغ عن الأخطاء، أو توفير دعم المجتمع، أو إضافة ميزات، أو مراجعة التعليمات البرمجية أو اختبارها، أو تصحيح الأخطاء، أو تدقيق المستندات، أو اقتراح الميزات أو إصلاح الأخطاء.
تمت كتابة GLFW بشكل أساسي بلغة C99، مع كتابة أجزاء من دعم macOS بلغة Objective-C. يتطلب GLFW نفسه فقط الرؤوس والمكتبات لنظام التشغيل ونظام النوافذ لديك. لا يحتاج إلى أي رؤوس إضافية لواجهات برمجة تطبيقات إنشاء السياق (WGL، GLX، EGL، NSGL، OSMesa) أو تقديم واجهات برمجة التطبيقات (OpenGL، OpenGL ES، Vulkan) لتمكين الدعم لها.
يدعم GLFW التجميع على نظام التشغيل Windows باستخدام Visual C++ 2013 والإصدارات الأحدث، وMinGW وMinGW-w64، وعلى نظام macOS مع Clang وعلى Linux والأنظمة الأخرى المشابهة لـ Unix مع دول مجلس التعاون الخليجي وClang. ومن المحتمل أن يتم تجميعه في بيئات أخرى أيضًا، ولكن لا يتم اختبار ذلك بانتظام.
تتوفر ثنائيات مجمعة مسبقًا لجميع المجمعات المدعومة على نظامي التشغيل Windows وmacOS.
راجع دليل التجميع لمزيد من المعلومات حول كيفية تجميع GLFW بنفسك.
راجع وثائق البرامج التعليمية والأدلة ومرجع واجهة برمجة التطبيقات.
راجع دليل المساهمة لمزيد من المعلومات.
يدعم GLFW نظام التشغيل Windows XP والإصدارات الأحدث وmacOS 10.11 والإصدارات الأحدث. يتم دعم Linux والأنظمة الأخرى المشابهة لـ Unix التي تعمل بنظام X Window System حتى بدون بيئة سطح المكتب أو الامتدادات الحديثة، على الرغم من أن بعض الميزات تتطلب تشغيل النافذة أو مدير الحافظة. تتطلب الواجهة الخلفية لـ OSMesa إصدار Mesa 6.3.
راجع دليل التوافق في الوثائق لمزيد من المعلومات.
يحتاج GLFW نفسه فقط إلى الإصدار CMake 3.16 أو الأحدث والرؤوس والمكتبات لنظام التشغيل ونظام النوافذ لديك.
تعتمد الأمثلة وبرامج الاختبار على عدد من المكتبات الصغيرة. توجد هذه في الدليل deps/
.
يتم إنشاء الوثائق باستخدام Doxygen إذا تمكن CMake من العثور على هذه الأداة.
يتم الإبلاغ عن الأخطاء إلى متتبع المشكلات لدينا. يرجى مراجعة دليل المساهمة للحصول على معلومات حول ما يجب تضمينه عند الإبلاغ عن خطأ ما.
GLFW_UNLIMITED_MOUSE_BUTTONS
الذي يسمح بالإبلاغ عن أزرار الماوس التي تتجاوز حدود الرموز المميزة لزر الماوس (#2423)QuartzCore
باعتباره تبعية لوقت الارتباطglfwInit
إلى المُركب بدون مقعد (#2517)VK_EXT_headless_surface
EGL_MESA_platform_surfaceless
GLFW_CONTEXT_CREATION_API
على GLFW_NATIVE_CONTEXT_API
(#2518) على glfw.org، يمكنك العثور على أحدث إصدار من GLFW، بالإضافة إلى الأخبار والوثائق وغيرها من المعلومات حول المشروع.
إذا كانت لديك أسئلة تتعلق باستخدام GLFW، فلدينا منتدى.
إذا كان لديك خطأ تريد الإبلاغ عنه، أو تصحيحًا لإرساله، أو ميزة ترغب في طلبها، فيرجى تقديمها في أداة تعقب المشكلات على GitHub.
أخيرًا، إذا كنت مهتمًا بالمساعدة في تطوير GLFW أو نقله إلى النظام الأساسي المفضل لديك، انضم إلينا في المنتدى أو GitHub.