
[GL 4.0] Tessellation Shader
Posted Saturday, 15 May, 2010 - 15:25 by Inertia| Project: | The Open Toolkit library |
| Version: | 1.x-dev |
| Component: | Code |
| Category: | task |
| Priority: | normal |
| Assigned: | Unassigned |
| Status: | fixed |
Jump to:
http://www.opengl.org/registry/specs/ARB/tessellation_shader.txt
Add to enum BeginMode:
PATCHES 0xE
Create new enum PatchParameterInt.
Add to BOTH enums PatchParameterInt and GetPName:
PATCH_VERTICES 0x8E72
Create new enum PatchParameterFloatArray.
Add to BOTH enums PatchParameterFloatArray and GetPName:
PATCH_DEFAULT_INNER_LEVEL 0x8E73
PATCH_DEFAULT_OUTER_LEVEL 0x8E74
Add to enum ProgramParameter:
TESS_CONTROL_OUTPUT_VERTICES 0x8E75
TESS_GEN_MODE 0x8E76
TESS_GEN_SPACING 0x8E77
TESS_GEN_VERTEX_ORDER 0x8E78
TESS_GEN_POINT_MODE 0x8E79
Add to enum GetPName:
MAX_PATCH_VERTICES 0x8E7D
MAX_TESS_GEN_LEVEL 0x8E7E
MAX_TESS_CONTROL_UNIFORM_COMPONENTS 0x8E7F
MAX_TESS_EVALUATION_UNIFORM_COMPONENTS 0x8E80
MAX_TESS_CONTROL_TEXTURE_IMAGE_UNITS 0x8E81
MAX_TESS_EVALUATION_TEXTURE_IMAGE_UNITS 0x8E82
MAX_TESS_CONTROL_OUTPUT_COMPONENTS 0x8E83
MAX_TESS_PATCH_COMPONENTS 0x8E84
MAX_TESS_CONTROL_TOTAL_OUTPUT_COMPONENTS 0x8E85
MAX_TESS_EVALUATION_OUTPUT_COMPONENTS 0x8E86
MAX_TESS_CONTROL_UNIFORM_BLOCKS 0x8E89
MAX_TESS_EVALUATION_UNIFORM_BLOCKS 0x8E8A
MAX_TESS_CONTROL_INPUT_COMPONENTS 0x886C
MAX_TESS_EVALUATION_INPUT_COMPONENTS 0x886D
MAX_COMBINED_TESS_CONTROL_UNIFORM_COMPONENTS 0x8E1E
MAX_COMBINED_TESS_EVALUATION_UNIFORM_COMPONENTS 0x8E1F
Add to enum ActiveUniformBlockParameter:
UNIFORM_BLOCK_REFERENCED_BY_TESS_CONTROL_SHADER 0x84F0
UNIFORM_BLOCK_REFERENCED_BY_TESS_EVALUATION_SHADER 0x84F1
Add to enum ShaderType:
TESS_EVALUATION_SHADER 0x8E87
TESS_CONTROL_SHADER 0x8E88
Functions:
C: void PatchParameteri(enum pname, int value);
New: void PatchParameteri(PatchParameterInt pname, int value);
C: void PatchParameterfv(enum pname, const float *values);
New: void PatchParameterfv(PatchParameterFloatArray pname, const float *values);
-------------------------------
Part of spec, but we have no way to handle these. Just here to be complete:
Returned by GetProgramiv when is TESS_GEN_MODE:
TRIANGLES
QUADS
ISOLINES 0x8E7A
Returned by GetProgramiv when is TESS_GEN_SPACING:
EQUAL
FRACTIONAL_ODD 0x8E7B
FRACTIONAL_EVEN 0x8E7C
Returned by GetProgramiv when is TESS_GEN_VERTEX_ORDER:
CCW
CW
Returned by GetProgramiv when is TESS_GEN_POINT_MODE:
FALSE
TRUE


Comments
#1
Fixed in gl4 branch, r2952.