2017-01-15 9 views
0

を探す私は素子アレイバッファWebGLBuffer(ELEMENT_ARRAY_BUFFER)の長さ

var index_buffer = gl.createBuffer(); 
gl.bindBuffer(gl.ELEMENT_ARRAY_BUFFER, index_buffer); 
gl.bufferData(gl.ELEMENT_ARRAY_BUFFER, new Uint16Array(indices), gl.STATIC_DRAW); 

を持っていると私は、バッファの長さを見ることができるようにしたいが、index_buffer.lengthが定義されていないとで機能がありませんアイテムの長さを取得するWebGLBufferタイプ

どのくらい大きく表示されますか?

UPDATE:

gl.getBufferParameter(gl.ELEMENT_ARRAY_BUFFER, gl.BUFFER_SIZE); 

することでおいてください。そうでない場合は使用している場合、私はデバッグのためにこれを使用していたことを指摘しgmanのおかげで、情報

+0

'indices.length'? –

+0

私はこれをバッファーだけを返し、範囲内のデータ配列を見ることができない関数に入れています – FrickeFresh

+3

私は好奇心が強いですが、バッファーの長さがどのように役立つでしょうか?また、バッファ内の内容を知る必要があります。 Uint8s、Uint16s、浮動小数点?実際には、異なるオフセットで異なるデータを持つ混合バッファである可能性があります。バッファに何が入っているのかわからない場合は、長さを知ることはあまり役に立ちませんが、バッファに何が入っているのか分かっていれば、おそらく長さは分かっているはずです。別の言い方をすれば、おそらくデバッグを除いて長さを調べたい理由はありません。あなたがやろうとしていることに対して、より良い解決策がないかどうかだけをチェックしてください。 – gman

答えて

2

The spec has you coveredを得るためのより良い方法をこれを試していませんGPUからの情報のクエリは高価であることに注意してください。

関連する問題