diff --git a/files/zh-cn/web/api/webgl2renderingcontext/beginquery/index.html b/files/zh-cn/web/api/webgl2renderingcontext/beginquery/index.html index dbda8550f38146..15edfb1f79e53b 100644 --- a/files/zh-cn/web/api/webgl2renderingcontext/beginquery/index.html +++ b/files/zh-cn/web/api/webgl2renderingcontext/beginquery/index.html @@ -16,7 +16,7 @@
gl.ANY_SAMPLES_PASSED
: Specifies an occlusion query: these queries detect whether an object is visible (whether the scoped drawing commands pass the depth test and if so, how many samples pass).gl.ANY_SAMPLES_PASSED_CONSERVATIVE
: 和以上一样, 但是是一个不精确和更快的版本。WebGL 2 API 定义的 WebGL2RenderingContext.createSampler()
方法用于创建并初始化 {{domxref("WebGLSampler")}} 对象.
WebGL 2 API 定义的 WebGL2RenderingContext.createSampler()
方法用于创建并初始化 {{domxref("WebGLSampler")}} 对象。
无.
+无。
{{domxref("WebGLSampler")}} 对象.
+{{domxref("WebGLSampler")}} 对象。
gl
必须是 {{domxref("WebGL2RenderingContext")}} 类型. WebGL 1 不支持 WebGLSampler
对象.
gl
必须是 {{domxref("WebGL2RenderingContext")}} 类型. WebGL 1 不支持 WebGLSampler
对象。
var sampler = gl.createSampler();@@ -39,12 +39,12 @@
WebGL 2 API 中的 WebGL2RenderingContext.createVertexArray()
方法创建并初始化(creates and initializes)一个 {{domxref("WebGLVertexArrayObject")}} 的对象(object) ,它代表一个指向顶点数组数据的顶点数组对象(vertex array object (VAO) ),并为不同的顶点数据集提供名称。
WebGL 2 API 中的 WebGL2RenderingContext.createVertexArray()
方法创建并初始化(creates and initializes)一个 {{domxref("WebGLVertexArrayObject")}} 的对象 (object) ,它代表一个指向顶点数组数据的顶点数组对象(vertex array object (VAO) ),并为不同的顶点数据集提供名称。
WebGL 2 API的 WebGL2RenderingContext.drawBuffers()
方法定义了将写入零散数据(fragment colors)的绘制缓存(draw buffer)。绘制缓存设置了上一次绑定帧缓存状态,如果没有帧缓存可用的话,则用绘制缓存。
WebGL 2 API的 WebGL2RenderingContext.drawBuffers()
方法定义了将写入零散数据(fragment colors)的绘制缓存 (draw buffer)。绘制缓存设置了上一次绑定帧缓存状态,如果没有帧缓存可用的话,则用绘制缓存。
buffers
gl.NONE
: 碎片着色器的输出没有被写入到任何颜色缓存中。gl.BACK
: 碎片着色器的输出被写入到返回的颜色缓存中。gl.COLOR_ATTACHMENT{0-15}
: 碎片着色器的输出被写入当前帧缓存的第n个颜色缓存中。Fragment shader output is written in the nth color attachment of the current framebuffer.gl.COLOR_ATTACHMENT{0-15}
: 碎片着色器的输出被写入当前帧缓存的第 n 个颜色缓存中。Fragment shader output is written in the nth color attachment of the current framebuffer.WebGL2RenderingContext 接口在底层使用了OpenGL ES 3.0 为 HTML 的 {{HTMLElement("canvas")}} 元素提供了绘图上下文。
+WebGL2RenderingContext 接口在底层使用了 OpenGL ES 3.0 为 HTML 的 {{HTMLElement("canvas")}} 元素提供了绘图上下文。
要获取该接口的实例对象需要调用一个 <canvas> 标签对象的 {{domxref("HTMLCanvasElement.getContext()", "getContext()")}} 函数,并将 "webgl2" 作为参数传递:
@@ -51,7 +51,7 @@WebGL API 的 WebGLRenderingContext.texImage3D()
方法指定一个3d(three-dimensional)纹理贴图。
WebGL API 的 WebGLRenderingContext.texImage3D()
方法指定一个 3d(three-dimensional)纹理贴图。
target
gl.TEXTURE_3D
: 一个3D贴图gl.TEXTURE_2D_ARRAY
: 一个2D数组贴图gl.TEXTURE_3D
: 一个 3D 贴图gl.TEXTURE_2D_ARRAY
: 一个 2D 数组贴图level
internalformat
gl.ALPHA
: 忽略红色,绿色,蓝色分量值只读取alpha信息。gl.RGB
: 忽略alpha信息,读取红绿蓝分量gl.RGBA
: 从颜色缓冲(colorBuffer)读取红色,绿色,蓝色和alpha分量gl.LUMINANCE
:每个颜色组件都是亮度组件,alpha值为1.0.gl.LUMINANCE_ALPHA
:每个组件都是亮度/alpha 组件(component) .gl.ALPHA
: 忽略红色,绿色,蓝色分量值只读取 alpha 信息。gl.RGB
: 忽略 alpha 信息,读取红绿蓝分量gl.RGBA
: 从颜色缓冲(colorBuffer)读取红色,绿色,蓝色和 alpha 分量gl.LUMINANCE
:每个颜色组件都是亮度组件,alpha 值为 1.0.gl.LUMINANCE_ALPHA
:每个组件都是亮度/alpha 组件(component).gl.R8
gl.R16F
gl.
R32Fdepth
border
format
内部格式
组合被列举在 这个列表。type
gl.UNSIGNED_BYTE
: 每个gl.RGBA
对应8个字节gl.UNSIGNED_BYTE
: 每个gl.RGBA
对应 8 个字节gl.UNSIGNED_SHORT_5_6_5
: 红色占五个字节,绿色占六个字节,蓝色占五个字节gl.UNSIGNED_SHORT_4_4_4_4
: 红色占四个字节,绿色占 四 个字节,蓝色占 四 个字节gl.UNSIGNED_SHORT_5_5_5_1
:红色占五个字节,绿色占五个字节,蓝色占五个字节,alpha占一个字节gl.BYTE
(这些属性的信息原文中均未提到,但是在webgl1中出现过,可以适当参考webgl1文献)gl.UNSIGNED_SHORT_5_5_5_1
:红色占五个字节,绿色占五个字节,蓝色占五个字节,alpha 占一个字节gl.BYTE
(这些属性的信息原文中均未提到,但是在 webgl1 中出现过,可以适当参考 webgl1 文献)gl.UNSIGNED_SHORT
gl.SHORT
gl.UNSIGNED_INT
WebGL API的WebGL2RenderingContext.uniform[1234][uif][v]()
方法提供了uniform(es)变量的详细值
WebGL API的WebGL2RenderingContext.uniform[1234][uif][v]()
方法提供了 uniform(es)变量的详细值
ui
意为无符号整数, i
意为整数, f
意为浮点数, 并且 v
意为矢量.
- 并不是所有的组合都是有效的: u
不能是 f
的组合。详见下方语法表格。用 正则表达式概括语法: uniform[1234](u?i|f)v?
ui
意为无符号整数, i
意为整数,f
意为浮点数, 并且 v
意为矢量。
+ 并不是所有的组合都是有效的:u
不能是 f
的组合。详见下方语法表格。用 正则表达式概括语法:uniform[1234](u?i|f)v?
value, v0, v1, v2, v3
ui
方法),如果是整数值 (则用 i
方法), 如果是浮点数(则用f
方法).ui
方法),如果是整数值 (则用 i
方法), 如果是浮点数 (则用f
方法).uiv
方法).WebGL2RenderingContext.uniformMatrix[234]x[234]fv()
方法向uniform变量中传入指定的矩阵值。WebGL2RenderingContext.uniformMatrix[234]x[234]fv()
方法向 uniform 变量中传入指定的矩阵值。这个方法不用 2x2
, 3x3
, 和 4x4
版本 . 他们通常用2
, 3
, 和4
, 分别表示,详见下方语法。
false
。false
。WEBGL_lose_context 是属于 WebGL API 的一个扩展API,它提供一组方法用来模拟一个 {{domxref("WebGLRenderingContext")}} 上下文的丢失和恢复。
+WEBGL_lose_context 是属于 WebGL API 的一个扩展 API,它提供一组方法用来模拟一个 {{domxref("WebGLRenderingContext")}} 上下文的丢失和恢复。
-WebGL扩展可以通过 {{domxref("WebGLRenderingContext.getExtension()")}} 方法来使用。更多信息可参阅 WebGL教程 中的 使用WebGL扩展 。
+WebGL 扩展可以通过 {{domxref("WebGLRenderingContext.getExtension()")}} 方法来使用。更多信息可参阅 WebGL 教程 中的 使用 WebGL 扩展 。
可用性:该扩展在 {{domxref("WebGLRenderingContext", "WebGL1", "", 1)}} 和 {{domxref("WebGL2RenderingContext", "WebGL2", "", 1)}} 上下文中都是可用的。
diff --git a/files/zh-cn/web/api/webgl_lose_context/losecontext/index.html b/files/zh-cn/web/api/webgl_lose_context/losecontext/index.html index 64d57beeed29ee..1d3da3742187ba 100644 --- a/files/zh-cn/web/api/webgl_lose_context/losecontext/index.html +++ b/files/zh-cn/web/api/webgl_lose_context/losecontext/index.html @@ -13,7 +13,7 @@WEBGL_lose_context.loseContext()属于 WebGL API, 一般用来模拟 {{domxref("WebGLRenderingContext")}} 的上下文丢失。
-这个方法会触发WebGL规范中上下文丢失的相关事件。通过这个方法丢失的上下文可以通过 {{domxref("WEBGL_lose_context.restoreContext()")}} 恢复。
+这个方法会触发 WebGL 规范中上下文丢失的相关事件。通过这个方法丢失的上下文可以通过 {{domxref("WEBGL_lose_context.restoreContext()")}} 恢复。
WebGLProgram 是 WebGL API 的一部分,它由两个{{domxref("WebGLShader")}}s (webgl 着色器)组成,分别为顶点着色器和片元着色器(两种着色器都是采用 GLSL 语言编写的)。创建一个 WebGLProgram 需要调用 GL 上下文的{{domxref("WebGLRenderingContext.createProgram", "createProgram()")}} 方法,然后调用{{domxref("WebGLRenderingContext.attachShader", "attachShader()")}}方法附加上着色器,之后你才能将它们连接到一个可用的程序。
+WebGLProgram 是 WebGL API 的一部分,它由两个{{domxref("WebGLShader")}}s(webgl 着色器)组成,分别为顶点着色器和片元着色器(两种着色器都是采用 GLSL 语言编写的)。创建一个 WebGLProgram 需要调用 GL 上下文的{{domxref("WebGLRenderingContext.createProgram", "createProgram()")}} 方法,然后调用{{domxref("WebGLRenderingContext.attachShader", "attachShader()")}}方法附加上着色器,之后你才能将它们连接到一个可用的程序。
WebGLProgram 的创建过程请参考下面的代码:
diff --git a/files/zh-cn/web/api/webglquery/index.html b/files/zh-cn/web/api/webglquery/index.html index 8ca6aef9efde12..cc37d079ad8e20 100644 --- a/files/zh-cn/web/api/webglquery/index.html +++ b/files/zh-cn/web/api/webglquery/index.html @@ -7,9 +7,9 @@WebGLQuery
接口是 WebGL 2 API 的一部分,并且提供几种异步查询信息的方法。缺省情况下,遮蔽查询和图元查询是可用的。
另一种查询是分离定时器查询,它可以允许你测量GPU的性能和能力。仅当存在 {{domxref("EXT_disjoint_timer_query")}} 扩展时分离定时器查询才是可用的。
+另一种查询是分离定时器查询,它可以允许你测量 GPU 的性能和能力。仅当存在 {{domxref("EXT_disjoint_timer_query")}} 扩展时分离定时器查询才是可用的。
-使用 WebGLQuery
对象时, {{domxref("WebGL2RenderingContext")}} 的下列方法是有用的:
使用 WebGLQuery
对象时,{{domxref("WebGL2RenderingContext")}} 的下列方法是有用的:
WebGLQuery
对象在本例中,gl
必须是 {{domxref("WebGL2RenderingContext")}}. WebGLQuery
对象在 WebGL 1中是不可用的。
在本例中,gl
必须是 {{domxref("WebGL2RenderingContext")}}. WebGLQuery
对象在 WebGL 1 中是不可用的。
var query = gl.createQuery();diff --git a/files/zh-cn/web/api/webglshader/index.html b/files/zh-cn/web/api/webglshader/index.html index 41e24403be2af0..4288f3c263c22f 100644 --- a/files/zh-cn/web/api/webglshader/index.html +++ b/files/zh-cn/web/api/webglshader/index.html @@ -13,7 +13,7 @@
要创建一个 WebGLShader 需要使用 {{domxref("WebGLRenderingContext.createShader")}},通过 {{domxref("WebGLRenderingContext.shaderSource()")}} 然后挂接GLSL源代码 , 最后调用 {{domxref("WebGLRenderingContext.compileShader()")}} 完成着色器(shader)的编译。 此时 WebGLShader 仍不是可用的形式,他需要被添加到一个 {{domxref("WebGLProgram")}}里.
+要创建一个 WebGLShader 需要使用 {{domxref("WebGLRenderingContext.createShader")}},通过 {{domxref("WebGLRenderingContext.shaderSource()")}} 然后挂接 GLSL 源代码 , 最后调用 {{domxref("WebGLRenderingContext.compileShader()")}} 完成着色器(shader)的编译。 此时 WebGLShader 仍不是可用的形式,他需要被添加到一个 {{domxref("WebGLProgram")}}里。
function createShader (gl, sourceCode, type) { // Compiles either a shader of type gl.VERTEX_SHADER or gl.FRAGMENT_SHADER @@ -29,13 +29,13 @@-描述
}
参看 {{domxref("WebGLProgram")}} 关于添加着色器的信息.
+参看 {{domxref("WebGLProgram")}} 关于添加着色器的信息。
注意,有很多其他方式编译和访问着色器(shader) 源代码字符串. 这些示例仅用于例证说明。
+注意,有很多其他方式编译和访问着色器(shader)源代码字符串. 这些示例仅用于例证说明。
var vertexShaderSource = "attribute vec4 position;\n"+ diff --git a/files/zh-cn/web/api/webglshaderprecisionformat/index.html b/files/zh-cn/web/api/webglshaderprecisionformat/index.html index cf8aa8009c92c3..ece3925521b909 100644 --- a/files/zh-cn/web/api/webglshaderprecisionformat/index.html +++ b/files/zh-cn/web/api/webglshaderprecisionformat/index.html @@ -9,11 +9,11 @@属性
in this example, gl
must be a {{domxref("WebGL2RenderingContext")}}. WebGLSync
objects are not available in WebGL 1.
WebGLVertexArrayObject
接口是WebGL 2 API的一部分,顶点数组对象(VAOs)指向顶点数组数据,并提供不同顶点数据集合的名称。
WebGLVertexArrayObject
接口是WebGL 2 API的一部分,顶点数组对象 (VAOs) 指向顶点数组数据,并提供不同顶点数据集合的名称。
当使用WebGLVertexArrayObject
对象时,这些方法会很有用:
WebGL 1: {{domxref("OES_vertex_array_object")}} 扩展允许你在WebGL 1 上下文环境中使用顶点数组对象。
+WebGL 1: {{domxref("OES_vertex_array_object")}} 扩展允许你在 WebGL 1 上下文环境中使用顶点数组对象。