PDA

View Full Version : point sprites, help please...



sandbucket
09-20-2013, 02:24 PM
hi, i have been struggling with point sprites for a long time here are my vertex and fragment shaders

const char *fshader =

"#version 430 core\n"
"uniform sampler2D tex1;\n"
"out vec4 color;\n"
"void main(void)\n"
"{\n"
" color = texture2D(tex1, gl_PointCoord);\n"
"}";


const char *vshader =
"#version 430 core\n"
"layout (location = 0) in vec4 vertices;\n"
"void main(void)\n"
"{\n"
" gl_PointSize = 60;\n"
" gl_Position = vertices;\n"
"}";
i set up the texture by loading it with SOIL. then i use glUniform1i to set the sampler2D variable to 1 and then i make the activetexture unit 1 by glActiveTexture(GL_TEXTURE1) and bind the image to it.
heres my display function

void display ()
{
glClear (GL_COLOR_BUFFER_BIT);

glEnable(GL_PROGRAM_POINT_SIZE);

glBindVertexArray (vao);
glDrawArrays (GL_POINTS, 0, 4);

glDisable(GL_PROGRAM_POINT_SIZE);
}
thanks much in advance :)

rombust
09-25-2013, 03:22 AM
Have a look at the shader at the top of https://github.com/sphair/ClanLib/blob/master/Examples/Display_Render/PointSprite/Sources/app.cpp
Remember to set
glPointSize(point_size);
glPointParameterf(GL_POINT_FADE_THRESHOLD_SIZE, point_fade_treshold_size);
glEnable(GL_VERTEX_PROGRAM_POINT_SIZE);