我想在GLSL中繪製一些深度圖的國王,我至少需要一個10bit通道。我決定使用GL_R16或GL_RGBA12 - 他們是最近的一個,並且GL_R16將花費更少的gpu內存(因爲它會對..)。如何在GLSL中使用RGBA16?
glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA12, width, height, 0, GL_RGBA, GL_UNSIGNED_BYTE, 0);
問題出在這裏:如何讓GLSL正確使用它? Sampler2D將其轉換爲經典的8位RGBA ... 夾緊情況如何?在GLSL中,每個組件的顏色被歸一化爲[0,1] - 對於16位它是相同的嗎? 我只想知道如何使用它。
您定位的是什麼GLSL'#version'? – genpfault
120 ..很不幸 – Krzycho
*「Sampler2D將其轉換爲經典的8位RGBA」* - 我很確定它沒有。最後,你從'texture2D'得到的是一個'float'。 –