我是着色器编程的新手,请清除我的怀疑。
我需要在片段着色器中存储纹理和访问中的浮点数据,所以我在opengl es 2.0中创建纹理,如下所示:
GL_FLOAT Buffer[2][2][4] = {{0.0, 1.0, 2.0, 3.0}, {4.0, 5.0, 6.0, 7.0},
{8.0, 9.0, 10.0, 11.0}, {12.0, 13.0, 14.0, 15.0}};
glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, 2, 2, 0, GL_RGBA,GL_FLOAT,Buffer);
在着色器程序中
以下代码的输出是什么
声明1:vec4 buf1 = texture2D(sampler2D, vec2(0.0,0.0));
声明2:vec4 buf2 = texture2D(sampler2D, vec2(1.0,0.0));
从语句1开始,我得到这样的输出吗?
buf1.r = 0.0;
buf1.g = 1.0;
buf1.b = 2.0;
buf1.a = 3.0;
请回复并提前致谢