আমি আমার (প্রাক্তন) নিয়োগকর্তার জন্য এবং আমার নিজস্ব ইন্ডি গেমসের জন্য আমার নিজস্ব কাস্টম ইঞ্জিনগুলিতে 3 ডি গেম প্রোগ্রামিংয়ের ন্যায্য অংশটি করেছি।
প্রথমদিকে, আমি ডাইরেক্ট 3 ডি 9, এবং ডি 3 ডিএক্স 9 দিয়ে শুরু করেছি যা আমার পক্ষে বেশ কিছু করেছে এবং শেডারের দিক থেকে আমাকে মোটেও ভাবার দরকার হয়নি।
এর পরে, আমি আমার প্রথম ডিরেক্ট 3 ডি 9 শেডার লিখলাম, তবে বেশিরভাগ ক্ষেত্রে আমি যা কিছু করি তার জন্য একটি খুব সাধারণ শেডার ব্যবহার করি।
আমার গেম ইঞ্জিনের সাম্প্রতিকতম পুনরাবৃত্তিতে আমি ডাইরেক্ট 3 ডি 11 এ চলে এসেছি এবং এর সাথে আমি প্রচুর শেডার তৈরি করেছি। আমি জিপিইউতে স্কিনিং, জিপিইউ গণনা করা কণা, প্রচুর আলো এবং পোস্ট প্রসেসিং এফেক্টস সবই জিপিইউতে করেছি। সত্যিই দুর্দান্ত জিনিস।
এখনও অবধি আমি কেবল ভার্টেক্স এবং পিক্সেল / টুকরা শেডার ব্যবহার করেছি। যদিও এখনও আমি প্রচুর জিনিস এখনও করি নি, আমি বিশ্বাস করি যে আমার ভার্টেক্স এবং পিক্সেল / খণ্ডের শেডারগুলি কী করে এবং কীভাবে সমস্ত সম্পূর্ণ 3 ডি পাইপলাইনে ফিট করে into
আরও সাম্প্রতিক ঘটনাবলিগুলির সাথে তাল মিলিয়ে আমি আরও নতুন শেডার স্টেজগুলির সাথে খুব আগ্রহী হয়ে উঠছি। এটি হ'ল জ্যামিতি শেডার, এবং আরও নতুন, হাল এবং ডোমেন শেডার।
আমি এই স্তরগুলি কখনও ব্যবহার করি নি, তবে আমি যা জানি, জ্যামিতি শেডারটি যদি সক্ষম করা হয় তবে প্রতিটি রূপান্তরিত ভার্টেক্সের জন্য একবার (বা একবার আদিম?) এর জন্য ভার্টেক্স শ্যাডারের পরে চালিত হয় এবং আপনাকে শীর্ষবিন্দু (এবং আদিম?) বাতিল করতে দেয়? , এবং নতুন তৈরি করুন (যা আমি পাইপলাইনের শুরুতে ফিরে যাব বলে মনে করি?)।
আমার অনুমান যে জ্যামিতি শেডারের মূল ব্যবহারটি জিপিইউতে জিওমেট্রিটি প্রোগ্রামগতভাবে তৈরি করা হবে। একটি সাধারণ ব্যবহার হ'ল একক ভার্টেক্সের উপর ভিত্তি করে বিলবোর্ডের কোয়াড তৈরি করা, তবে ফ্র্যাকটালগুলি এবং অন্যান্য স্টাফ তৈরির পরিবর্তে আমি অন্যান্য অনেক সাধারণ পরিস্থিতি সত্যই কল্পনা করতে পারি না আপনি 100% প্রোগ্রামক্রমে তৈরি করতে পারেন।
হাল এবং ডোমেন শেডারগুলির ক্ষেত্রে, দেখে মনে হচ্ছে এগুলি টেসলেশন সম্পর্কিত (রুক্ষ পৃষ্ঠতলগুলি থেকে মসৃণ পৃষ্ঠগুলি তৈরি করা?), এবং অবশ্যই একসাথে ব্যবহার করা উচিত বা আদৌ নয়। "প্যাচ" শব্দটি এখানে প্রচলিত বলে মনে হয়।
ব্যবহারিক দিক থেকে, কেউ কী আমাকে এই ব্যাখ্যা করার জন্য যত্ন নেবে যে এই নতুন-ইশ শ্যাডার পর্যায়গুলি কী, তারা কীভাবে 3 ডি পাইপলাইনে ফিট করে এবং কোন ক্ষেত্রে আমি সেগুলি ব্যবহার করার কথা বিবেচনা করব?