لماذا يعيد mode1d () في GLSL A VEC4؟
-
29-09-2019 - |
سؤال
أحاول استخدام صفيف 1D كجدول بحث في تظليل الرأس الخاص بي .. فلماذا عندما أتصل
texture1D(tex,gl_TexCoord[0].s);
هل يعود VEC4؟ أعني أنني أعلم أن هذا ما يفعله ، ولكن ماذا تمثل القيم الأربعة؟ كل ما أريده هو القيمة الوحيدة من الملمس بناءً على الإحداثيات.
المحلول
لأن الملمس 1D يمكن/لديه قيم RGBA (الأحمر ، الأخضر ، الأزرق ، ألفا). إذا قمت بتخزين بيانات نسيج 1D في القناة الحمراء (GL_RED) ، فيمكنك الوصول إلى هذه البيانات بـ:
texture1D(tex,gl_TexCoord[0].s)
.r
;
لا تنتمي إلى StackOverflow