Archive

خريطة الإضاءة : دورة OpenGL لغة c++

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

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

المواد وبالانجليزية Material وتشير بأن كل كائن يتفاعل مع الأضواء ، ويتم التعبير المواد من خلال البريق واللمعان الذي يظهر انعكاس الأنسجة texture في فضاء الرسم 3D.[1] بعض المواد تتفاعل مع الانعكاس دون تشتت و بإحداثيات انعكاس كبيرة ، بالتالي في حال ما أردنا محاكاة المواد أثناء الانعكاس فقد وفرت لنا مكتبة OpenGL الكثير من… Read More

الإضاءة الأساسية : دورة OpenGL لغة c++ الدرس الرابع عشر

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

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

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

كاميرا اوبن جل : دورة OpenGL لغة c++ الدرس الثاني عشر

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

نظام الإحداثيات : دورة OpenGL لغة c++ الدرس الحادي عشر

نظام الإحداثيات هو أحد أجزاء الرسم المتعلقة بــ 3D ، ويعبر OpenGL عن جميع النقاط التي يمكن رؤيتها وفقًا إلى ما يتم تعيينه من إحداثيات. ولا شك بأن جميع إحداثيات XYZ هي بالأساس واقعة بين النقطتين -1 و 1 من المجال (العمق Z).[1] على سبيل المثال ، فإن أي من النقاط التي خارج هذا المدى… Read More

خاصية التحويل : دورة OpenGL لغة c++ الدرس العاشر

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

تفعيل 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