Deferred shading
تھری ڈی کمپیوٹر گرافکس کے میدان میں، ڈیفرڈ شیڈنگ ایک اسکرین اسپیس شیڈنگ تکنیک ہے جو ورٹیکس اور پکسل شیڈرز کے پیش کیے جانے کے بعد دوسرے رینڈرنگ پاس پر انجام دی جاتی ہے۔ یہ سب سے پہلے مائیکل ڈیئرنگ نے 1988 میں تجویز کیا تھا۔ ڈیفرڈ شیڈر کے پہلے پاس پر، صرف وہ ڈیٹا اکٹھا کیا جاتا ہے جو شیڈنگ کمپیوٹیشن کے لیے درکار ہوتا ہے۔ ہر سطح کے لیے پوزیشن، نارمل اور مواد کو جیومیٹری بفر (جی-بفر) میں "رینڈر ٹو ٹیکسٹچر" کا استعمال کرتے ہوئے پیش کیا جاتا ہے۔ اس کے بعد، ایک پکسل شیڈر اسکرین کی جگہ میں ٹیکسٹچر بفرز کی معلومات کا استعمال کرتے ہوئے ہر پکسل پر براہ راست اور بالواسطہ روشنی کا حساب لگاتا ہے۔ اسکرین اسپیس ڈائرکشنل اوکلیوژن کو ڈیفرڈ شیڈنگ پائپ لائن کا حصہ بنایا جا سکتا ہے تاکہ سائے اور انٹر ریفلیکشنز کو سمت دی جا سکے۔ فوائد ڈیفرڈ شیڈنگ کا بنیادی فائدہ روشنی سے سین جیومیٹری کو الگ کرنا ہے۔ صرف ایک جیومیٹری پاس کی ضرورت ہوتی ہے، اور ہر روشنی کا حساب صرف ان پکسلز کے لیے کیا جاتا ہے جنہیں یہ اصل میں متاثر کرتا ہے۔ یہ ایک اہم پرفارمنس ہٹ کے بغیر ایک منظر میں بہت سی لائٹس پیش کرنے کی صلاحیت دیتا ہے۔ اس نقطہ نظر کے لیے کچھ اور فوائد کا دعوی کیا گیا ہے۔ ان فوائد میں پیچیدہ روشنی کے وسائل کا آسان انتظام، دیگر پیچیدہ شیڈر وسائل کے انتظام میں آسانی، اور سافٹ ویئر رینڈرنگ پائپ لائن کو آسان بنانا شامل ہو سکتے ہیں۔ نقصانات موخر رینڈرنگ کا ایک اہم نقصان الگورتھم کے اندر شفافیت کو سنبھالنے میں ناکامی ہے، حالانکہ یہ مسئلہ زیڈ بفرڈ مناظر میں ایک عام مسئلہ ہے اور اسے منظر کے شفاف حصوں کی انجام دہی میں تاخیر اور ترتیب دے کر سنبھالا جاتا ہے۔ ڈیپتھ پیلنگ کا استعمال ڈیفرڈ رینڈرنگ میں آرڈر سے آزاد شفافیت حاصل کرنے کے لیے کیا جا سکتا ہے، لیکن اضافی بیچوں اور جی بفر سائز کی قیمت پر۔ جدید ہارڈ ویئر، جو ڈائرکٹ ایکس 10 اور اس کے بعد کے ورژن کی حمایت کرتا ہے، اکثر انٹرایکٹو فریم ریٹ کو برقرار رکھنے کے لیے کافی تیزی سے بیچ انجام دینے کے قابل ہوتا ہے۔ جب آرڈر سے آزاد شفافیت مطلوب ہوتی ہے (عام طور پر صارفین کی ایپلی کیشنز کے لیے) تو موخر شیڈنگ اسی تکنیک کا استعمال کرتے ہوئے فارورڈ شیڈنگ سے کم موثر نہیں ہوتی۔ ایک اور سنگین نقصان متعدد مواد کے استعمال میں دشواری ہے۔ بہت سے مختلف مواد کا استعمال ممکن ہے، لیکن اسے جی بفر میں ذخیرہ کرنے کے لیے مزید ڈیٹا کی ضرورت ہوتی ہے، جو پہلے ہی کافی بڑا ہے اور میموری بینڈوتھ کی ایک بڑی مقدار لیتا ہے۔ ایک اور نقصان یہ ہے کہ، روشنی کے مرحلے کو ہندسی مرحلے سے الگ کرنے کی وجہ سے، ہارڈ ویئر اینٹی الیازنگ اب درست نتائج پیدا نہیں کرتا ہے کیونکہ انٹرپولیٹڈ ذیلی نمونوں کے نتیجے میں بے معنی پوزیشن، نارمل اور ٹینجینٹ صفات پیدا ہوں گی۔ اس حد پر قابو پانے کے لیے معمول کی تکنیکوں میں سے ایک حتمی تصویر پر کنارے کا پتہ لگانے کا استعمال کرنا اور پھر کناروں پر دھندلا پن لگانا ہے، تاہم حال ہی میں عمل کے بعد کے کنارے کو ہموار کرنے کی مزید جدید تکنیکیں تیار کی گئی ہیں، جیسے کہ ایم ایل اے اے (کلزون 3 اور ڈریگن ایج II میں استعمال کیا جاتا ہے، دوسروں کے درمیان)، ایف ایکس اے اے (کریسس 2، ایف ای اے آر 3، ڈیوک نیوکیم فارایور میں استعمال ہوتا ہے)، ایس آر اے اے، ڈی ایل اے اے (اسٹار وارز: دی فورس انلیشڈ II میں استعمال ہوتا ہے)، اور پوسٹ ایم ایس اے اے (کریسس 2 میں بطور ڈیفالٹ اینٹی الیازنگ حل کے طور پر استعمال ہوتا ہے)۔ اگرچہ یہ کنارے کو ہموار کرنے کی تکنیک نہیں ہے، عارضی اینٹی الیازنگ (ہیلو: ریچ اور غیر حقیقی انجن میں استعمال ہوتا ہے) کناروں کو ہموار شکل دینے میں بھی مدد کر سکتا ہے۔ ڈائریکٹ ایکس 10 نے ایسی خصوصیات متعارف کروائیں جو شیڈروں کو کثیر نمونے والے رینڈر اہداف (اور ورژن 10.1 میں ڈیپتھ بفرز) میں انفرادی نمونوں تک رسائی کی اجازت دیتی ہیں، جس سے اس اے پی آئی کے صارفین کو ڈیفرڈ شیڈنگ میں ہارڈ ویئر اینٹی الیازنگ تک رسائی حاصل ہوتی ہے۔ یہ خصوصیات انہیں اینٹی ایلائزڈ کناروں پر ایچ ڈی آر برائٹ نقشہ سازی کو صحیح طریقے سے لاگو کرنے کی بھی اجازت دیتی ہیں، جہاں اے پی آئی کے پہلے ورژن میں اینٹی ایلائزنگ کا کوئی فائدہ ختم ہو سکتا ہے۔ ڈیفرڈ لائٹنگ (جسے لائٹ پری پاس بھی کہا جاتا ہے) ڈیفرڈ شیڈنگ کی ایک ترمیم ہے۔ یہ تکنیک ڈیفرڈ شیڈنگ میں دو کے بجائے تین پاس استعمال کرتی ہے۔ سین جیومیٹری کے اوپر پہلے پاس پر، کلر بفر پر صرف نارمل اور سپیکولر اسپریڈ فیکٹر لکھے جاتے ہیں۔ اسکرین اسپیس، "ڈیفرڈ" پاس پھر ڈفیوز اور سپیکولر لائٹنگ ڈیٹا کو الگ سے جمع کرتا ہے، لہذا فی پکسل شیڈنگ کے ساتھ حتمی تصویر کو آؤٹ پٹ کرنے کے لیے سین جیومیٹری کے اوپر ایک آخری پاس بنایا جانا چاہیے۔ موخر روشنی کا واضح فائدہ جی بفر کے سائز میں ڈرامائی کمی ہے۔ واضح قیمت یہ ہے کہ منظر کی جیومیٹری کو ایک بار کے بجائے دو بار پیش کرنے کی ضرورت ہے۔ ایک اضافی لاگت یہ ہے کہ ڈیفرڈ لائٹنگ میں ڈیفرڈ پاس کو ڈفیوز اور سپیکولر تابکاری کو الگ سے آؤٹ پٹ کرنا چاہیے، جبکہ ڈیفرڈ شیڈنگ میں ڈیفرڈ پاس کو صرف ایک مشترکہ تابکاری ویلیو آؤٹ پٹ کرنے کی ضرورت ہوتی ہے۔ جی بفر کے سائز میں کمی کی وجہ سے یہ تکنیک جزوی طور پر موخر شیڈنگ کے ایک سنگین نقصان پر قابو پا سکتی ہے-متعدد مواد۔ ایک اور مسئلہ جسے حل کیا جا سکتا ہے وہ ہے ایم ایس اے اے۔ ڈیفرڈ لائٹنگ کو ڈائریکٹ ایکس 9 ہارڈ ویئر پر ایم ایس اے اے کے ساتھ استعمال کیا جا سکتا ہے۔ تجارتی کھیلوں میں موخر روشنی ویڈیو گیمز میں اس تکنیک کے استعمال میں اضافہ ہوا ہے کیونکہ یہ بڑی مقدار میں متحرک لائٹس کے استعمال اور مطلوبہ شیڈر ہدایات کی پیچیدگی کو کم کرنے کے لحاظ سے قابل بناتا ہے۔ ڈیفرڈ لائٹنگ استعمال کرنے والے گیمز کی کچھ مثالیں یہ ہیں: ایلن ویک اساسنس کریڈ III بائیو شاک انفینٹ بلیک میسا بلر بریک ڈاؤن اور کریک ڈاؤن 2 کریسس 2 ڈیڈ اسپیس، ڈیڈ اسپیس 2 اور ڈیڈ اسپیس 3 ڈیوس ایکس: ہیومن ریوولوشن ڈریگنز ڈوگما گلڈ وارز 2 ہیلو: ریچ ان فیمس اینڈ ان فیمس 2 لٹل بگ پلینٹ میٹل گیئر سالڈ V: گراؤنڈ زیروز میٹل گیئر سالڈ V: دی فینٹم پین ریڈ ڈیڈ ریڈیمپشن ریزسٹنس سیریز روچرڈ شفٹ 2: انلیشڈ اسٹار کرافٹ II انچارٹڈ اینڈ انچارٹڈ 2 وینکیش گھوسٹ آف سوشیما ڈیفرڈ شیڈنگ تجارتی گیمز میں ڈیفرڈ لائٹنگ کے مقابلے میں، یہ تکنیک زیادہ نہیں ہے۔ ایمنیسیا: دی ڈارک ڈیسنٹ بیٹل فیلڈ 3 ڈوٹا 2 ڈینجنز ڈیجیٹل کامبیٹ سمیلیٹر (ڈی سی ایس) ورلڈ 2.5 گرینڈ تھیفٹ آٹو IV کلزون 2 اور کلزون 3 مافیا II مائنر وارز 2081 میٹرو 2033 رفٹ شریک اسپلنٹر سیل: کنویکشن دی S.T.A.L.K.E.R۔ گیم سیریز: شیڈو آف چرنوبل، کلیئر اسکائی اینڈ کال آف پریپیٹ ٹیبولا راسا ٹرائن 2 ویوا پیناٹا گیم انجن جن میں ڈیفرڈ شیڈنگ یا رینڈرنگ تکنیک شامل ہیں۔ انویل نیکسٹ کروم انجن کری انجن 3 فاکس انجن فراسٹبائٹ 2 گیم اسٹارٹ ہیمیمونٹ گیمز انجن (ایچ جی ای) آئی-نووا لیڈ ورکس ایم ٹی فریم ورک راک اسٹار ایڈوانسڈ گیم انجن ٹارک 3 ڈی یونٹی غیر حقیقی انجن 4 ویژن تخلیق انجن فال آؤٹ 4 اور اسکائیریم ایس ای مافیا انجن (ابتدائی الیوژن انجن) مافیا III اور مافیا: ڈیفینیٹ ایڈیشن ہسٹری موخر شیڈنگ کا خیال اصل میں مائیکل ڈیئرنگ اور ان کے ساتھیوں نے 1988 میں شائع ہونے والے ایک مقالے میں متعارف کرایا تھا جس کا عنوان تھا مثلث پروسیسر اور اگرچہ کاغذ کبھی بھی "ڈیفرڈ" لفظ استعمال نہیں کرتا ہے، لیکن ایک کلیدی تصور متعارف کرایا جاتا ہے ؛ ہر پکسل کو ڈیپتھ ریزولوشن کے بعد صرف ایک بار شیڈ کیا جاتا ہے۔ ڈیفرڈ شیڈنگ جیسا کہ آج ہم جانتے ہیں، جی بفرز کا استعمال کرتے ہوئے، 1990 میں سائیٹو اور تاکاہاشی کے ذریعہ ایک مقالے میں متعارف کرایا گیا تھا، حالانکہ وہ بھی "ڈیفرڈ" لفظ استعمال نہیں کرتے ہیں۔ پہلا موخر شیڈڈ ویڈیو گیم شریک تھا، جو 2001 میں ایکس بکس لانچ کا عنوان تھا۔ 2004 کے آس پاس، کموڈٹی گرافکس ہارڈ ویئر پر نفاذ ظاہر ہونا شروع ہوا۔ اس تکنیک نے بعد میں ویڈیو گیمز جیسی ایپلی کیشنز کے لیے مقبولیت حاصل کی، آخر کار 2008 سے 2010 کے آس پاس مرکزی دھارے میں شامل ہو گئی۔ حوالہ جات شیڈنگ