चीजों को यथासंभव सरल रखना सबसे अच्छा है। प्रत्येक वस्तु के लिए एक ही शेडर को डुप्लिकेट करना अनावश्यक है और जल्दी से फूला हुआ होगा। आप एक विशालकाय शेडर भी नहीं चाहते हैं जो हर संभव उपयोग के मामले को कवर करता है, क्योंकि यह अनावश्यक ओवरहेड का कारण बनता है।
इसे प्राप्त करने के लिए shader प्रबंधन और "इष्टतम" तरीके पर कई राय हैं। मैंने कुछ shader कार्यान्वयन भी देखे हैं, जहाँ हर shader जनरेट-ऑफ-फ्लाई बेस्ड ऑफ पैरामीटर्स (जैसे Unreal इंजन ) में उत्पन्न होता है ।
किसी के लिए इस क्षेत्र में बस शुरू करने के लिए, पहले बुनियादी शेड्स को पेंसिल करना अच्छा हो सकता है। उदाहरण के लिए, मेरे पास बनावटहीन वस्तुओं के लिए एक शेडर है, मूल बनावट और प्रति-पिक्सेल-प्रकाश समर्थन के साथ एक shader, आदि ... फिर हर बार मैं एक अलग प्रभाव चाहता हूं जो पिछले shader का उपयोग करके नहीं किया जा सकता है, फिर मैं ' नए प्रभाव के लिए एक नया निर्माण करेंगे।
इस तरह की प्रणाली का उद्देश्य चीजों को सरल रखना है। बस। रखें। यह। सरल।