GL_EXT_tessellation_point_size#

Supported Hardware#

Series6XT

Valid APIs#

OpenGL ES 3.1

Description#

This extension adds programmable point size to the tessellation shaders and allows resizing of generated point sprites that come through as input - useful for things like particle effects.

Example#

// Tessellation control shader
#extension GL_EXT_tessellation_shader : require
#extension GL_EXT_tessellation_point_size : require
#extension GL_EXT_shader_io_blocks : require
layout(vertices = 1) out;
void main(void)
{
    gl_TessLevelOuter[0] = 2.0;
    gl_TessLevelOuter[1] = 4.0;
    gl_TessLevelOuter[2] = 6.0;
    gl_TessLevelOuter[3] = 8.0;
    gl_TessLevelInner[0] = 8.0;
    gl_TessLevelInner[1] = 8.0;
    gl_out[gl_InvocationID].gl_Position = gl_in[gl_InvocationID].gl_Position;
    gl_out[gl_InvocationID].gl_PointSize = gl_in[gl_InvocationID].gl_PointSize * 1.1;
}