مكتبة OpenGL Extension Wrangler (GLEW) هي مكتبة تحميل امتدادات C/C++ مفتوحة المصدر عبر الأنظمة الأساسية. يوفر GLEW آليات وقت تشغيل فعالة لتحديد امتدادات OpenGL المدعومة على النظام الأساسي المستهدف. يتم عرض وظيفة OpenGL الأساسية والامتداد في ملف رأس واحد. تم اختبار GLEW على مجموعة متنوعة من أنظمة التشغيل، بما في ذلك Windows وLinux وMac OS X وFreeBSD وIrix وSolaris.
http://glew.sourceforge.net/
https://github.com/nigels-com/glew
الإصدار الحالي هو 2.2.0. (سجل التغيير)
المصادر متاحة بصيغة ZIP أو TGZ.
ثنائيات Windows للإصدارين 32 بت و64 بت.
قد تحتوي اللقطات على ميزات جديدة أو إصلاحات للأخطاء أو ملحقات OpenGL جديدة قبل الإصدارات الرسمية المختبرة.
glew-20220402.tgz GLEW 2.2.0 - مع إصلاح glCreateProgressFenceNVX
يوصى بشدة بالبناء من لقطة إصدار tgz أو Zip. يعد سير عمل إنشاء التعليمات البرمجية مزيجًا معقدًا من gnu make وperl وpython، والذي يعمل بشكل أفضل على Linux أو Mac. من المعروف أن إنشاء التعليمات البرمجية يعمل على نظام التشغيل Windows باستخدام MSYS2. بالنسبة لمعظم المستخدمين النهائيين لـ GLEW، تعد الإصدارات الرسمية هي الخيار الأفضل، مع دعم من الدرجة الأولى.
GNU make هو نظام البناء الأساسي لـ GLEW تاريخيًا. ويتضمن أهدافًا لبناء المصادر والرؤوس لأغراض الصيانة.
Debian/Ubuntu/Mint: $ sudo apt-get install build-essential libxmu-dev libxi-dev libgl-dev
RedHat/CentOS/Fedora: $ sudo yum install libXmu-devel libXi-devel libGL-devel
FreeBSD: # pkg install xorg lang/gcc git cmake gmake bash python perl5
$ make
$ sudo make install
$ make clean
الأهداف: all, glew.lib (sub-targets: glew.lib.shared, glew.lib.static), glew.bin, clean, install, uninstall
المتغيرات: SYSTEM=linux-clang, GLEW_DEST=/usr/local, STRIP=
ملاحظة: قد تحتاج إلى الاتصال make
في المجلد التلقائي أولاً
$ sudo apt install libegl1-mesa-dev
$ make SYSTEM=linux-egl
$ sudo apt install libosmesa-dev
$ make SYSTEM=linux-osmesa
$ sudo apt install mingw-w64
$ make SYSTEM=linux-mingw32
$ make SYSTEM=linux-mingw64
تتم صيانة بنية cmake في الغالب من قبل المساهمين. نظرًا لتعدد حالات الاستخدام، يتم الحفاظ على هذا على أساس أفضل جهد . طلبات السحب هي موضع ترحيب.
مطلوب CMake 3.16 أو أعلى.
Debian/Ubuntu/Mint: $ sudo apt-get install build-essential libxmu-dev libxi-dev libgl-dev cmake git
RedHat/CentOS/Fedora: $ sudo yum install libXmu-devel libXi-devel libGL-devel cmake git
$ cd build
$ cmake ./cmake
$ make -j4
هدف | وصف |
---|---|
توهج | بناء المكتبة المشتركة توهج. |
glew_s | بناء مكتبة توهج ثابتة. |
glewinfo | أنشئ ملف glewinfo القابل للتنفيذ (يتطلب ON BUILD_UTILS ). |
معلومات مرئية | أنشئ visualinfo القابلة للتنفيذ (يتطلب ON BUILD_UTILS ). |
ثَبَّتَ | قم بتثبيت كافة الأهداف الممكّنة في CMAKE_INSTALL_PREFIX . |
ينظف | تنظيف التحف البناء. |
الجميع | بناء كافة الأهداف الممكنة (الهدف الافتراضي). |
المتغيرات | وصف |
---|---|
BUILD_UTILS | قم ببناء الملفين التنفيذيين glewinfo و visualinfo . |
GLEW_REGAL | البناء في الوضع الملكي. |
GLEW_OSMESA | البناء في وضع ميسا خارج الشاشة. |
BUILD_FRAMEWORK | البناء كإطار MacOSX. يوصى بتعيين CMAKE_INSTALL_PREFIX على /Library/Frameworks . |
استخدم ملف مشروع Visual Studio المقدم في build/vc15/
يتم أيضًا توفير مشاريع لـ VC6، وVC10، وVC12، وVC14
متاح من مينجو
المتطلبات: باش، صنع، دول مجلس التعاون الخليجي
$ mingw32-make
$ mingw32-make install
$ mingw32-make install.all
سلسلة الأدوات البديلة: SYSTEM=mingw-win32
متوفر من Msys2 و/أو Mingw-w64
المتطلبات: باش، صنع، دول مجلس التعاون الخليجي
$ pacman -S gcc make mingw-w64-i686-gcc mingw-w64-x86_64-gcc
$ make
$ make install
$ make install.all
سلسلة الأدوات البديلة: SYSTEM=msys, SYSTEM=msys-win32, SYSTEM=msys-win64
glewinfo
هي أداة سطر أوامر مفيدة لفحص إمكانيات تطبيق OpenGL ودعم GLEW لذلك. الرجاء تضمين glewinfo.txt
مع تقارير الأخطاء، حسب الاقتضاء.
---------------------------
GLEW Extension Info
---------------------------
GLEW version 2.0.0
Reporting capabilities of pixelformat 3
Running on a Intel(R) HD Graphics 3000 from Intel
OpenGL version 3.1.0 - Build 9.17.10.4229 is supported
GL_VERSION_1_1: OK
---------------
GL_VERSION_1_2: OK
---------------
glCopyTexSubImage3D: OK
glDrawRangeElements: OK
glTexImage3D: OK
glTexSubImage3D: OK
...
هناك حاجة إلى بيئة Unix أو Mac لإنشاء GLEW من البداية ليشمل ملحقات جديدة أو تخصيص إنشاء التعليمات البرمجية. يتم إعادة إنشاء بيانات الامتداد من دليل مصدر المستوى الأعلى باستخدام:
make extensions
البديل لإنشاء مصادر GLEW من البداية هو تنزيل لقطة تم إنشاؤها مسبقًا (غير مدعومة):
https://sourceforge.net/projects/glew/files/glew/snapshots/
تتم صيانة GLEW حاليًا بواسطة Nigel Stewart مع إصلاحات الأخطاء ودعم ملحق OpenGL الجديد والإصدارات الجديدة.
تم تطوير GLEW بواسطة ميلان إكيتس ومارسيلو ماجالون. كان آرون ليفون، وجو كنيس، وكريس وايمان هم أول المستخدمين وساعدوا أيضًا في عملية التصميم وتصحيح الأخطاء.
الاختصار GLEW نشأ من آرون ليفون. قام Pasi Kärkkäinen بتحديد وإصلاح العديد من المشكلات في GLX وSDL. أنشأ Nate Robins الأداة المساعدة wglinfo
، والتي أجرى مايكل ويمر التعديلات عليها.
ترحب GLEW بمساهمات المجتمع. عادةً ما يتم تنسيقها عبر المشكلات أو طلبات السحب في واجهة ويب GitHub.
تأكد من ذكر تفاصيل النظام الأساسي وسلسلة أدوات المترجم عند تقديم تقرير بالأخطاء. يمكن أن تكون نتائج glewinfo
مفيدة جدًا للمناقشة أيضًا.
بشكل عام، يتم إصدار GLEW عادةً مرة واحدة سنويًا، في وقت قريب من انعقاد مؤتمر Siggraph لرسومات الكمبيوتر. إذا كنت لا تستخدم الإصدار الحالي من GLEW، فتأكد من التحقق من إصلاح المشكلة أو الخلل هناك.
GLEW مشتق في الأصل من مشروع EXTGL بواسطة Lev Povalahev. الكود المصدري مرخص بموجب ترخيص BSD المعدل، وترخيص Mesa 3-D (MIT) وترخيص Khronos (MIT).
يتم إصدار البرامج النصية لإنشاء التعليمات البرمجية تلقائيًا بموجب رخصة GNU GPL.