我正在尝试将图像投射为光源的聚光灯。
到目前为止,我的片段着色器看起来像
uniform sampler2D image;
varying vec4 projCoord;
void main() {
gl_FragColor = texture2DProj(image, gl_TexCoord[0].xyzw);
}
我的顶点着色器看起来像
varying vec4 projCoord;
void main() {
gl_Position = gl_ModelViewMatrix * gl_Vertex;
vec4 pos = gl_ModelViewMatrix * gl_Vertex;
projCoord = gl_TextureMatrix[4] * pos;
}
我只想从我的光源投射图像。我知道我需要添加我的光矢量并以这种方式对其进行操作,但我无法正确投影我的图像。Atm,我的图像被投影到所有四个侧面的加载对象(立方体)上。