blob: 9a8f3f6797c398bf6e9ab8c24d850dfb26b1772e (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
|
---
title: WebGL2RenderingContext.drawBuffers()
slug: Web/API/WebGL2RenderingContext/drawBuffers
translation_of: Web/API/WebGL2RenderingContext/drawBuffers
---
<div>{{APIRef("WebGL")}} {{SeeCompatTable}}</div>
<p><a href="/en-US/docs/Web/API/WebGL_API">WebGL 2 API</a>的 <strong><code>WebGL2RenderingContext.drawBuffers()</code></strong> 方法定义了将写入零散数据(fragment colors)的绘制缓存(draw buffer)。绘制缓存设置了上一次绑定帧缓存状态,如果没有帧缓存可用的话,则用绘制缓存。</p>
<h2 id="语法">语法</h2>
<pre class="syntaxbox notranslate">void <var>gl</var>.drawBuffers(<var>buffers</var>);
</pre>
<h3 id="参数">参数</h3>
<dl>
<dt><code>buffers</code></dt>
<dd>一个 <span>{{domxref("GLenum")}}的{{jsxref("Array")}}}</span> 对碎片颜色的说明将被写入缓冲区。可能的值有:
<ul>
<li><code>gl.NONE</code>: 碎片着色器的输出没有被写入到任何颜色缓存中。</li>
<li><code>gl.BACK</code>: 碎片着色器的输出被写入到返回的颜色缓存中。</li>
<li><code>gl.COLOR_ATTACHMENT{0-15}</code>: 碎片着色器的输出被写入当前帧缓存的第n个颜色缓存中。Fragment shader output is written in the nth color attachment of the current framebuffer.</li>
</ul>
</dd>
</dl>
<h3 id="返回值">返回值</h3>
<p>没有。</p>
<h3 id="报错信息">报错信息</h3>
<ul>
<li>如果<code> buffers</code> 包含了不止一个合法值, <code>gl.INVALID_ENUM</code>错误会被抛出</li>
</ul>
<h2 id="例子">例子</h2>
<pre class="brush: js notranslate">gl.drawBuffers([gl.NONE, gl.COLOR_ATTACHMENT1]);
</pre>
<h2 id="详情">详情</h2>
<table class="standard-table">
<tbody>
<tr>
<th scope="col">详情</th>
<th scope="col">状态</th>
<th scope="col">用法(Comment)</th>
</tr>
<tr>
<td>{{SpecName('WebGL2', "#3.7.11", "drawBuffers")}}</td>
<td>{{Spec2('WebGL2')}}</td>
<td>Initial definition for WebGL.</td>
</tr>
<tr>
<td>{{SpecName('OpenGL ES 3.0', "glDrawBuffers.xhtml", "glDrawBuffers")}}</td>
<td>{{Spec2('OpenGL ES 3.0')}}</td>
<td>Man page of the (similar) OpenGL API.</td>
</tr>
</tbody>
</table>
<h2 id="浏览器兼容性">浏览器兼容性</h2>
<p class="hidden">此页面的兼容性表格通过结构数据生成,如果你想对数据做出贡献, 请点击 <a href="https://github.com/mdn/browser-compat-data">https://github.com/mdn/browser-compat-data</a> 并且给我们发邮箱</p>
<p>{{Compat("api/WebGL2RenderingContext", "WebGL2RenderingContext.drawBuffers")}}</p>
<h2 id="详见">详见</h2>
<ul>
<li>{{domxref("WebGL2RenderingContext.clearBuffer", "WebGL2RenderingContext.clearBuffer[fiuv]()")}}</li>
</ul>
|