WebGL
Khronos
 

WebGL WEBGL_color_buffer_float Extension Specification

Name

WEBGL_color_buffer_float

Contact

WebGL working group (public_webgl 'at' khronos.org)

Contributors

Mark Callow, HI Corporation

Members of the WebGL working group

Version

Last modified date: December 02, 2022
Revision: 11

Number

WebGL extension #15

Dependencies

Written against the WebGL API 1.0 specification.

Written against the EXT_color_buffer_half_float specification.

Implementations must also support the OES_texture_float extension.

No longer available as of the WebGL API 2.0 specification. Subsumed by the EXT_color_buffer_float extension.

Overview

Adds support for rendering to 32-bit floating-point color buffers.

When this extension is enabled:

IDL

[Exposed=(Window,Worker), LegacyNoInterfaceObject]
interface WEBGL_color_buffer_float {
  const GLenum RGBA32F_EXT = 0x8814;
  const GLenum FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE_EXT = 0x8211;
  const GLenum UNSIGNED_NORMALIZED_EXT = 0x8C17;
}; // interface WEBGL_color_buffer_float
  

New Tokens

undefined renderbufferStorage(GLenum target, GLenum internalformat, GLsizei width, GLsizei height)
RGBA32F_EXT is accepted as the internalformat parameter.
any getFramebufferAttachmentParameter(GLenum target, GLenum attachment, GLenum pname)

FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE_EXT is accepted as the pname parameter.

An INVALID_OPERATION error is generated if attachment is DEPTH_STENCIL_ATTACHMENT and pname is FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE_EXT.

Additions to the WebGL Specification

The new tokens and the behavioral changes for floating-point color buffers specified in EXT_color_buffer_half_float are incorporated into WebGL except for the RGB16F and RGBA16F types. References to RGB16F are ignored, and references to RGBA16F are replaced by references to RGBA32F.

Revision History

Revision 1, 2012/11/08

Revision 2, 2012/11/12

Revision 3, 2012/11/13

Revision 4, 2012/11/26

Revision 5, 2014/07/15

Revision 6, 2014/09/11

Revision 7, 2014/11/24

Revision 8, 2014/11/24

Revision 9, 2016/05/05

Revision 10, 2017/09/14

Revision 11, 2022/12/02