كيف أبدأ تعلم computer graphics
إذا كنت مهتماً بتعلم أساسيات رسومات الكمبيوتر (Computer Graphics)، فستحتاج إلى البدء في تعلم أساسيات الجبر الخطي (Linear Algebra). مفاهيم مثل المتجهات (vectors) والمصفوفات (matrices) والتحولات (transformations) تشكل أساسيات رسومات الحاسوب. على سبيل المثال، عندما تضغط على زر على وحدة التحكم لتدوير شخصية لعبة على الشاشة، فأنت تقوم بتطبيق تحول دوراني (rotational transformation) على شخصية اللعبة.
بعد حصولك على فهم جيد للجبر الخطي، ستحتاج إلى معرفة واجهة برمجة التطبيقات (API) والتي ستتيح لك التواصل مع وحدة معالجة الرسومات (graphics processing unit GPU). واجهة برمجة التطبيقات الشائعة جداً هي (OpenGL). واجهة OpenGL ليست لغة برمجة، وإنما هي واجهة برمجة تطبيقات. واجهة برمجة التطبيقات (API) هي وسيط يتيح للبرامج المختلفة التفاعل مع بعضها البعض. في حالة (OpenGL)، فهي تسمح بالتفاعل بين وحدة المعالجة المركزية (CPU) ووحدة معالجة الرسومات (GPU).
كيف أبدأ تعلم computer graphics
يمكن اعتبار (OpenGL) كجانب عميل (client-side) وجانب خادم (server-side). حيث يتعامل جانب العميل (client-side) مع تحميل البيانات على مخازن (OpenGL) ثم نقلها إلى وحدة معالجة الرسومات (GPU). حاول التعرف على المفاهيم التالية:
- OpenGL Buffer
- Vertex Objecter Buffer
- Vertex Array Object
- Texture Objects
وتعرّف على كيفية تحميل البيانات في هذه المخازن المؤقتة وحول عملية الـ(OpenGL Rendering).
يتكوّن جانب الخادم (server-side) من شيء يسمّى (shaders). ويُعرف (shaders) على أنه برنامج صغير تطوّره أنت بنفسك ويُكتب بلغة برمجة اسمها (OpenGL Shading Language GLSL). يأخذ (shaders) مكان مرحلتين مهمتين في عمليات (OpenGL): مرحلة (Per-Vertex Processing) ومرحلة (Per-Fragment Processing).
لذلك فإن أساسيات تعلم رسومات الحاسوب (Computer Graphics) هي:
- الجبر الخطي
- كيفية تحميل البيانات إلى مخازن (OpenGL)
- shaders
أود الإشارة أخيراً إلى أنه لا يمكن تعلم رسومات الحاسوب (Computer Graphics) في إطار زمني قصير، فذلك يأخذ وقتاً وهناك الكثير لنتعلمه والسبيل الوحيد للقيام بذلك هو ممارسة ذلك كل يوم.
وللبدء بتعلم رسومات الحاسوب (Computer Graphics)، أقترح عليك قراءة هذا الكتاب (Fundamentals of Computer Graphics – 3rd Edition). حيث يمنحك هذا الكتاب رؤى أساسية حول رسومات الكمبيوتر وهو سهل القراءة. ولكن نظراً لأن رسومات الحاسوب (Computer Graphics) موضوع ضخم، فيكاد هذا الكتاب يخدش السطح فقط. يجب عليك بالتأكيد فهم الرياضيات وراء النظريات! تذكر بأن الأهم هو الجبر الخطي (Linear Algebra). وعليك أن تتأكد من أنك على دراية بالمتجهات (vectors) والمصفوفات (matrices)!
آمل أن تساعدك هذه الإجابة على التعلم والبقاء مدفوعاً نحو هدفك. وإذا أعجبتك إجابتي أرجو منك الضغط على زر “أؤيد” حيث أنني قد بذلت جهداً في التحضير لهذه الإجابة وأريدها أن تصل لأكبر قدر ممكن من الناس لتعم الفائدة. بالتوفيق يا صديق 🙂