وOGLplus هو رأس فقط الحرة والمفتوحة المصدر البرمجيات المكتبة التي تطبق واجهة وجوه المنحى رقيقة فوق API برنامج OpenGL C-لغة (واجهة برمجة التطبيقات)، فضلا عن واجهات برمجة التطبيقات مكتبة الصوت المفتوحة وجي.
لقد تم تصميم هذا المشروع لدعم الإصدار 3 أو أعلى واجهة برمجة برنامج OpenGL، الإصدار 1.1 أو أكبر من API مكتبة الصوت المفتوحة (مكتبة الصوت فتح)، وكذلك الإصدار 1.4 أو في وقت لاحق من API. جي.
انها و؛ [س] شكلي، نوع آمنة، وميزات إدارة الموارد التلقائي
وOGLplus هو شكلي، نوع آمنة، ويتميز إدارة التلقائي الموارد، خطأ التشخيص والمعالجة، فضلا عن العمل المشترك مع برنامج OpenGL C API وفصول إضافية تتعلق CG.
وعلاوة على ذلك، فإن البرنامج يوفر وصف اختياري من الموارد والكائنات، هو شكلي للغاية، وتشمل المرافق التالية: النص جعل المرافق، وتحميل شبكة والمولدات، وتحميل الصور ومولدات
.الشروع في العمل مع OGLplus
لتثبيت واستخدام البرنامج OGLplus على نظام التشغيل جنو / لينكس الخاص بك، قم بتحميل أحدث نسخة من المشروع سواء من موقعه الرسمي على الانترنت (انظر الرابط موقع في نهاية المقالة) أو Softoware، حفظ الأرشيف في الخاص دليل الوطن.
استخدم أداة مدير أرشيف لاستخراج محتويات الأرشيف وانتقل إلى موقع أرشيف الملفات المستخرجة عن طريق أي برنامج محاكي الطرفية باستخدام وسقوو]؛ مؤتمر نزع السلاح و[رسقوو]؛ الأوامر (مثل قرص /home/softoware/oglplus-0.57.0).
وتشغيل وسقوو]؛ ./ configure.sh و[رسقوو]؛ الأوامر لتكوين وتحسين المشروع للهندسة المعمارية وحدة المعالجة المركزية ونظام التشغيل. ثم، وفقا لتعليمات تشغيل وسقوو]؛ قرص _build & أمبير؛ & أمبير؛ جعل -f 5 و [رسقوو]؛ الأمر لترجمة البرنامج. تثبيته مع وسقوو]؛ سودو جعل تركيب و[رسقوو]؛ الأوامر.
معتمدة على جنو / لينكس، مايكروسوفت ويندوز وفري
ويتم دعم المشروع OGLplus رسميا على جميع توزيعات جنو / لينكس، وكذلك على أنظمة التشغيل فري و Microsoft Windows. وقد تم اختبار بنجاح على منصات كمبيوتر 32 بت و 64 بت.
ما هو الجديد في هذا الإصدار:
تم ريفاكتوريد الطبقة DeferredHandler والقالب الختامية.
تمت إضافة الزائد جديد من نسيج :: التفاف.
تم تحديث ClientContext والطبقات SettingStack المساعد لها.
تم إضافة الشيكات تخصيص يببنغ إلى محمل صورة PNG.
تشمل GL3W تم إصلاح المسار.
وقد بذلت إصلاحات طفيفة في بناء نظام.
تم تحديث وثائق Quickbook.
ما هو الجديد في النسخة 0.66.0:
تم ريفاكتوريد الطبقة DeferredHandler والقالب الختامية.
تمت إضافة الزائد جديد من نسيج :: التفاف.
تم تحديث ClientContext والطبقات SettingStack المساعد لها.
تم إضافة الشيكات تخصيص يببنغ إلى محمل صورة PNG.
تشمل GL3W تم إصلاح المسار.
وقد بذلت إصلاحات طفيفة في بناء نظام.
تم تحديث وثائق Quickbook.
ما هو الجديد في النسخة 0.63.0:
تم إصلاح بعض رنة -Weverything تحذيرات تجميع.
أضيفت الزائدة جديدة من وظائف CameraMatrix :: المنظور.
تم بإعادة هيكلة الداخلية لOALplus وEGLplus.
تمت إضافة دعم للكائنات عازلة شادر التخزين.
تم إصلاح الخلل في الغيمة وBrushedMetal مولدات الصورة.
تم إصلاح مشكلة مع NV قيادة مسار التعداد.
ما هو الجديد في النسخة 0.61.0:
تم تحديث الكشف عن نسخة GL في بناء نظام للعمل بشكل أفضل على ماك.
وأضيف التبديل المعالج لتمكين / تعطيل Boost.Config.
أضيفت باكر لARB_clip_control.
تم تحديث استثناءات في OALplus.
أضيفت التعدادات رمز الخطأ.
وأضاف ErrorAL.
تم إضافة دالة عضو الرمز إلى ErrorAL، ErrorALC وErrorALUT.
تم إسكات بعض تحذيرات مترجم.
وأضاف الطبقات SizeType وBigSizeType واستبدلت بعض أحداثا من GLsizei وGLsizeiptr بها.
تم تحديث وثائق Quickbook.
ما هو الجديد في النسخة 0.60.0:
تم تحديث المجمع منطقي، المشغل أضيف ~.
تم إضافة وظيفة كائن :: HasInstance.
تم تحديث مغلفة السياق GL الأم.
وDSA الملمس، العازلة ومخزن الإطار المؤقت وريفاكتوريد جزئيا.
تمت إضافة التعداد SingleFace.
أضيفت typedefs FragmentData وFragmentDataSlot.
وأضيف سبيل المثال مستقل جديد.
تم تغيير اسمها الى الدرجة oalplus :: CurrentContext إلى ContextMadeCurrent.
أضيفت #ifdefs المفقودين حول تخصصات EnumAssocType.
تم تحديث وثائق Quickbook.
ما هو الجديد في النسخة 0.59.0:
تم إصلاح المشاكل مع البناء خطوة خطوة و-التنازل عن الكائنات.
أضيفت مغلفة منطقية.
تم تحديث وثائق Quickbook.
ما هو الجديد في النسخة 0.58.0:
أضيفت المتخصصين Noexcept لبعض الوظائف.
تم إضافة وظيفة oalplus :: GetALName.
تم إجراء تغييرات صغيرة لoalplus :: المستمع والأجهزة مغلفة.
تم إصلاحها عدة مهام الصانعين لمنع حدوث مشاكل مع تعيين النفس.
تم ريفاكتوريد مغلفة كائن GL / AL.
تم backported معظم الأمثلة مستقل لMSVC.
تم إصلاح بعض التحذيرات MSVC.
كانت ثابتة التصادم بين وحدات الماكرو المعالج وأسماء المتغيرات.
تم إصلاح المشكلة التي تسببت خرق الوصول في GL الاختبارات الميزة.
تم تحديث وثائق Quickbook.
ما هو الجديد في النسخة 0.57.0:
تم تحديث الطبقة oglplus :: ClientContext، كان ل Reimplemented كومة إعداد عدم استخدام الحاويات المخصصة بشكل حيوي لتخزين القيم دفع.
تم تحديث البرنامج النصي لصناعة السيارات في توليد رؤوس التعداد، والآن يتم إنشاء كل شيء تقريبا المتعلقة التعدادات تلقائيا.
تم إصلاح خطأ في تعريف الزائدة من EnumValueRange.
تم إصلاح المشاكل الصغيرة في تظليل GLSL في الأمثلة.
تم تحديث وثائق Quickbook.
أضيفت المتخصصين Noexcept لبعض الوظائف.
ما هو الجديد في النسخة 0.42.0:
تنسيق وInternalFormat typedef وتمت إضافتها إلى الملمس.
تم إضافة الصور :: الفئة ImageSpec.
وClearImage، ClearSubImage، InvalidateImage، أضيفت InvalidateSubImage وصورة وظائف للنسيج.
تمت إضافة الزائد من Renderbuffer :: التخزين قبول الصور :: ImageSpec.
تم إضافة العديد من مشغلي تركيب السكر لتحديد سمات والتلاعب بسيط من نسيج، مخزن، مخزن الإطار المؤقت وRenderbuffer.
أضيفت التعدادات ContextFlagBit وContextProfileBit.
أضيفت ProfileMask وأعلام وNumShadingLanguageVersion، ShadingLanguageVersion وظائف ShadingLanguageVersion إلى السياق.
تم إضافة وظائف ذات الصلة مولتيسامبلينغ إلى السياق.
تم تحديث التعداد ProgramResourceProperty.
تم إصلاح الخلل في فئة GLSLSource، تتعلق GLSL القراءة من تيارات الإدخال.
تغييرات على نظام البناء:
تحديث GL النسخة الكشف.
تحديث النصي configure.py استخدام متغير LD_LIBRARY_PATH.
وقد أضيف مثالين وتم تحديث العديد من الأمثلة القائمة لإظهار استخدام الميزات الجديدة.
تمت إزالة واحد من الأمثلة القديمة.
وقدمت العديد من التحديثات وثائق.
ما هو الجديد في النسخة 0.41.0:
تم إضافة فئة ShaderProgram.
تم تحديث التعداد BufferMapAccess.
، أضيفت Unmap FlushRange وFlushElements وظائف لخرائط العازلة.
تم إضافة وظائف InvalidateData وInvalidateSubData لالعازلة.
تمت إضافة التعداد FramebufferBuffer.
تم إضافة وظيفة يبطل إلى مخزن الإطار المؤقت.
تمت إضافة قالب EnumArray لتمرير صفائف القيم التعداد.
أضيفت باكر لوظائف glClearBuffer.
وأضيف تسخير جديد للحصول على أمثلة OGLplus باستخدام Qt5.
وأضيف للتنفيذ تقوم GLX-X11 / غير الرسمي لAPI جي، مع العديد من الملحقات.
تم إضافة دعم للملحقات عميل لEGLplus.
تم تحديث eglplus :: السياق، تم إضافة الزائد جديد من MakeCurrent، وتمت إضافة دالة عضو الإصدار.
تم تحديث العديد من الأمثلة لإظهار الميزات الجديدة.
وأضيف نص جديد لتقديم ملفات الفيديو من الأمثلة OGLplus.
تم إصلاح العديد من المشاكل في نظام البناء.
ما هو الجديد في النسخة 0.40.0:
تمت إضافة دعم تجريبي ل OpenGL ES 3.0.
وأضيف المثال الأول لمنصة أندرويد، قابلة للاستخدام مع NDK الروبوت مع GLESv3.
تم إضافة وظيفة نسيج :: GetImage.
أعيد الحسبان-القالب العازلة :: TypedMap إلى فئتين مستوى مساحة الاسم: BufferRawMap وBufferTypedMap.
أضيفت منشئات جديدة للناقلات.
كان ل Reimplemented الصور :: FilteredImage الفئة الأساسية القالب.
تم تغيير اسم الطبقة الصور :: تحولت إلى صور :: TransformComponents.
تم إضافة فلتر الصور :: FlipImageAxes.
تم تحديث محمل XPMImage لدعم غير القياسية صور 3D XPM.
تم نقل تطبيقات من وظائف متعددة إلى الدليل تنفيذ /.
تم إصلاح الخلل عدة.
تم تحديث نظام بناء:
تم تحديث الكشف عن نسخة GL، تم إضافة ملف oglplus / fix_gl_version.hpp إنشاؤها تلقائيا.
تم إصلاح مشكلة مع كشف بانغو / القاهرة.
تم إصلاح مشكلة مع بناء مكتبة OGLplus.
وكانت العديد من البق أخرى إصلاحات.
ما هو الجديد في النسخة 0.38.0:
تم إضافة قالب فئة المجموعة لتجميع الكائنات المدارة خارجيا، جنبا إلى جنب مع التخصصات تنفيذ عمليات ARB_multi_bind على العازلة، عينات، والملمس.
وأضاف الطبقات DSAFramebufferEXT، DSARenderbufferEXT، وDSAVertexArrayEXT تنفيذ عمليات الوصول المباشر للدولة.
وأضيف مثال جديد، وأحد الأمثلة القديمة تم تحديثها لإظهار استخدام الطبقات الوصول المباشر للدولة.
تم إضافة خصائص المجلد إلى بناء نظام لوضع الأهداف في المجلدات الحل عندما يتم اعتمادها.
ما هو الجديد في النسخة 0.37.0:
هذا الإصدار يجلب DSABufferEXT - البديل المباشر الدولة الوصول إلى العازلة، وتقديم الدعم لعدة ملحقات GL، بما في ذلك ARB_buffer_storage، ARB_bindless_texture، ARB_seamless_cubemap_per_texture، ARB_texture_stencil8، وARB_texture_mirror_clamp_to_edge.
وأضافت أيضا الدعم لGLFW3، وSimpleSubdivSphere وSubdivSphere بناة شكل حدودي، العديد من الأمثلة التي تبين وظائف جديدة، والوثائق التي تم تحديثها.
ما هو الجديد في النسخة 0.36.0:
تم تنفيذ مدونة العام للتنظيف، وانتقلت تنفيذ مهام أكثر تعقيدا في ملفات منفصلة لجعل رؤوس أقل تشوش.
وأضيف المجمع لتمديد KHR_debug.
/ تم إضافة رد قابلة لإعادة الاستخدام المرشحات للملحقات debug_output.
تم إضافة أدوات ShapeAnalyzer لتحليل هندسة شبكة، جنبا إلى جنب مع مثال على الاستخدام.
وأضيف سبيل المثال مستقل من استخدام محمل الملف .blend في خلاط و.
تم تحديث الوثائق.
ما هو الجديد في النسخة 0.35.0:
هذا هو الغالب بيان بوغفيكس، لكنه يجلب أيضا نسخة أكثر قوة GL وكشف الإرشاد، وغيرها من التحسينات لنظام البناء.
ما هو الجديد في النسخة 0.34.0:
هذا الإصدار يجلب العديد من التحسينات على نظام بناء، بما في ذلك دعم GL 4.4 الكشف.
وهناك فئة DSATextureEXT يمكن أن تستخدم / استبدال كفاءة أكثر ملاءمة للنسيج إذا كان تمديد EXT_direct_state_access هو متاح.
تمت إضافة دعم لتمكين الترشيح متباين الخواص لالملمس.
أضيفت عدة شركات بناء جملة السكر لأكثر ملاءمة تمكين / تعطيل قدرات GL.
كان ل Reimplemented القالب AutoBind السماح ملزمة تلقائي من عدة أنواع الكائنات وأضيفت العديد من الأمثلة جديدة تظهر الميزات الجديدة.
ما هو الجديد في النسخة 0.33.0:
هذا الإصدار يجلب عدة OGLplus وOALplus أمثلة جديدة وتحديثات لنظام البناء، وCamMatrix :: LookingAt منشئ، والملمس :: MaxLevel جالبة واضعة الوظائف واجتياز القائم على مجموعة من السلاسل تمديد GL، وتحديثات لمولد شكل مكعب و الكائنات محمل شبكة ونسيج مولد المدقق، الخ
كما تم إضافة GL رأس / glcorearb.h لطرف ثالث، تشمل دليل للراحة.
ما هو الجديد في النسخة 0.32.0:
أضيفت EGLplus، التفاف حول جي، والعديد من الأمثلة من استخدامه.
تم تحديث نظام بناء.
ول Reimplemented وVertexAttrib :: إعداد وظائف VertexAttrib :: مؤشر، وأضيفت الزائدة جديدة.
ول Reimplemented الطبقات QuickProgram وHardwiredProgram.
ما هو الجديد في النسخة 0.30.0 بيتا:
تمت إضافة محمل الملف .OBJ.
أضيفت مثالين جديدة تظهر استخدام محمل.
تم إصلاح بعض المشاكل في نظام بناء، وتم تحديث إدارة التبعية / الشرط.
وأضيف مجمع لglTextureView إلى الملمس، وأضيف glGetShaderPrecisionFormat لشادر.
ما هو الجديد في النسخة 0.29.0 بيتا:
وقد ل Reimplemented بناء نظام جزئيا وتحديثها، ولقد تم إصلاح العديد من المشاكل.
تم إضافة أنواع AtomicCounterBindingPoint وShaderStorageBufferBindingPoint وظائف BindBaseAtomicCounter وBindBaseShaderStorage إلى العازلة، وأضيفت ثلاثة أمثلة جديدة.
ما هو الجديد في النسخة 0.28.0 بيتا:
هذا الإصدار يجلب العديد من التغييرات الكبيرة: كان ل Reimplemented وناقلات ومصفوفة القوالب، ول Reimplemented بعض وظائف الإعداد VertexAttribute، وهو النص الجديد تقديم فائدة (على أساس stb_truetype.h) وأضيفت لمحو نوع النص المرافق تقديم، إطارا اختبار ، أضيفت حالات الاختبار الأولى، والعديد من الأمثلة جديدة تظهر الميزات الجديدة، وأكثر من ذلك.
ما هو الجديد في النسخة 0.27.0 بيتا:
تم إصلاح الخلل في بناء المصفوفات المنظور.
تم إصلاح الخلل عدة في الأمثلة والمثال يسخر.
وأضيف الاستعلام :: الفئة المنشط.
تمت إضافة دعم لتقديم وضح للمولدات شكل / رافعات.
لم يتم العثور على التعليقات