
ReSpec এই সপ্তাহে একটু ভিন্ন. আমি গেম ডেভেলপারস কনফারেন্সে (GDC) রৌদ্রোজ্জ্বল সান ফ্রান্সিসকোতে সপ্তাহটি কাটিয়েছি, মিটিং থেকে মিটিং পর্যন্ত দৌড়াচ্ছি এবং কয়েকটি শব্দ লেখার জন্য একটি মুহূর্ত খুঁজে বের করার চেষ্টা করেছি।
একটি সাধারণ কলামের পরিবর্তে, আমরা এই সপ্তাহে GDC এ যা দেখেছি তা কভার করে নতুন চালু হওয়া ReSpec নিউজলেটার থেকে এন্ট্রিগুলির একটি নমুনা পোস্ট করার সিদ্ধান্ত নিয়েছি। আপনি যদি প্রতি সপ্তাহে আপনার ইনবক্সে এই একই নিউজলেটার সরবরাহ করতে চান তবে এখনই সাইন আপ করুন এবং একচেটিয়া সামগ্রীতে প্রবেশ করুন৷
পাথ ট্রেসিং একটি মিথ্যা

হতে পারে "মিথ্যা" শব্দটি ব্যবহার করার জন্য খুব শক্তিশালী, তবে গেমগুলিতে এর প্রয়োগের ক্ষেত্রে পাথ ট্রেসিং বেশ জটিল। আমি জিডিসি-তে সাইবারপাঙ্ক 2077 এবং অ্যালান ওয়েক 2 উভয় ক্ষেত্রেই পাথ ট্রেসিংয়ের জন্য সেশনে বসেছিলাম, উভয়ই একটি খেলারযোগ্য ফ্রেম হারে রিয়েল টাইমে চালানোর জন্য একটি গেমে পাথ ট্রেসিং ব্যবহার করার জন্য একটি সাধারণ থ্রেড বর্ণনা করেছে। এবং এটিকে বলা হয় ReSTIR ডাইরেক্ট ইলুমিনেশন।
প্রথমত, পাথ ট্রেসিং কীভাবে কাজ করে: আমরা একটি পিক্সেল নিই, এবং আমরা ক্যামেরা থেকে দূরে এটি থেকে একটি লাইন ট্রেস করি। এটি কোন কিছুর সাথে ধাক্কা খেয়ে লাফিয়ে পড়ে। এবং এটি চলতে থাকে, দৃশ্যের চারপাশে বাউন্স করে যতক্ষণ না এটি ইথারে চলে যায় বা আলোর উত্সে শেষ না হয়। বিকাশকারীরা সেই পথগুলি চান যা আলোর উত্সে শেষ হয়, বিশেষত ছায়া গণনার জন্য।
যেকোন ধরণের রিয়েল-টাইম প্রসঙ্গে সমস্যা হল এই প্রক্রিয়াটি অত্যন্ত ব্যয়বহুল। এই সমস্ত রশ্মি এবং সেই সমস্ত বাউন্সের গণনা করা, যদিও সেগুলির সামান্য পরিমাণ ব্যবহার করা যাচ্ছে, এক টন সম্পদ হগ করে৷ এই কারণেই পাথ ট্রেসিং এতদিন ধরে একটি অফলাইন কৌশল হয়েছে — আপনাকে সম্ভাব্য পাথগুলি গণনা করতে হবে এবং তাদের গড় করতে হবে৷
এটি অ্যালান ওয়েক 2 এবং সাইবারপাঙ্ক 2077 এর ক্ষেত্রে নয়। সরাসরি আলোর জন্য, ReSTIR একটি দৃশ্যে আলোর উত্সগুলিকে ওজন করে এবং শুধুমাত্র সেগুলির একটি নির্বাচনের নমুনা করে কাজ করে। তারপর, এই নমুনাগুলি অস্থায়ীভাবে (ফ্রেম জুড়ে) এবং স্থানিকভাবে (আশেপাশের পিক্সেল সহ) ভাগ করা হয়। অ্যালান ওয়েক 2- এর মতো একটি গেমের ক্ষেত্রে, নির্দিষ্ট আলোগুলি ভারী হয়, যেমন নীল এবং লাল "সিনেমাটিক" লাইটগুলি আপনি একটি ট্রেন স্টেশনে দেখেন৷
ফলাফল হল এমন একটি চিত্র যা অনেক দ্রুত একত্রিত হয়, অন্তত যথেষ্ট দ্রুত যাতে আপনি একটি যুক্তিসঙ্গত ফ্রেম হারে একটি গেম খেলতে পারেন যা একটি সুস্থ ড্যাশ আপস্কেলিং এবং ফ্রেম জেনারেশনের সাথে।
এটি একটি আকর্ষণীয় টিডবিট, এবং এমন কিছু যা আশা করা যায় যে অ্যালান ওয়েক 2 এবং সাইবারপাঙ্ক 2077 এর টাইটান বিকাশকারীদের তাদের কাজ ভাগ করে নেওয়ার সাথে আরও সাধারণ হয়ে উঠবে।
মাইক্রোসফ্ট ঊর্ধ্বমুখীকরণে পা রাখছে

জিডিসি-তে, মাইক্রোসফ্ট অবশেষে ডাইরেক্টএসআর সম্পর্কে আরও কথা বলেছে, এবং এমনকি এএমডি এবং এনভিডিয়ার ডেভেলপারদের একই প্যানেলে বসার জন্য লড়াই করতে পেরেছে। একসাথে, এমনকি! ডাইরেক্টএসআর উচ্চতর যুদ্ধগুলি শেষ করার একটি উপায় নয়, যেমনটি আমরা প্রাথমিকভাবে ভেবেছিলাম, তবে এটি ডেভেলপারদের তাদের গেমগুলিতে একাধিক আপস্কেলিং বৈশিষ্ট্য যুক্ত করার জন্য একটি ঐক্যবদ্ধ কাঠামো প্রদান করে।
যে একটি বড় অংশ ইনপুট. ডাইরেক্টএসআর-এর সাথে ইন্টারফেস করার সময়, ইনপুটগুলির একটি প্রমিত সেট রয়েছে যা ডেভেলপাররা অ্যাপ্লিকেশন প্রোগ্রামিং ইন্টারফেস (API) কে মঞ্জুর করে। তারপরে এটি সেই ইনপুটগুলিকে আপ-স্কেলারের কাছে প্রেরণ করতে পারে যা অন্তর্নির্মিত, যেমন AMD-এর FSR 2, অথবা যে ভেরিয়েন্টগুলির জন্য নির্দিষ্ট হার্ডওয়্যার প্রয়োজন, যেমন Nvidia's DLSS ।
এটি এনভিডিয়ার নিজস্ব স্ট্রীমলাইন ফ্রেমওয়ার্ক থেকে ভিন্ন নয়, যা এএমডি বল না খেলার সিদ্ধান্ত নেওয়ার আগে অনুরূপ কিছু সম্পন্ন করার জন্য তৈরি করা হয়েছিল। মনে হচ্ছে মাইক্রোসফ্ট, এই যুদ্ধে নিরপেক্ষ তৃতীয়-পক্ষ হওয়ায়, সবাইকে একত্রিত করতে পারে।
আমি এখনও নিশ্চিত নই যে এটি আসলে গেমগুলিতে কীভাবে দেখাবে। DirectSR এখনও ডেভেলপারদের কাছে উপলব্ধ নয়৷ এটি শেষ ব্যবহারকারীদের জন্য কিছুই পরিবর্তন করা সম্ভব নয়, এবং আমরা এখনও গ্রাফিক্স মেনুতে একাধিক আপস্কেলিং বিকল্প দেখতে পাই। সম্ভবত আপনার হার্ডওয়্যারের উপর নির্ভর করে মাইক্রোসফ্ট একটি সর্বজনীন আপস্কেলিং বিকল্প অন্তর্ভুক্ত করতে উইন্ডোজ আপডেট করবে। এটা পরিষ্কার নয়, কিন্তু ডিএলএসএস, এফএসআর, এবং ইন্টেলের XeSS জুড়ে তাদের গেমগুলিতে আপস্কেলিংয়ের প্রতিটি স্বাদ বাস্তবায়ন করা ডেভেলপারদের জন্য ডিরেক্টএসআর-এর এখনও সহজ করা উচিত।
একটি উল্টোদিকে যা মূলত আসেনি তা হল এই সিস্টেমটি আপডেটের সাথে কীভাবে কাজ করে। এনভিডিয়া, এএমডি, এবং ইন্টেল ক্রমাগত তাদের আপস্কেলিং প্রযুক্তির নতুন সংস্করণ প্রকাশ করে যা চিত্রের গুণমানে সামান্য উন্নতি করে বা আপস্কেলিং কীভাবে কাজ করে তা সামান্য পরিবর্তন করে। DirectSR এর সাথে, বিকাশকারীদের তাদের গেমগুলিতে এই সমস্ত আপডেট যোগ করার প্রয়োজন হবে না – তারা কেবল API জুড়ে কাজ করবে।
এই সব আমার জন্য থাম্বস আপ. আপস্কেলিং একটি বিতর্কের প্রধান বিষয় হয়েছে, বিশেষ করে স্টারফিল্ড এবং রেসিডেন্ট ইভিল 4 এর মতো বড় রিলিজের জন্য যা লঞ্চের সময় শুধুমাত্র একজন আপস্কেলারকে সমর্থন করেছিল। একমাত্র নেতিবাচক দিক হল ফ্রেম প্রজন্ম। এটি এখনই ডাইরেক্টএসআর-এর কার্ডে রয়েছে বলে মনে হচ্ছে না, তাই বড় গ্রাফিক্স ব্র্যান্ডগুলির জন্য ভবিষ্যতে আরও অনেক কিছু থাকবে।
আপনার সিপিইউর মৃত্যু? বেপারটা এমন না

এই বছরের জিডিসি-র মধ্যে সবচেয়ে উত্তেজনাপূর্ণ ঘোষণাগুলির মধ্যে একটি ছিল ওয়ার্ক গ্রাফ । আমি নিউজলেটারে গত সপ্তাহে এই সম্পর্কে কথা বলেছিলাম, কিন্তু আমি মাইক্রোসফ্টের ডাইরেক্টএক্স স্টেট অফ দ্য ইউনিয়নের সময় ওয়ার্ক গ্রাফগুলি ঘনিষ্ঠভাবে দেখেছি। তাদের পিছনে ধারণা হল আপনার GPU-কে তার নিজস্ব কাজ পরিচালনা করতে দিয়ে আপনার CPU-তে চাপ কমানো।
কথোপকথনে একটু বেশি সূক্ষ্মতা আছে। এটি আপনার জিপিইউকে কী করতে হবে তা সিদ্ধান্ত নিতে আরও শক্তি দেয়, যেমন প্রোগ্রামেবল শেডারগুলি প্রথম গ্রাফিক্স কার্ডে চালু করা হয়েছিল। একটি ওয়ার্ক গ্রাফ নোড নিয়ে গঠিত, এবং সেই নোডগুলি CPU থেকে কাজের জন্য অপেক্ষা না করে আপনার GPU-এর জন্য কাজ করার জন্য আরও নোড তৈরি করতে পারে। মাইক্রোসফ্ট এটিকে একটি কম্পিউট শেডার হিসাবে বর্ণনা করেছে যা অন্য একটি কম্পিউট শেডার চালু করতে পারে।
সুস্পষ্ট সুবিধা, এবং একজন পিসি গেমাররা দ্রুত গ্রহণ করেছিল, তা হল GPU ব্যবহার। মাইক্রোসফ্ট ব্যাখ্যা করেছে যে বর্তমান সিস্টেমের জন্য GPU এবং CPU এর মধ্যে একটি গ্লোবাল সিঙ্ক পয়েন্ট প্রয়োজন। প্রায়শই এর মানে হল যে GPU, একটি অত্যন্ত সমান্তরাল ডিভাইস, একটি সিঙ্ক হওয়ার জন্য অপেক্ষা করার সময় অল্প সময়ের জন্য কাজ ছাড়াই থাকে।
এটা কিভাবে স্মৃতিতে প্রভাব ফেলবে তা আমি আশা করিনি। DirectX 12-এ বর্তমান প্রোগ্রামিংয়ের সাথে, মাইক্রোসফ্ট ব্যাখ্যা করেছে যে আপনি ExecuteIndirect কমান্ড ব্যবহার করবেন, যার জন্য আপনাকে বেশ কয়েকটি বাফার রাখা প্রয়োজন। কাজের গ্রাফগুলির সাথে, আপনাকে সেই বাফারগুলি ধরে রাখতে হবে না, কারণ GPU তার নিজস্ব কাজ শুরু করতে পারে এবং নিজের জন্য কাজ তৈরি করা চালিয়ে যেতে পারে।
AMD থেকে রবার্ট মার্টিন দেখিয়েছেন যে 3.3GB মেমরির প্রয়োজন এমন একটি দৃশ্যের সাথে এটি কত বড় চুক্তি। কাজের গ্রাফের সাথে, মেমরির ব্যবহার ছিল মাত্র 113MB, এবং এটি একটি ছোট পারফরম্যান্স বুস্টের সাথে এসেছিল। উপস্থাপনা যেমন বর্ণনা করা হয়েছে, "মেমরি ফুটপ্রিন্ট স্কেল GPU এর আকারের সাথে, কাজের চাপের আকার নয়।"
কাজের গ্রাফগুলি শেষ ব্যবহারকারীদের কাছে অদৃশ্য, তবে এটি সত্যিই গ্রাফিক্স প্রোগ্রামিংয়ের পরবর্তী সীমান্ত, এবং এএমডি, এনভিডিয়া এবং মাইক্রোসফ্ট যেমন বলেছে, এটি এমন কিছু যা বিকাশকারীরা বছরের পর বছর ধরে কাজ করে চলেছে। কম মেমরি ব্যবহার এবং ভাল পারফরম্যান্স আমার কাছে ভাল লাগছে। ওয়ার্ক গ্রাফ বাস্তব গেম জুড়ে একটি স্প্ল্যাশ না হওয়া পর্যন্ত আমাদের অপেক্ষা করতে হবে।
