تظليل

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

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

تحسب برامج التظليل التقليدية تأثيرات العرض على أجهزة الرسومات بدرجة عالية من المرونة. يتم ترميز معظم برامج التظليل لوحدة معالجة الرسومات (GPU) (وتعمل عليها)، [1] على الرغم من أن هذا ليس متطلبًا صارمًا. تُستخدم لغات التظليل لبرمجة خط أنابيب العرض الخاص بوحدة معالجة الرسومات، والذي حل محل خط الأنابيب ذي الوظيفة الثابتة في الماضي والذي كان يسمح فقط بتحويل الهندسة الشائعة ووظائف تظليل البكسل ؛ باستخدام برامج التظليل، يمكن استخدام تأثيرات مخصصة. يمكن تغيير موضع ولون ( الصبغة والتشبع والسطوع والتباين ) جميع وحدات البكسل والرؤوس و/أو القوام المستخدمة لإنشاء صورة نهائية تم عرضها باستخدام خوارزميات محددة في برنامج تظليل، ويمكن تعديلها بواسطة متغيرات خارجية أو قوام يقدمها برنامج الكمبيوتر الذي يستدعي برنامج التظليل. [ بحاجة لمصدر ]

تُستخدم برامج التظليل على نطاق واسع في معالجة ما بعد الإنتاج السينمائي ، والصور المولدة بواسطة الكمبيوتر ، وألعاب الفيديو لإنتاج مجموعة من التأثيرات. وبخلاف نماذج الإضاءة البسيطة، تتضمن الاستخدامات الأكثر تعقيدًا لبرامج التظليل ما يلي: تغيير لون الصورة أو تشبعها أو سطوعها ( HSL/HSV ) أو تباينها ؛ وإنتاج ضبابية ، وتوهج الضوء ، وإضاءة حجمية ، ورسم خرائط طبيعية (لتأثيرات العمق)، والبوكيه ، وتظليل الخلايا ، والتلاشي ، ورسم النتوءات ، والتشويه ، ومفتاح اللون (لتأثيرات "الشاشة الزرقاء/ الشاشة الخضراء ")، وكشف الحواف والحركة ، بالإضافة إلى التأثيرات المخدرة مثل تلك التي نراها في مشهد العرض التوضيحي . [ بحاجة لتوضيح ]

تاريخ

تم تقديم هذا الاستخدام لمصطلح "shader" للجمهور بواسطة Pixar مع الإصدار 3.0 من مواصفات واجهة RenderMan الخاصة بهم ، والتي نُشرت في الأصل في مايو 1988. [2]

مع تطور وحدات معالجة الرسومات ، بدأت مكتبات برامج الرسومات الرئيسية مثل OpenGL و Direct3D في دعم برامج التظليل. كانت وحدات معالجة الرسومات الأولى القادرة على التظليل تدعم تظليل البكسل فقط ، ولكن تم تقديم برامج تظليل الرؤوس بسرعة بمجرد إدراك المطورين لقوة برامج التظليل. كانت أول بطاقة فيديو مزودة ببرنامج تظليل بكسل قابل للبرمجة هي Nvidia GeForce 3 (NV20)، والتي تم إصدارها في عام 2001. [3] تم تقديم برامج تظليل الهندسة مع Direct3D 10 وOpenGL 3.2. في النهاية، تطورت أجهزة الرسومات نحو نموذج تظليل موحد .

تصميم

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

تحل برامج التظليل محل قسم من أجهزة الرسومات يسمى عادةً خط أنابيب الوظيفة الثابتة (FFP)، ويُسمى كذلك لأنه يقوم برسم الإضاءة والملمس بطريقة مبرمجة مسبقًا. توفر برامج التظليل بديلاً قابلاً للبرمجة لهذا النهج المبرمج مسبقًا. [4]

خط الأنابيب الرسومي الأساسي هو كما يلي:

  • ترسل وحدة المعالجة المركزية التعليمات ( برامج لغة التظليل المترجمة ) وبيانات الهندسة إلى وحدة معالجة الرسومات، الموجودة على بطاقة الرسومات.
  • داخل تظليل الرأس، يتم تحويل الهندسة.
  • إذا كان برنامج تظليل الهندسة موجودًا في وحدة معالجة الرسومات ونشطًا، فسيتم إجراء بعض التغييرات على الأشكال الهندسية في المشهد.
  • إذا كان برنامج تظليل التبليط موجودًا في وحدة معالجة الرسومات ونشطًا، فيمكن تقسيم الأشكال الهندسية في المشهد .
  • يتم حساب الهندسة على شكل مثلث (تقسيمها إلى مثلثات).
  • يتم تقسيم المثلثات إلى رباعيات مجزأة (رباعية مجزأة واحدة هي عبارة عن جزء بدائي 2 × 2).
  • يتم تعديل رباعيات الشظايا وفقًا لبرنامج تظليل الشظايا.
  • يتم إجراء اختبار العمق؛ سيتم كتابة الأجزاء التي تجتاز الاختبار على الشاشة وقد يتم دمجها في مخزن الإطار .

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

أنواع

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

تظليل ثنائي الأبعاد

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

تظليل البكسل

تُعرف وحدات تظليل البكسل أيضًا باسم وحدات تظليل الشظايا ، وهي تحسب اللون والسمات الأخرى لكل "شظية": وحدة عمل عرض تؤثر على بكسل إخراج واحد على الأكثر . تُخرج أبسط أنواع وحدات تظليل البكسل بكسل شاشة واحد كقيمة لونية؛ كما أن وحدات تظليل أكثر تعقيدًا مع مدخلات/مخرجات متعددة ممكنة أيضًا. [ 5] تتراوح وحدات تظليل البكسل من إخراج نفس اللون دائمًا ببساطة، إلى تطبيق قيمة إضاءة ، إلى إجراء رسم خرائط النتوءات والظلال والإبرازات اللامعة والشفافية وغيرها من الظواهر. يمكنها تغيير عمق الشظية ( للتخزين المؤقت Z )، أو إخراج أكثر من لون واحد إذا كانت أهداف العرض المتعددة نشطة. في الرسومات ثلاثية الأبعاد، لا يمكن لوحدة تظليل البكسل وحدها إنتاج بعض أنواع التأثيرات المعقدة لأنها تعمل فقط على شظية واحدة، دون معرفة هندسة المشهد (أي بيانات الرأس). ومع ذلك، فإن وحدات تظليل البكسل لديها معرفة بإحداثيات الشاشة التي يتم رسمها، ويمكنها أخذ عينات من الشاشة والبكسلات القريبة إذا تم تمرير محتويات الشاشة بأكملها كنسيج إلى وحدة التظليل. يمكن لهذه التقنية تمكين مجموعة واسعة من تأثيرات المعالجة اللاحقة ثنائية الأبعاد مثل التمويه أو اكتشاف الحواف /تحسينها لبرامج تظليل الرسوم المتحركة/الخلوية . يمكن أيضًا تطبيق برامج تظليل البكسل في المراحل الوسيطة على أي صور ثنائية الأبعاد - صور متحركة أو نسيج - في خط الأنابيب ، بينما تتطلب برامج تظليل الرؤوس دائمًا مشهدًا ثلاثي الأبعاد. على سبيل المثال، برنامج تظليل البكسل هو النوع الوحيد من برامج التظليل التي يمكن أن تعمل كمعالج لاحق أو مرشح لتدفق فيديو بعد تحويله إلى صورة نقطية .

تظليل ثلاثي الأبعاد

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

تظليل الرؤوس

تظليل الرؤوس هو النوع الأكثر شيوعًا وراسخًا من تظليل ثلاثي الأبعاد ويتم تشغيله مرة واحدة لكل رأس يتم إعطاؤه لمعالج الرسومات. والغرض من ذلك هو تحويل موضع كل رأس ثلاثي الأبعاد في الفضاء الافتراضي إلى إحداثيات ثنائية الأبعاد التي يظهر بها على الشاشة (بالإضافة إلى قيمة العمق لمخزن Z). [6] يمكن لتظليل الرؤوس معالجة خصائص مثل إحداثيات الموضع واللون والملمس، ولكن لا يمكنها إنشاء رؤوس جديدة. ينتقل ناتج تظليل الرؤوس إلى المرحلة التالية في خط الأنابيب، والتي تكون إما تظليل هندسي إذا كان موجودًا، أو أداة المسح . يمكن لتظليل الرؤوس تمكين التحكم القوي في تفاصيل الموضع والحركة والإضاءة واللون في أي مشهد يتضمن نماذج ثلاثية الأبعاد .

تظليل الهندسة

تم تقديم برامج تظليل الهندسة في Direct3D 10 وOpenGL 3.2؛ وكانت متوفرة سابقًا في OpenGL 2.0+ مع استخدام الامتدادات. [7] يمكن لهذا النوع من برامج التظليل إنشاء عناصر رسومية بدائية جديدة ، مثل النقاط والخطوط والمثلثات، من تلك العناصر البدائية التي تم إرسالها إلى بداية خط أنابيب الرسومات . [8]

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

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

تظليل التبليط

اعتبارًا من OpenGL 4.0 وDirect3D 11، تمت إضافة فئة تظليل جديدة تسمى تظليل التبليط. وتضيف مرحلتين جديدتين للتظليل إلى النموذج التقليدي: تظليل التحكم في التبليط (المعروف أيضًا باسم تظليل الهيكل) وتظليل تقييم التبليط (المعروف أيضًا باسم تظليل المجال)، والتي تسمح معًا بتقسيم الشبكات البسيطة إلى شبكات أدق في وقت التشغيل وفقًا لوظيفة رياضية. يمكن ربط الوظيفة بمجموعة متنوعة من المتغيرات، وأبرزها المسافة من كاميرا المشاهدة للسماح بالقياس النشط لمستوى التفاصيل . يسمح هذا للأشياء القريبة من الكاميرا بالحصول على تفاصيل دقيقة، بينما يمكن أن تحتوي الأشياء البعيدة على شبكات أكثر خشونة، ولكنها تبدو قابلة للمقارنة في الجودة. كما يمكنها أيضًا تقليل عرض النطاق الترددي المطلوب للشبكة بشكل كبير من خلال السماح بتحسين الشبكات بمجرد دخولها وحدات التظليل بدلاً من تقليل أخذ العينات من الشبكات المعقدة للغاية من الذاكرة. يمكن لبعض الخوارزميات أخذ عينات من أي شبكة عشوائية، في حين تسمح خوارزميات أخرى بـ "التلميح" في الشبكات لتحديد الرؤوس والحواف الأكثر تميزًا.

تظليلات بدائية وشبكية

حوالي عام 2017، أضافت معمارية AMD Vega الدقيقة دعمًا لمرحلة تظليل جديدة - تظليلات بدائية - تشبه إلى حد ما تظليلات الحوسبة مع إمكانية الوصول إلى البيانات اللازمة لمعالجة الهندسة. [9] [10]

قدمت شركة إنفيديا تظليلات الشبكة والمهام باستخدام معماريتها الدقيقة تورينج في عام 2018 والتي تم تصميمها أيضًا على غرار تظليل الحوسبة. [11] [12] إنفيديا تورينج هي أول معمارية دقيقة لوحدة معالجة الرسومات في العالم تدعم تظليل الشبكة من خلال واجهة برمجة التطبيقات DirectX 12 Ultimate، قبل عدة أشهر من إصدار سلسلة Ampere RTX 30. [13]

في عام 2020، أصدرت AMD وNvidia معماريات RDNA 2 و Ampere الدقيقة والتي تدعم كلاهما تظليل الشبكة من خلال DirectX 12 Ultimate . [14] تسمح وحدات التظليل الشبكية هذه لوحدة معالجة الرسومات بالتعامل مع خوارزميات أكثر تعقيدًا، ونقل المزيد من العمل من وحدة المعالجة المركزية إلى وحدة معالجة الرسومات، وفي العرض المكثف للخوارزميات، زيادة معدل الإطارات أو عدد المثلثات في المشهد بمقدار مرتبة واحدة. [15] أعلنت شركة Intel أن وحدات معالجة الرسومات Intel Arc Alchemist التي سيتم شحنها في الربع الأول من عام 2022 ستدعم وحدات التظليل الشبكية. [16]

تظليل تتبع الأشعة

يتم دعم برامج تظليل تتبع الأشعة بواسطة Microsoft عبر DirectX Raytracing ، بواسطة Khronos Group عبر Vulkan و GLSL و SPIR-V ، [17] بواسطة Apple عبر Metal .

تظليل الموتر

يمكن دمج تظليلات Tensor في وحدات المعالجة العصبية أو وحدات معالجة الرسوميات . وتدعم Microsoft تظليلات Tensor عبر DirectML ، و Khronos Group عبر OpenVX ، و Apple عبر Core ML ، و Google عبر TensorFlow ، و Linux Foundation عبر ONNX . [18]

حساب التظليل

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

المعالجة المتوازية

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

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

برمجة

تعتمد اللغة التي يتم بها برمجة برامج التظليل على البيئة المستهدفة. لغة التظليل الرسمية لـ OpenGL و OpenGL ES هي OpenGL Shading Language ، والمعروفة أيضًا باسم GLSL، ولغة التظليل الرسمية لـ Direct3D هي High Level Shader Language ، والمعروفة أيضًا باسم HLSL. تم تطوير Cg ، وهي لغة تظليل تابعة لجهة خارجية تنتج برامج تظليل OpenGL و Direct3D، بواسطة Nvidia ؛ ومع ذلك، فقد تم إيقاف استخدامها منذ عام 2012. أصدرت Apple لغة تظليل خاصة بها تسمى Metal Shading Language كجزء من إطار عمل Metal .

محررات تظليل واجهة المستخدم الرسومية

تتضمن منصات تطوير ألعاب الفيديو الحديثة مثل Unity و Unreal Engine و Godot بشكل متزايد محررات تعتمد على العقد يمكنها إنشاء برامج تظليل دون الحاجة إلى كود فعلي؛ بدلاً من ذلك، يتم تقديم رسم بياني موجه للمستخدم من العقد المتصلة التي تسمح للمستخدمين بتوجيه مختلف القوام والخرائط والوظائف الرياضية إلى قيم إخراج مثل اللون المنتشر واللون اللامع والشدة والخشونة/المعادن والارتفاع والطبيعي وما إلى ذلك. ثم يحول التجميع التلقائي الرسم البياني إلى برنامج تظليل فعلي مُجمَّع.

انظر أيضا

مراجع

  1. ^ "LearnOpenGL - Shaders". learnopengl.com . تم الاسترجاع في 12 نوفمبر 2019 .
  2. ^ "مواصفات واجهة RenderMan".
  3. ^ Lillypublished, Paul (19 مايو 2009). "من الفودو إلى جي فورس: التاريخ المذهل للرسومات ثلاثية الأبعاد". PC Gamer – عبر www.pcgamer.com.
  4. ^ "تحديث ShaderWorks - مدونة DirectX". 13 أغسطس 2003.
  5. ^ "GLSL Tutorial – Fragment Shader". 9 يونيو 2011.
  6. ^ "GLSL Tutorial – Vertex Shader". 9 يونيو 2011.
  7. ^ Geometry Shader - OpenGL. تم الاسترجاع في 21 ديسمبر 2011.
  8. ^ "Pipeline Stages (Direct3D 10) (Windows)". msdn.microsoft.com . 6 يناير 2021.
  9. ^ "كشف النقاب عن Radeon RX Vega: AMD تعد بأداء ألعاب 4K مقابل 499 دولارًا - Trusted Reviews". 31 يوليو 2017.
  10. ^ "الستار يسدل على معمارية Vega من AMD". 5 يناير 2017.
  11. ^ "NVIDIA Turing Architecture In-Depth". 14 سبتمبر 2018.
  12. ^ "مقدمة إلى Turing Mesh Shaders". 17 سبتمبر 2018.
  13. ^ "إصدار برنامج تشغيل DirectX 12 Ultimate Game Ready؛ يتضمن أيضًا دعمًا لـ 9 شاشات ألعاب جديدة متوافقة مع G-SYNC".
  14. ^ "الإعلان عن DirectX 12 Ultimate". مدونة مطوري DirectX . 19 مارس 2020. تم الاسترجاع في 25 مايو 2021 .
  15. ^ "إضاءة واقعية في لعبة Justice مع تظليل شبكي". مدونة مطوري NVIDIA . 21 مايو 2021. تم الاسترجاع في 25 مايو 2021 .
  16. ^ سميث، رايان. "يوم هندسة Intel 2021: نظرة خاطفة على هندسة وحدة معالجة الرسوميات Xe-HPG". www.anandtech.com .
  17. ^ "الإصدار النهائي لمواصفات Vulkan Ray Tracing". مدونة. مجموعة Khronos . 23 نوفمبر 2020. تم الاسترجاع في 2021-02-22 .
  18. ^ "دليل انتقال NNAPI | Android NDK". مطورو Android . تم الاسترجاع في 1 أغسطس 2024 .

قراءة إضافية

  • Upstill, Steve (1990). The RenderMan Companion: A Programmer's Guide to Realistic Computer Graphics . Addison-Wesley. ISBN 0-201-50868-0.
  • إيبرت، ديفيد إس ؛ ماسجريف، إف. كنتون ؛ بيتشي، داروين؛ بيرلين، كين ؛ وورلي، ستيفن (1994). النسيج والنمذجة: نهج إجرائي . AP Professional. ISBN 0-12-228730-4.
  • فرناندو، رانديما؛ كيلجارد، مارك (2003). برنامج تعليمي عن الرسوم المتحركة الحاسوبية: الدليل النهائي للرسومات القابلة للبرمجة في الوقت الفعلي . أديسون ويسلي بروفيشنال. رقم ISBN 0-321-19496-9.
  • روست، راندي جيه (2004). لغة تظليل OpenGL . Addison-Wesley Professional. ISBN 0-321-19789-5.
  • ملحق تظليل هندسة OpenGL
  • برنامج Riemer's DirectX & HLSL التعليمي: برنامج تعليمي HLSL باستخدام DirectX مع العديد من أكواد العينة
  • مراحل خط الأنابيب (Direct3D 10)
Retrieved from "https://en.wikipedia.org/w/index.php?title=Shader&oldid=1237950918"
Original text
Rate this translation
Your feedback will be used to help improve Google Translate