17 glGenVertexArrays(1, &s->
vao);
D;
22 glDeleteVertexArrays(1, &s->
vao);
D;
27 glUniform1f(s->
er2, escaperadius2);
D;
29 glBindVertexArray(s->
vao);
D;
30 glBindBuffer(GL_ARRAY_BUFFER, vbo);
D;
31 glEnableVertexAttribArray(s->
cne0);
D;
32 glEnableVertexAttribArray(s->
zdz0);
D;
33 glVertexAttribPointer(s->
cne0, 4, GL_FLOAT, GL_FALSE, (
DE ? 8 : 6) *
sizeof(GLfloat), 0);
D;
34 glVertexAttribPointer(s->
zdz0,
DE ? 4 : 2, GL_FLOAT, GL_FALSE, (
DE ? 8 : 6) *
sizeof(GLfloat), ((GLbyte *)0)+(4*
sizeof(GLfloat)));
D;
35 glBindBuffer(GL_ARRAY_BUFFER, 0);
D;
36 glBindVertexArray(0);
D;
41 glBindVertexArray(s->
vao);
D;
43 glEnable(GL_RASTERIZER_DISCARD);
D;
44 glBindBufferBase(GL_TRANSFORM_FEEDBACK_BUFFER, 0, vbo);
D;
45 glBeginQuery(GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN, query);
D;
46 glBeginTransformFeedback(GL_POINTS);
D;
47 glDrawArrays(GL_POINTS, 0, *active_count);
D;
48 glEndTransformFeedback();
D;
49 glEndQuery(GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN);
D;
50 glGetQueryObjectuiv(query, GL_QUERY_RESULT, active_count);
D;
51 glBindBufferBase(GL_TRANSFORM_FEEDBACK_BUFFER, 0, 0);
D;
52 glDisable(GL_RASTERIZER_DISCARD);
D;
54 glBindVertexArray(0);
D;