Archive

تفعيل texture : دورة OpenGL لغة c++ الدرس التاسع

تفعيل texture يساعد في تعبئة النماذج الخاصة بالرسم 2D و 3D يمكن تفعيل texture ليعمل على جميع تقنيات الرسم ، حيث أن أفضل مثال على استدعائه هو نموذج منزل 3D. لا شك بأنه يظهر أمام الكاميرا على أنه منزل حقيقي مليئ بقطع الرسم التي يتم تركيبها بواسطة الأنسجة Textures. يقوم النسيج على تكرار حجارة ذلك… Read More

ملف GLSL : دورة OpenGL لغة c++ الدرس الثامن

ملف GLSL يزداد حجمه عند تخصيص بعض المتجهات بحسب ما يستدعي من وظائف uniforms. حيث أن ذلك من شأنه أن يعيق فهم وقراءة الشيفرة كلما ازداد استخدام ظلال GLSL. وبالتالي يتعين علينا بناء ملف GLSL لكل من Vertex Shader و Fragment Shader لتنظيم قراءة الشيفرة. على سبيل المثال ، فقد قمنا بتخصيص بضعًا من الدوال… Read More

يونيفورم OpenGL : دورة OpenGL لغة c++ الدرس السابع

يونيفورم OpenGL هي طريقة أخرى لتمرير البيانات من المشروع إلى وحدة CPU ومن ثم إلى وحدة معالجة الرسومات GPU.[1] مع  ذلك قد يختلف يونيفورم OpenGL قليلاً عند المقارنة مع سمات Vertex. حيث تعبر يونيفورم OpenGL عن متغيرات عامة ما يعني أنها متغيرات فريدة من نوعها لكل ظل من ظلال GLSL يجري استخدامه.[1] تعمل متغيرات يونيفورم… Read More

ظلال GLSL : دورة OpenGL لغة c++ الدرس السادس

غالبًا ما تشير ظلال GLSL إلى بعض مهام GPU التي تفسرها بطريقة أكثر منها استغلال للموارد. فهي ليست سوى برامج كود تقوم باستخدام خصائص التحويل بين المدخلات والمخرجات عبر أنابيب الرسم (Pipeline).[1] وإحدى صفات ظلال GLSL الخاصة هو أنه لا يمكن التواصل معها بشكل دائم ، بالتالي فهي برامج معزولة لا تتمكن حتى من التفاعل مع… Read More

رسم مربع بواسطة OpenGL : دورة OpenGL لغة c++ الدرس الخامس

رسم مربع بواسطة OpenGL يتطلب الإلمام ببعض المهام الرئيسية في المثلثات حيث لا تختلف الطريقة كثيرا عنها. كما تتطلب عملية الاستدعاء زيادة في عدد الإحداثيات التي ستتضح فيما بعد أنها عبارة عن مثلثين بــ6 أضلاع. وكذلك الأمر بالنسبة لمكونات EBO (Element buffer object).[1]. حيث يمكن رسم مربع بواسطة OpenGL عن طريق دمج مثلثين من الإحداثيات…. Read More

رسم مثلث : دورة OpenGL لغة c++ الدرس الرابع

يمكن رسم مثلث عبر وظائف مكتبة OpenGL لكن يتطلب الإدراك بأن الشاشة التي نعمل عليها هي ثنائية البعد.[1] وعلى الرغم من أن وظائف OpenGL هي دائمة العمل بالرسم 3D إلا أن ما يحدث هو خداع بصري عن طريق خصائص التحويل والجبر الخطي في البرمجة.[1] على سبيل المثال عند رسم مثلث 2D فإن خصائص بعض الوظائف… Read More

وحدة إدخال OpenGL : دورة OpenGL لغة c++ الدرس الثالث

وحدة إدخال OpenGL هي إحدى الأدوات التي تمكننا من التفاعل مع شاشه أوبن جل. ومع استخدام GLFW يمكن الحصول على شكل من أشكال التحكم الرئيسية في النافذة. وبالتالي تمنح وحدة إدخال OpenGL دالة اتصال رجعية تشير إلى ضبط عمليات الإدخال في وقت مناسب. في هذا الدرس يمكن إنشاء لوحة تحكم بسيطة تقوم بفعل حدث عند… Read More

تفعيل شاشة OpenGL : دورة OpenGL لغة c++ الدرس الثاني

تفعيل شاشة OpenGL يتطلب إجراء عملية ربط لـ المكتبات. وبالتالي يجب تفعيل مكتبتي GLEW و GLFW على بيئه محرر Visual Studio. سوف يتم مسح أي صفحة تم ملؤها بالبيانات في الدرس السابق من خلال تفعيل شاشة OpenGL . في هذا الدرس سوف يتم اضافة ملف جديد باسم main.cpp. يحتوي الملف على دالة سي الرئيسية main. ثم… Read More

مكتبة اوبن جل : دورة OpenGL لغة c++ الدرس الأول

مكتبة اوبن جل هي بالأساس واجهة برمجة تطبيقات الرسم OpenGL.[1] حيث أنها توفر مجموعة كبيرة من الأدوات والوظائف والمتغيرات التي تساعد في معالجة الرسومات ثنائيه وثلاثيه الابعاد.[1] تتيح مكتبة اوبن جل مجموعه من الوظائف المعدة والمجهزة مسبقًا في بطاقات الرسم القياسية في العالم.[1] يمكن الوصول إلى تلك الوظائف من خلال لغات منخفضة المستوى مثل لغة… Read More