OES_standard_derivatives
扩展属于
WebGL API
and adds the GLSL derivative functions
dFdx
,
dFdy
,和
fwidth
.
WebGL extensions are available using the
WebGLRenderingContext.getExtension()
method. For more information, see also
使用扩展
在
WebGL 教程
.
可用性:
This extension is only available to
WebGL1
contexts. In
WebGL2
, the functionality of this extension is available on the WebGL2 context by default. In WebGL 2, the constant is available as
gl.FRAGMENT_SHADER_DERIVATIVE_HINT
and it requires GLSL
#version 300 es
.
This extension exposes one new constant, which can be used in the
hint()
and
getParameter()
方法。
ext.FRAGMENT_SHADER_DERIVATIVE_HINT_OES
Glenum
indicating the accuracy of the derivative calculation for the GLSL built-in functions:
dFdx
,
dFdy
,和
fwidth
.
The following new functions can be used in GLSL shader code, if this extension is enabled:
genType dFdx(genType) genType dFdy(genType) genType fwidth(genType)
Enabling the extensions:
gl.getExtension('OES_standard_derivatives');
gl.getExtension('EXT_shader_texture_lod');
Shader code that avoids artifacts when wrapping texture coordinates:
<script type="x-shader/x-fragment">
#extension GL_EXT_shader_texture_lod : enable
#extension GL_OES_standard_derivatives : enable
uniform sampler2D myTexture;
varying vec2 texcoord;
void main(){
gl_FragColor = texture2DGradEXT(myTexture, mod(texcoord, vec2(0.1, 0.5)),
dFdx(texcoord), dFdy(texcoord));
}
</script>
| 规范 | 状态 | 注释 |
|---|---|---|
|
OES_standard_derivatives
The definition of 'OES_standard_derivatives' in that specification. |
推荐 | 初始定义。 |
The compatibility table in this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.
更新 GitHub 上的兼容性数据| 桌面 | 移动 | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
OES_standard_derivatives
|
Chrome Yes | Edge ≤18 | Firefox 10 | IE ? | Opera Yes | Safari ? | WebView Android Yes | Chrome Android Yes | Firefox Android ? | Opera Android Yes | Safari iOS ? | Samsung Internet Android Yes |
完整支持
兼容性未知
OES_standard_derivatives
ANGLE_instanced_arrays
EXT_blend_minmax
EXT_color_buffer_half_float
EXT_disjoint_timer_query
EXT_frag_depth
EXT_sRGB
EXT_shader_texture_lod
EXT_texture_filter_anisotropic
OES_element_index_uint
OES_texture_float
OES_texture_float_linear
OES_texture_half_float
OES_texture_half_float_linear
OES_vertex_array_object
WEBGL_color_buffer_float
WEBGL_compressed_texture_atc
WEBGL_compressed_texture_etc1
WEBGL_compressed_texture_pvrtc
WEBGL_compressed_texture_s3tc
WEBGL_compressed_texture_s3tc_srgb
WEBGL_debug_renderer_info
WEBGL_debug_shaders
WEBGL_depth_texture
WEBGL_draw_buffers
WEBGL_lose_context
WebGL2RenderingContext
WebGLActiveInfo
WebGLBuffer
WebGLContextEvent
WebGLFramebuffer
WebGLObject
WebGLProgram
WebGLQuery
WebGLRenderbuffer
WebGLRenderingContext
WebGLSampler
WebGLShader
WebGLShaderPrecisionFormat
WebGLSync
WebGLTexture
WebGLTransformFeedback
WebGLUniformLocation
WebGLVertexArrayObject