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

الاكساءات Textures

حديثنا اليوم عن أحد أهم العوامل التي تؤثر في جمال رسوميات أي لعبة، بل قد يجادل البعض ويقول أنها أهم العوامل علي الاطلاق، ودون أدني استثناء.

والواقع أن هؤلاء مُحقّون، فالألعاب التي تحتوي علي كساءات/خامات قوية تكون مميزة للغاية بمجرد القاء نظرة سريعة عليها، بل ويصاحبها عادة شعور اللاعب أنه لو مدّ يده الي الشاشة فسيستطيع "لمس" الأشكال ثلاثية الأبعاد التي تعرض أمامه.

لكن أجمل المؤثرات الرسومية لم يُصنع لهدف اضفاء الواقعية والبهاء علي رسوميات الألعاب، وانما صنع في البداية لغرض آخر، غرض ربما يُعدّه البعض عكس السابق تماما !

وهذا الغرض هو توفير عدد المضلّعات !

قلنا في الجزء الثاني أن عدد المضلعات أو رؤوس التحكم Vertices، ظلّ شوكة في حُلق كل البطاقات الرسومية، فاستخدام عدد كبير يضع عبأ حسابيا ثقيلا علي البطاقات، ويجعل الأداء بطيئا، لكنه يحسّن من جودة الصورة بالطبع. اليوم سنري كيف يقوم شئ ما اسمه الكساءات/الخامات Textures بتوفير عدد المضلعات أكثر وأكثر، مع الحصول في نفس الوقت علي جودة صورة مُقاربة.

بداية .. لننظر الي هذا الشكل :

الاكساءاتالتقنيات الرسومية: الخامات والاكساءات

باب برئ المظهر، وفي منتصفه يوجد مقبض مربع الشكل.

هذا الباب هو شكل ثلاثي الأبعاد ، سنحاول الآن عدّ رؤوس التحكم فيه، سنفعل هذا لتقييم الموقف ولمعرفة كمية العبأ الحسابي الواقع علي البطاقة الرسومية عندما تتحكم في هذا الباب، وسنقوم بعدّ الرؤوس التي تمثل زوايا الباب والمقبض.

الاكساءاتالتقنيات الرسومية: الخامات والاكساءات

الباب يتكون من 12 رأس تحكم .. 4 خاصة بالهيكل الأساسي فيه، وثمانية خاصة بالمقبض ..

الباب هو شكل ثلاثي الأبعاد، أي أنه مجسّم من كل الزوايا والجوانب، واذا نظرنا اليه من منظور جانبي، سيظهر هكذا بالطبع :

التقنيات الرسومية: الخامات والاكساءاتالتقنيات الرسومية: الخامات والاكساءات التقنيات الرسومية: الخامات والاكساءاتالتقنيات الرسومية: الخامات والاكساءات

الباب من منظر جانبي، ويظهر في الصورة المقبض أيضا من نفس المنظور .. عندما نعدّ عدد رؤوس التحكم من نفس المنظور سنجد أنهم لا يزالوا 12 رأسا .. 

عندما ننظر للباب من زاوية مائلة، نجد أن عدد رؤوس التحكم قد ازداد، لأن الباب يظهر من منظور أمامي وجانبي في وقت واحد:

التقنيات الرسومية: الخامات والاكساءاتالتقنيات الرسومية التقنيات الرسومية: الخامات والاكساءاتالتقنيات الرسومية: الخامات والاكساءات

الباب من زاوية مائلة .. ويظهر فيه الجوانب الأمامية والجانبية معا، كذا الأمر بالنسبة للمقبض، و عدد رؤوس التحكم ارتفع الي 21 رأس ..

عدد رؤوس الشكل كلّه هي (الباب + المقبض ) هي 24 رأس في الأص ، لكن بالصورة أعلاه لا يظهر الا 21.

ما قمنا بشرحه هنا هو طريقة الرسم العادية لتكوين أشكال ثلاثية الأبعاد بتفاصيلها .

لكن طريقة الكساءات تختلف تماما، وستوفر في عدد رؤوس التحكّم مع الحصول علي نفس النتيجة تقريبا.

بداية سنقوم باستخدام الباب بدون المقبض نهائيا .. وفي هذا سنستخدم 8 رؤوس فقط!

التقنيات الرسومية: الخامات والاكساءاتالتقنيات الرسومية: الخامات والاكساءات التقنيات الرسومية: الخامات والاكساءاتالتقنيات الرسومية: الخامات والاكساءات

منظر الباب من الأمام ، بأربعة رؤوس فقط ! وهذا طبيعي، لأن المقبض اختفي!

التقنيات الرسومية: الخامات والاكساءاتالتقنيات الرسومية: الخامات والاكساءات التقنيات الرسومية: الخامات والاكساءاتالتقنيات الرسومية: الخامات والاكساءات

منظر الباب من الجانب، بأربعة رؤوس فقط أيضا ..

التقنيات الرسومية: الخامات والاكساءاتالتقنيات الرسومية: الخامات والاكساءات التقنيات الرسومية: الخامات والاكساءاتالتقنيات الرسومية: الخامات والاكساءات

منظر الأمام من زاوية مائلة، بسبعة رؤوس فقط ! 

أعتقد أنه صار واضحا أنني حذفت أية تفاصيل زائدة في الباب، وتحديدا المقبض، تاركا الهيكل الأساسي للشكل.

الآن سأقوم بفتح أي برنامج لتحرير الصور، وسأقوم بعمل صورة كبيرة ثنائية الأبعاد فيها مستطيل رمادي كبير، وبه مربع لونه رمادي غامق و مستطيل أسود في نهاية الصورة علي اليسار.

التقنيات الرسومية: الخامات والاكساءاتالتقنيات الرسومية: الخامات والاكساءات

سأحفظ الصورة باسم Door.tx .. لاحظ الامتداد tx، أي اختصار Texture أو اكساءات بالعربية .

الآن سأقوم بادخال هذه الصورة داخل محرك اللعبة الرسومي، وأطلب من البطاقة الرسومية تطبيق هذه الصورة علي الباب.

ستقوم البطاقة الرسومية بقراءة ألوان هذه الصورة، ثم تقوم بملأ مساحة الباب بهذه الألوان، وهي ستقوم بلفّ الصورة بألوانها علي الباب حرفيا.

التقنيات الرسومية: الخامات والاكساءات

الجزء المحدد بالأحمر من الصورة، سيكون من نصيب وجه الباب الخلفي، بينما الجزء المحدد بالأزرق سيكون من نصيب جانب الباب .. باقي الصورة سيكون من نصيب وجه الباب الأمامي.

 

التقنيات الرسومية: الخامات والاكساءاتالتقنيات الرسومية: الخامات والاكساءات

منظر الوجه الأمامي للباب، ويظهر فيه المقبض وقاعدته، والصورة مماثلة تماما لصورة الباب الأولي ذات الـ21 رأس.

التقنيات الرسومية: الخامات والاكساءاتالتقنيات الرسومية: الخامات والاكساءات

منظر جانب الباب ، ولونه رمادي، لكن لا يظهر فيه أي وجود للمقبض، .. وهذا أمر طبيعي لأن المقبض غير موجود أصلا، فهو مجرد صورة وليس جسما حقيقيا من الرؤوس .. وصورة المقبض لا يمكنها الظهور من هذه الزاوية الجانبية.

التقنيات الرسومية: الخامات والاكساءاتالباب خامات الباب مضلعاتالتقنيات الرسومية: الخامات والاكساءات

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

ما حدث هنا أننا حذفنا الأجزاء الزائدة من جسم الباب، (وتحديدا المقبض) وتركنا الهيكل الأساسي فيه، واستبدلنا تلك الأجزاء الزائدة بصورة مكونة من ألوان عاديّة، تلك الصور يطلق عليها اسم الكساءات Textures، لأن المعالج الرسومي يأخذها ويكسو بها الأجسام ثلاثية الأبعاد لاضافة تفاصيل زائدة عليها .. مثل تفاصيل المقبض في مثالنا السابق.

التقنيات الرسومية: الخامات والاكساءاتالتقنيات الرسومية: الخامات والاكساءات

المعالج الرسومي يكسو هذا المكعب بصورة الكساء..

وللمزيد من التوضيح، نقول أن لكل شكل ثلاثي الأبعاد وصف حوسبي خاص به، هذا الوصف يشمل البروزات والنتوءات و المُنخفضات التي يحتوها هذا الشكل، .. حيث يتم وصف الشكل من كل منظور ممكن، والوصف في النهاية هو مجرد بيانات للألوان التي تكوّن هذا الشكل بكل بروزاته ومنخفضاته، ففي مثال الباب بالأعلي، نقول أنه يتكوّن من 3000 نقطة لونية (2500 نقطة للباب و 500 نقطة للمقبض)، تكوّن شكل الباب من كل منظور ممكن .

لكن استخدام الاكساءات يلغي الحاجة لهذه الأوصاف، حيث يتم تلوين الشكل (نقاطه) بطريقة بارعة بحيث توحي بوجود نتوءات أو منخفضات أو غيرها، فلا نحتاج لوصف هذه الأشياء بعد الآن، أي يتم تقليل الوصف الحوسبي (الألوان) التي تكوّن الشكل، ففي مثال الباب، نكتفي بوصفه بـ2500 نقطة لونية، مع تلوين 500 منها باللون الأسود لتوحي بوجود مقبض، ولهذا عندما ننظر للباب من منظور جانبي، فاننا لا نري المقبض، لأن وصفه الحوسبي غير موجود أصلا .

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

تستعمل الاكساءات الآن في تلوين الأشكال ثلاثية الأبعاد بمئات من التفاصيل، ومن النادر أن تري شكلا بدون كساءات، فكل الأشكال الآن يكون لها كساءات خاصة ومنفردة بها لاضفاء ما يريده المطورون عليها من تفاصيل.

Texturesالتقنيات الرسومية: الخامات والاكساءات

هذه صور لتشكيلة متنوعة من المواد الحجرية (رخام ، جرانيت ، قوالب حجرية ، حصي ..) وكل هذه الصور هي كساءات يمكن بها تغليف أي شكل ثلاثي الأبعاد، حتي شكل الباب !

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

  Wall with Texture Wall with Polygon

التقنيات الرسومية: الخامات والاكساءاتمثال آخر : الي اليمين منظر جدار عليه صورة كساء لقوالب طوب، انظر الي حافة الجدار تجد أنها مستقيمة تماما، ولا توجد بها أي نتوءات، وهذا غير صحيح بصريا، فمن المفترض وجود نتوءات وبروزات من قوالب الطوب، وهو ما يظهر في الصورة علي اليسار، والتي تم استخدام المضلعات فيها.

التقنيات الرسومية: الخامات والاكساءاتالتقنيات الرسومية: الخامات والاكساءات

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

التقنيات الرسومية: الخامات والاكساءاتالتقنيات الرسومية: الخامات والاكساءات التقنيات الرسومية: الخامات والاكساءاتالتقنيات الرسومية: الخامات والاكساءات

الي اليمين صورة كساء لجدار مع بعض الزخارف و رأس لأس ، الي اليسار نفس الصورة لكن بالمضلعات، لاحظ كيف ازداد عمق الزخارف وراس الأسد، ولاحظ الظل الذي تكون لأن تفاصيله حقيقية.

الاكساءات أيضا لا تترك خلفها ظلالا، بينما التفاصيل الحقيقية المرسومة بالمضلعات تترك خلفها ظلالا!

لكن المطورين يعتمدون علي أن اللاعب لن يلاحظ مثل هذه التفاصيل أثناء اللعب، وخصوصا أثناء الحركة السريعة، كما يعتمدون علي أن اللاعب يقضي معظم وقته في مواجهة الأجسام مباشرة (أي من المنظور الأمامي) ويقضي وقتا أقل بكثير في أي منظور جانبي آخر ..

ولأن الكساءات هي مجرّد صور عادية جدا، فان جودتها تتأثر بدقّة العرض، فالصور أيضا لها أبعاد ولها دقة، ولو أخذنا صورة كساء الباب بأعلي المقال مثلا، سنجد أن دقتها هي 390x209، وعند عرض اللعبة علي دقة مثل 1920x1080، أي علي مساحة عرض واسعة، سنجد أن صورة الاكساء قد تتضخم الي دقة مثل 1150X650 مثلا وذلك عن طريق عملية التوسيع Stretch، وهنا تحدث في صورة الاكساء كل العيوب الناتجة عن هذه العملية، من تغير في التفاصيل أو بهتان وعدم وضوح بسبب الألوان الوسطية، الي زيادة في تعرّجات الخطوط المائلة (راجع الجزء الأول والثالث ) .

التقنيات الرسومية: الخامات والاكساءاتالتقنيات الرسومية: الخامات والاكساءات

صورة لكساء حجري ، والصورة بدقّة 90x85 .

انظر ماذا يحدث عندما يتم تكبير الصورة بحيث تصبح بدقة 450x425 :

Texturesالتقنيات الرسومية: الخامات والاكساءات

تعرّجات عنيفة في الصورة ، بالاضافة الي وجد تلّطخات من الألوان الوسطية والتي تعطي الصورة طابع من الرداءة!

وحتي عند تشغيل اللعبة علي دقة منخفضة مثل 1024x768، فان اقتراب اللاعب من الجسم ثلاثي الأبعاد اقترابا شديدا، يجعل هذا الجسم يحتل مساحة الشاشة كلها، أي يصبح بنفس دقة الشاشة، وهنا تطبق عملية التوسيع علي الكساء بحيث يصبح بنفس دقة الشاشة، فتحدث كل عيوب الصورة التي تحدثنا عنها.

الحل، هو استخدام كساءات ذات دقة عالية من البداية ، مثلا 1024x1024، أو 1600x1600 ، حتي لا نحتاج الي تطبيق عملية التوسيع علي الكساءات، لأنها بحجم كبير جدا أصلا، وحتي لو استخدم اللاعب دقة عالية مثل 1920x1080، يكون الفارق بين دقة الكساء 1600x1600 ودقة اللعب 1920x1080 قليلا، فلا نحتاج لتطبيق عملية التوسيع بكثافة، مما يقلل من عيوب الصورة الناتجة .

لكن مشكلة الكساءات عالية الدقة أنها تشغل مساحة كبيرة من ذاكرة البطاقة الرسومية، ومن عرض تبادل البيانات فيها Bandwidth، لذا توفر الألعاب عادة مستويات مختلفة للتحكم في دقة الكساءات ، مثلا Low Textures تعني تشغيل الكساءات بدقة منخفضة، Medium Textures تعني دقة متوسطة، و High Textures تعني أقصي دقة مُتاحة.

الكساءات تضغط علي معالج البطاقة الرسومي ايضا، لأنه عادة ما يقوم بعمليات توسيع وتكبير للكساءات، وكثيرا ما يقوم بعمليات تصغير أيضا، فعندما يكون اللاعب بعيدا جدا عن الجسم ثلاثي الأبعاد، فان الجسم يأخذ مساحة صغيرة من الشاشة، أي يجب خفض دقة عرض كساؤه وهذه هي عملية التصغير.

التقنيات الرسومية: الخامات والاكساءاتالتقنيات الرسومية: الخامات والاكساءات

البطاقة الرسومية تقوم بتكبير وتصغير صورة الكساء حسب الحاجة .

والتصغير هي عملية عكس عملية الألوان الوسطية بالضبط، ففي الأخيرة، يتم اضافة نقطة بلون وسطي بين كل نقطتين، أما في التصغير فمن بين كل نقطتين يتم حذف نقطة واحدة، وبذلك يقل عدد نقاط الصورة Pixels أي تقل دقة عرضها.

لكن بشكل عام فان الكساءات تضغط علي ذاكرة البطاقة الرسومية VRAM بدرجة أكبر من المعالج الرسومي. وتتحقق أفضل جودة رسومية في الألعاب باستخدام أقصي اعدادات متاحة للاكساءات Ultra Textures.