angle/extensions/ANGLE_polygon_mode.txt

90 строки
2.6 KiB
Plaintext

Name
ANGLE_polygon_mode
Name Strings
GL_ANGLE_polygon_mode
Status
Draft
Version
Last Modified Date: March 31, 2023
Revision: 1
Number
OpenGL ES Extension XX
Dependencies
This extension is written against the OpenGL ES 3.1 (November 3, 2016)
specification, but can apply to earlier versions.
Overview
Rendering triangle primitives as lines, i.e., in a wireframe mode,
is useful for debugging GPU applications.
This effect cannot be achieved by drawing the same triangle primitives with
the LINES mode due to differences in primitive assembly and rasterization.
Moreover, polygon offset state is ignored for line primitives thus making
the wireframe overlay even more difficult to be rendered correctly.
This extension has the same semantics as NV_polygon_mode but the point
rasterization mode is omitted to support the extension on layered OpenGL ES
implementations, such as ANGLE, when the underlying API does not support
point rasterization mode.
New Procedures and Functions
void PolygonModeANGLE(enum face, enum mode);
New Tokens
Accepted by the <pname> parameter to GetIntegerv:
POLYGON_MODE_ANGLE 0x0B40
Accepted by the <pname> parameters of Enable, Disable and IsEnabled:
POLYGON_OFFSET_LINE_ANGLE 0x2A02
Returned by GetIntegerv, GetFloatv, and GetInteger64v when <pname> is
POLYGON_MODE_ANGLE:
LINE_ANGLE 0x1B01
FILL_ANGLE 0x1B02
New State
Modify Table 20.6, Rasterization
Add:
Initial
Get Value Type Get Command Value Description Sec.
----------------------- ---- ----------- ---------- --------------------------- ------
POLYGON_MODE_ANGLE E GetIntegerv FILL_ANGLE Polygon rasterization mode 13.5.1pm
(front & back)
POLYGON_OFFSET_LINE_ANGLE B IsEnabled FALSE Polygon offset enable for 13.5.2
LINE_ANGLE mode rasterization
Change description for POLYGON_OFFSET_FILL to "Polygon offset enable for
FILL_ANGLE mode rasterization"
Errors
An INVALID_ENUM error is generated by PolygonModeANGLE if <face> is not
FRONT_AND_BACK.
An INVALID_ENUM error is generated by PolygonModeANGLE if <mode> is not
one of LINE_ANGLE or FILL_ANGLE.
Revision History
3/31/2023 First revision