mirror of
https://github.com/godotengine/godot-angle-static.git
synced 2026-01-06 02:09:55 +03:00
Introduce GL_ANGLE_logic_op
This extension exposes the desktop GL glLogicOp function as a GLES extension. This is supported by Vulkan through the logicOp feature as well. The goal is to directly use this extension in GLES1 emulation where the backend supports it, avoiding a more costly fallback. Bug: angleproject:3862 Change-Id: I7ed436cdf401437157ca9724168849b4c819b91b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3898310 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com> Reviewed-by: Geoff Lang <geofflang@chromium.org>
This commit is contained in:
committed by
Angle LUCI CQ
parent
0fefbe83ec
commit
de73f7cd7d
79
extensions/ANGLE_logic_op.txt
Normal file
79
extensions/ANGLE_logic_op.txt
Normal file
@@ -0,0 +1,79 @@
|
||||
Name
|
||||
|
||||
ANGLE_logic_op
|
||||
|
||||
Name Strings
|
||||
|
||||
GL_ANGLE_logic_op
|
||||
|
||||
Contributors
|
||||
|
||||
Shahbaz Youssefi, Google
|
||||
|
||||
Contact
|
||||
|
||||
Shahbaz Youssefi, Google (syoussefi 'at' google.com)
|
||||
|
||||
Status
|
||||
|
||||
Draft
|
||||
|
||||
Version
|
||||
|
||||
Last Modified Date: Sep 14, 2022
|
||||
Revision: 1
|
||||
|
||||
Number
|
||||
|
||||
TBD
|
||||
|
||||
Dependencies
|
||||
|
||||
Written against the OpenGL ES 2.0 specifications
|
||||
|
||||
Overview
|
||||
|
||||
For internal use of ANGLE for GLES1 emulation, through this extension the
|
||||
backend lets the frontend know that the equivalent of glLogicOp is natively
|
||||
supported and can be used.
|
||||
|
||||
New Procedures and Functions
|
||||
|
||||
The following commands are added:
|
||||
|
||||
void LogicOpANGLE(enum op);
|
||||
|
||||
New Tokens
|
||||
|
||||
The following tokens are added:
|
||||
|
||||
Accepted by the <cap> parameter of Enable, Disable, and IsEnabled:
|
||||
|
||||
COLOR_LOGIC_OP_ANGLE 0x0BF2
|
||||
|
||||
Accepted by the <op> parameter of LogicOpANGLE:
|
||||
|
||||
LOGIC_OP_CLEAR_ANGLE 0x1500
|
||||
LOGIC_OP_AND_ANGLE 0x1501
|
||||
LOGIC_OP_AND_REVERSE_ANGLE 0x1502
|
||||
LOGIC_OP_COPY_ANGLE 0x1503
|
||||
LOGIC_OP_AND_INVERTED_ANGLE 0x1504
|
||||
LOGIC_OP_NOOP_ANGLE 0x1505
|
||||
LOGIC_OP_XOR_ANGLE 0x1506
|
||||
LOGIC_OP_OR_ANGLE 0x1507
|
||||
LOGIC_OP_NOR_ANGLE 0x1508
|
||||
LOGIC_OP_EQUIV_ANGLE 0x1509
|
||||
LOGIC_OP_INVERT_ANGLE 0x150A
|
||||
LOGIC_OP_OR_REVERSE_ANGLE 0x150B
|
||||
LOGIC_OP_COPY_INVERTED_ANGLE 0x150C
|
||||
LOGIC_OP_OR_INVERTED_ANGLE 0x150D
|
||||
LOGIC_OP_NAND_ANGLE 0x150E
|
||||
LOGIC_OP_SET_ANGLE 0x150F
|
||||
|
||||
The semantics of LogicOpANGLE and COLOR_LOGIC_OP_ANGLE are identical to LogicOp
|
||||
and COLOR_LOGIC_OP in the OpenGL ES 1.0 specification.
|
||||
|
||||
Revision History
|
||||
|
||||
Revision 1, 2022-07-14 (Shahbaz Youssefi)
|
||||
- Initial draft
|
||||
Reference in New Issue
Block a user