WebGL
Khronos
 

WebGL template Extension Specification

Name

template

Contact

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

Contributors

Members of the WebGL working group

Version

Last modified date: MM DD, YYYY
Revision: 1

Number

WebGL extension #k

Dependencies

Written against the WebGL API 1.0 specification.

Promoted to core and no longer available as an extension in WebGL API 2.0 specification.

Promoted to core and no longer available as an extension in WebGL API 2.0 specification. Requires GLSL #version 300 es.

The following behavioral changes apply in the core spec:

No longer available as of the WebGL API 2.0 specification.

Implementations must also support the WEBGL_required_ext extension.

Written against the WEBGL_base_ext specification.

Overview

This extension exposes the OES_texture_float functionality to WebGL.

The following WebGL-specific behavioral changes apply:

Consult the above extension for documentation, issues and new functions and enumerants.

This template for WebGL extensions is derived from the OpenGL extension template. Refer to the OpenGL extension template for full documentation of the content that should be contained in the sections below. Because WebGL is fundamentally a Web API, its extensions are specified in XML transformed with XSLT into HTML for easier hyperlinking.

Because most WebGL extensions are expected to simply mirror existing OpenGL and OpenGL ES extensions, it is desirable to keep the WebGL extension specifications as small as possible and simply refer to the other specifications for the behavioral definitions.

When this extension is enabled:

Alias Name Strings (for draft extensions)

IDL

 
    
module webgl {

interface OES_foo_bar {
  const GLenum NEW_ENUM = 0xF00;

  undefined doSomethingNew(GLenum state, GLuint value);
}; // interface OES_foo_bar

}; // module webgl
  

IP Status

New Functions

undefined loseContext()
XHTML description

New Types

typedef unsigned long long in_pipe;
XHTML
typedef unsigned long long out_pipe;
XHTML
interface Plumber {
  Plumber work(in_pipe,out_pipe);
};

After attempting a connection, the plumber is no longer the same.

[Exposed=(Window,Worker), LegacyNoInterfaceObject]
interface Agency {
  void register(Plumber);
  Plumber find();
};
XHTML

New Tokens

any getParameter(GLenum pname)
XHTML

Additions to the WebGL Specification

Errors

New State

New Implementation-Dependent State

Sample Code

Conformance Tests

Security Considerations

Issues

Revision History

Revision 1, YYYY/MM/DD