--- title: WebGLRenderingContext.drawArrays() slug: Web/API/WebGLRenderingContext/drawArrays translation_of: Web/API/WebGLRenderingContext/drawArrays --- <div>{{APIRef("WebGL")}}</div> <p><a href="/ja/docs/Web/API/WebGL_API">WebGL API</a> の <strong><code>WebGLRenderingContext.drawArrays()</code></strong> メソッドは、配列データからプリミティブを描画します。</p> <h2 id="構文">構文</h2> <pre class="syntaxbox">void <var>gl</var>.drawArrays(<var>mode</var>, <var>first</var>, <var>count</var>); </pre> <h3 id="引数">引数</h3> <dl> <dt><code>mode</code></dt> <dd>描画するプリミティブの種類を指定する {{domxref("GLenum")}}。以下の値を取ることができます。 <ul> <li><code>gl.POINTS</code>: 単一の点を描画します。</li> <li><code>gl.LINE_STRIP</code>: 次の線へと直線を描画します。</li> <li><code>gl.LINE_LOOP</code>: 次の線へと直線を描画し、最後の頂点は最初のものに接続します。</li> <li><code>gl.LINES</code>: 頂点 2 つごとに、その間に線を描画します。</li> <li><code><a href="https://en.wikipedia.org/wiki/Triangle_strip">gl.TRIANGLE_STRIP</a></code></li> <li><code><a href="https://en.wikipedia.org/wiki/Triangle_fan">gl.TRIANGLE_FAN</a></code></li> <li><code>gl.TRIANGLES</code>: 頂点 3 つの集まりごとに、三角形を描画します。</li> </ul> </dd> <dt>first</dt> <dd>頂点ベクトルの配列の開始インデックスを指定する {{domxref("GLint")}}。</dd> <dt>count</dt> <dd>描画されるインデックスの数を指定する {{domxref("GLsizei")}}。</dd> </dl> <h3 id="返り値">返り値</h3> <p>ありません。</p> <h3 id="例外">例外</h3> <ul> <li><code>mode</code> が許容された値のどれでもない場合、<code>gl.INVALID_ENUM</code> エラーがスローされます。</li> <li><code>first</code> や <code>count</code> が負数の場合、<code>gl.INVALID_VALUE</code> エラーがスローされます。</li> <li><code>gl.CURRENT_PROGRAM</code> が {{jsxref("null")}} の場合、<code>gl.INVALID_OPERATION</code> エラーがスローされます。</li> </ul> <h2 id="例">例</h2> <pre class="brush: js">gl.drawArrays(gl.POINTS, 0, 8); </pre> <h2 id="仕様策定状況">仕様策定状況</h2> <table class="standard-table"> <tbody> <tr> <th scope="col">仕様</th> <th scope="col">策定状況</th> <th scope="col">コメント</th> </tr> <tr> <td>{{SpecName('WebGL', "#5.14.11", "drawArrays")}}</td> <td>{{Spec2('WebGL')}}</td> <td>初回定義。</td> </tr> <tr> <td>{{SpecName('OpenGL ES 2.0', "glDrawArrays.xml", "glDrawArrays")}}</td> <td>{{Spec2('OpenGL ES 2.0')}}</td> <td>OpenGL API のマニュアルページ。</td> </tr> </tbody> </table> <h2 id="ブラウザーの対応">ブラウザーの対応</h2> <p>{{Compat("api.WebGLRenderingContext.drawArrays")}}</p> <h2 id="関連項目">関連項目</h2> <ul> <li>{{domxref("WebGLRenderingContext.drawElements()")}}</li> <li>{{domxref("ANGLE_instanced_arrays.drawArraysInstancedANGLE()", "ext.drawArraysInstancedANGLE()")}}</li> <li>{{domxref("ANGLE_instanced_arrays.drawElementsInstancedANGLE()", "ext.drawElementsInstancedANGLE()")}}</li> <li>{{domxref("ANGLE_instanced_arrays.vertexAttribDivisorANGLE()", "ext.vertexAttribDivisorANGLE()")}}</li> <li>{{domxref("WebGL2RenderingContext.drawArraysInstanced()")}}</li> <li>{{domxref("WebGL2RenderingContext.drawElementsInstanced()")}}</li> <li>{{domxref("WebGL2RenderingContext.vertexAttribDivisor()")}}</li> </ul>