blob: fe07c9af4c2cd991ce45f5757dd2bf2a067c5a73 [file] [log] [blame]
Name
NV_fbo_color_attachments
Name Strings
GL_NV_fbo_color_attachments
Contributors
Marek Zylak
Contact
James Helferty, NVIDIA Corporation (jhelferty 'at' nvidia.com)
Status
Complete.
Version
Last Modified Date: Feb 2, 2015
NVIDIA Revision: 4.0
Number
OpenGL ES Extension #92
Dependencies
The extension is written against the OpenGLES 2.0 specification.
EXT_discard_framebuffer affects the definition of this extension
Overview
This extension increases the number of available framebuffer object
color attachment points.
IP Status
NVIDIA Proprietary
New Procedures and Functions
None
New Tokens
Accepted by the <value> parameter of GetIntegerv:
MAX_COLOR_ATTACHMENTS_NV 0x8CDF
Accepted by the <attachment> parameter of FramebufferRenderbuffer,
FramebufferTexture2D and GetFramebufferAttachmentParameteriv:
COLOR_ATTACHMENT0_NV 0x8CE0
COLOR_ATTACHMENT1_NV 0x8CE1
COLOR_ATTACHMENT2_NV 0x8CE2
COLOR_ATTACHMENT3_NV 0x8CE3
COLOR_ATTACHMENT4_NV 0x8CE4
COLOR_ATTACHMENT5_NV 0x8CE5
COLOR_ATTACHMENT6_NV 0x8CE6
COLOR_ATTACHMENT7_NV 0x8CE7
COLOR_ATTACHMENT8_NV 0x8CE8
COLOR_ATTACHMENT9_NV 0x8CE9
COLOR_ATTACHMENT10_NV 0x8CEA
COLOR_ATTACHMENT11_NV 0x8CEB
COLOR_ATTACHMENT12_NV 0x8CEC
COLOR_ATTACHMENT13_NV 0x8CED
COLOR_ATTACHMENT14_NV 0x8CEE
COLOR_ATTACHMENT15_NV 0x8CEF
The COLOR_ATTACHMENT0_NV constant is equal to the COLOR_ATTACHMENT0
constant.
Each COLOR_ATTACHMENTi_NV adheres to COLOR_ATTACHMENTi_NV =
COLOR_ATTACHMENT0_NV + i.
Changes to Chapter 4 of the OpenGL ES 2.0 Specification (Per-Fragment
Operations and the Framebuffer)
Replace the second paragraph of Section 4.4.1 (Binding and Managing
Framebuffer Objects) with the following:
The namespace for framebuffer objects is the unsigned integers, with
zero reserved by OpenGL ES to refer to the default framebuffer. A
framebuffer object is created by binding an unused name to the
target FRAMEBUFFER. The binding is effected by calling
void BindFramebuffer(enum target, uint framebuffer);
with target set to FRAMEBUFFER and framebuffer set to the unused
name. The resulting framebuffer object is a new state vector. There
is a number of color attachment points, plus one each for the depth
and stencil attachment points. The number of color attachment points
is equal to the state of MAX_COLOR_ATTACHMENTS_NV.
New Implementation Dependent State
Add to Table 6.18 (Implementation Dependent Values)
Get value Type Get Cmnd Minimum Value Description Sec.
------------------------ ---- ----------- ------------- ----------- -----
MAX_COLOR_ATTACHMENTS_NV Z+ GetIntegerv 1 Number of framebuffer 4.4.1
color attachment points
Interactions with EXT_discard_framebuffer
If EXT_discard_framebuffer is present, in Section 4.5 modify the
arguments accepted by DiscardFramebufferEXT as follows: If a
framebuffer object is bound to <target>, <attachments> may also
contain tokens COLOR_ATTACHMENTm_NV where <m> is greater than or
equal to 0 and less than MAX_COLOR_ATTACHMENTS_NV.
Interactions with other extensions
Rendering to color attachments COLOR_ATTACHMENT[1..15]_NV can be
activated through the GL_NV_draw_buffers extension.
Issues
None.
Revision History
Rev. Date Author Changes
---- -------- --------- -------------------------------------
4 02/02/15 jhelferty Add interaction with DiscardFramebuffer.
3 05/10/10 mzylak Fixed references to core specification.
2 05/06/10 mzylak Small fixes and clarifications.
1 05/05/10 mzylak First revision.