Шейдеры для работы с прямоугольником
This commit is contained in:
parent
717e083bc0
commit
c32a450770
|
@ -0,0 +1,12 @@
|
||||||
|
#version 420 core
|
||||||
|
|
||||||
|
in vec2 texCoord;
|
||||||
|
|
||||||
|
uniform sampler2D tex;
|
||||||
|
|
||||||
|
out vec4 color;
|
||||||
|
|
||||||
|
void main()
|
||||||
|
{
|
||||||
|
color = texture(tex, texCoord);
|
||||||
|
}
|
|
@ -0,0 +1,11 @@
|
||||||
|
#version 420 core
|
||||||
|
|
||||||
|
layout(location = 0) in vec3 pos;
|
||||||
|
|
||||||
|
out vec2 texCoord;
|
||||||
|
|
||||||
|
void main()
|
||||||
|
{
|
||||||
|
gl_Position = vec4(pos, 1.0);
|
||||||
|
texCoord = (pos.xy + vec2(1.0)) / 2; // Переход от [-1;1] к [0;1]
|
||||||
|
}
|
|
@ -137,7 +137,12 @@ int main(void)
|
||||||
// Базовый буфер кадра
|
// Базовый буфер кадра
|
||||||
glBindFramebuffer(GL_FRAMEBUFFER, 0);
|
glBindFramebuffer(GL_FRAMEBUFFER, 0);
|
||||||
|
|
||||||
|
// Шейдер для переноса текстуры на прямоугольник
|
||||||
|
ShaderProgram quadProgram;
|
||||||
|
// Загрузка и компиляция шейдеров
|
||||||
|
quadProgram.load(GL_VERTEX_SHADER, "shaders/quad.vert");
|
||||||
|
quadProgram.load(GL_FRAGMENT_SHADER, "shaders/quad.frag");
|
||||||
|
quadProgram.link();
|
||||||
|
|
||||||
// Пока не произойдет событие запроса закрытия окна
|
// Пока не произойдет событие запроса закрытия окна
|
||||||
while(!glfwWindowShouldClose(window))
|
while(!glfwWindowShouldClose(window))
|
||||||
|
|
Loading…
Reference in New Issue