# توارد الرسوميات

توارد الرسوميات (computer graphics pipeline, rendering pipeline, graphics pipeline) هو خوارزميّة قياسيّة عامّة تعرّف الخطوات اللّازمة لتحويل المشاهد الثنائيّة والثلالثيّة الأبعاد الافتراضيّة إلى صورة مرئيّة ثنائيّة البعد يمكن عرضها بوسائط العرض المرئيّة. يطرأ على هذا المسار تغييرات كزيادة أو نقصان عدد الخطوات أو تقديم إحداها على الأخرى أو على خوارزميّة معالجة البيانات في أحد الخطوات وذلك باختلاف وحدة معالجة الرسوميّات الحاسوبيّة (GPU) التي يتطلّب تصميمها هذه التعديلات أو بسبب اختلاف واجهة التطوير البرمجيّة (API) التي تتّبع منهجًا خاصًّا.
يستخدم مسار معالجة الرُّسوم في برامج كثيرة تهدف إلى إنتاج رسوميّات في الوقت المباشر (Real Time) كجزء رئيس من أغراضِها ومنها الألعاب والمحاكاة والتصميم. من الألعاب, وهي كثيرة, لعبة كول اوف دوتي (Call of Duty) وسوبير ماريو (Super Mario) والمحاكاة كالبرنامج المفتوح المصدر بلندر (Blender) وهو أيضًا يستخدم في تطوير الألعاب ومن برامج التصميم الأوتوكاد (AutoCAD) الذي يستخدم في التصميم المعماري الهندسي.

### مراحل معالجة الرسوم

يقسم مسار معالجة الرسوم إلى ثلاث مراحل وتتكون كل منها من عدة خطوات تعالج فيها بيانات الرّسوم على التوالي ليكون محصلة مخرجات السابق منها مدخلات التالية وصولًا إلى المرحلة النهائيّة واستخلاص البيانات المعبّرة عن الصورة النهائيّة للمشهد ليتم تمريره إلى واسطة إخراج رسوميّة كالشّاشة.

#### 1. البرنامج (Application)

تبدأ المرحلة الأولى بأوامر البرنامج الحاسوبي الرسومي وتتولى وحدة المعالجة المركزية (CPU) مهمّة تحميل البيانات اللازمة من النقاط والخطوط والنماذج التي تشكل العالم الافتراضي للمشهد بالإضافة إلى نقطة المراقبة (الكميرا) وتموضعها من المشهد ومن ثمّ تقوم بتهيئتها وتمريرها إلى وحدة المعالجة الرسوميّة. تغذّي وحدة المعالجة المركزيّة المسار بعمليات التحريك المطلوبة للنماذج ونقطة المراقبة بشكل اَني ومستمر فهي أوامر قد تكون محددة مسبقًا من المطوّر أو مدخلات من المستخدم.

#### 2. هندسة المشهد

يتم تمثيل المشهد المنظور في العالم الافتراضي بشكل هندسي مرتبط بمستوى احداثي ثلاثي أو ثنائي الأبعاد لتطبيق العمليات اللازمة من معالجة وتعديل واستخلاص للبيانات قبل الشروع في تمريرها إلى مرحلة التأطير.

##### الخطوات
###### أ. الدّمج والتَمَوضُع الإحداثيّ

تُجمع النّماذج المختلفة المشكِّلة للمشهد بتحويلها عن مستوياتها الإحداثيّة الأوليّة الخاصّة بها ودمجها إلى المستوى الإحداثي الرئيس المكوّن للمشهد الكلّي بعد إنشائه وتعديل بيانات تموضع كل منها في هذا المستوى بتحديثها وفقًا لبيانات التحريك المدخلة من المرحلة السابقة.

###### ب. التَّظليل

تتمّ عمليات حساب فيزيائيّة للتأثير المتبادل بين أسطح النّماذج ومصادر الضّوء كالبعد بينهم وزاوية استقبال الضوء ونوع الأسطح كأن تكون عاكسة أو كاسرة للضوء وذلك لتحديد ألوان الأسطح وسطوعها وحساب قيمها لتمثيلها نُقطيَّا في مرحلة الطباعة التالية.
ملاحظة: بعض مسارات معالجة الرسوم الحاسوبيّة الحديثة تستخدم أساليب وخوارزميّات تظليل أكثر نَجاعة تقلّل من زمن وطاقة المعالجة وقد تتطلّب تأخير عمليّة التظليل لخطوة لاحقة كما في أسلوب الإسقاط الضوئي العكسي.

###### ج. الاسقاط

يتّخذ من نقطة المراقبة اطار ثنائي الأبعاد يُسقط عليه نُقاط وأبعاد أجسام العالم الافتراضيّ بتطبيق أحد أساليب الاسقاط ضمن المساحة المنظورة والتي تحدد قِيم زاويتا المنظور الطّولي والعرضي لها خصائص نُقطة المراقبة.

###### د. التأطير

يحدد اطار نقطة المراقبة أبعاد الصورة فيحصر بيانات المشهد ضمن زاويتا المساحة المنظورة ويهمل ما يكون خارجها فيقوم بمعالجة الأجسام الافتراضيّة التي قد يقع قسم منها خارج المجال المنظور بقطعها وإضافة نقاط للأبعاد الأجسام الجديدة وتمررير البانات إلى الخطوة التالية.

###### ه. ضبط قياس التأطير

يُعالج بُعدي إطار المراقبة طولًا وعرضًا لتتوافق مع اطار العرض النهائي على وسيطة العرض وذلك يعطي الإمكانيّة لإضفاء سمة خاصّة على الصورة كالتمدّ والإنكماش.

###### 3. التصيير

التصيير هو المرحلة النهائيّة من خط عمليّة المعالجة وفيها يتم تحويل البيانات إلى صورة نقطيّة لتُطبع على واسطة عرض مرئيّة كالشّاشة.

##### الخطوات
###### أ. التّهيئة

تستكمل هذه الخطوة نتائج خطوة التّظليل من مرحلة المعالجة الهندسيّة السابقة فيتم تحديد اسطح المثلثات الأوليّة المشكّلة لشبكة الأجسام الافتراضيّة وتداخلها فيما بينها ليتم معالجتها لاحقاً.

###### ب. التجزئة

يُقسَم إطار العَرض إلى أجزاء صغيرة توافق أبعاد النُّقاط (pixels) لشاشة العرض ويتم حساب قيم الألوان لتداخل الأجسام الافتراضيّة والتأثيرات عليها لكل نقطة من الإطار ويحتفظ الجزء المرتبط بالنقطة على هذه المعلومات بالإضافة لأخرى كالعمق ونوعيّة السطح.

##### ج. الدّمج

تخضع بيانات الأجزاء لاختبارات عديدة لتقييمها ومن ثمّة تدمج هذه البيانات لتحدد قيم قنوات الألوان للنقطة الواحدة ويدخل عليها قيم التباين أو تخصيصات معيّنة للألوان يتم تحديدها مسبقًا وهي تتعلق بإعدادات عرض وتعديل الصورة.