तो मैं "आधिकारिक ओपनजीएल गाइड" पढ़ रहा था और एक खंड में जहां उन्होंने भौतिक प्रकाश पढ़ाया था, उन्होंने अचानक टुकड़े टुकड़े में इनपुट चर के लिए "फ्लैट" क्वालीफायर का उपयोग किया। मैंने इस मामले को Google किया और मैं "फ्लैट छायांकन" और "चिकनी छायांकन" और उनके बीच के अंतर के साथ आया, जिसे मैं समझ नहीं पा रहा हूं कि यह एक साधारण "MatIndex" चर से कैसे संबंधित है।glsl में "फ्लैट" क्वालीफायर?
struct MaterialProperties {
vec3 emission;
vec3 ambient;
vec3 diffuse;
vec3 specular;
float shininess;
};
// a set of materials to select between, per shader invocation
const int NumMaterials = 14;
uniform MaterialProperties Material[NumMaterials];
flat in int MatIndex; // input material index from vertex shader
क्या इस सब के बारे में है: यहाँ किताब से उदाहरण कोड है?
क्षमा करें लेकिन हमारे संदर्भ में "इंटरपोलेशन" का क्या अर्थ है? अंग्रेजी मेरी मूल भाषा नहीं है और जब मैं अपनी भाषा में अपना अनुवाद प्राप्त करने का प्रयास करता हूं तो मुझे "इंटरपोलैटिया" मिलता है, जो एक ही शब्द है। = [ – Pilpel
@Pilpel: [इंटरपोलेशन] (https://en.wikipedia.org/wiki/Interpolation) एक सामान्य अवधारणा है जिसे आप ग्राफिक्स करना चाहते हैं जब आप खुद को परिचित करना चाहिए। इंटरपोलेशन के साथ, आमतौर पर डेटा बिंदुओं का एक सेट होता है और दिए गए डेटा बिंदुओं के बीच मूल्य उत्पन्न करने का प्रयास करता है। इस संदर्भ में, हमारे पास प्रति-चरणीय डेटा है और इसे प्रति टुकड़े को अलग करना है। रंग प्रति vertex के साथ एक त्रिकोण की कल्पना करो।वर्टेक्स ए के लिए, हम वर्टेक्स बी के लिए लाल निर्दिष्ट करते हैं, हम हरे रंग को निर्दिष्ट करते हैं और वर्टेक्स सी के लिए, हम नीले रंग को निर्दिष्ट करते हैं। इंटरपोलेशन पूरे त्रिकोण में चिकनी रंग ग्रेडियेंट उत्पन्न करेगा। – derhass