Example usage for com.google.gwt.corp.webgl.client WebGLFloatArray create

List of usage examples for com.google.gwt.corp.webgl.client WebGLFloatArray create

Introduction

In this page you can find the example usage for com.google.gwt.corp.webgl.client WebGLFloatArray create.

Prototype

public static final native WebGLFloatArray create(WebGLArrayBuffer buffer) ;

Source Link

Document

Create a new canvas array object using the passed WebGLArrayBuffer for its storage.

Usage

From source file:jake2.gwt.client.WebGLAdapter.java

License:Open Source License

private void prepareDraw() {
    if (updateMvpMatrix()) {
        gl.glUniformMatrix4fv(uMvpMatrix, false, WebGLFloatArray.create(mvpMatrix));
        checkError("prepareDraw");
    }//from   ww w.  ja v  a 2s  .c  om

    gl.glUniform1i(uTexEnv0, getTextureMode(0));
    gl.glUniform1i(uTexEnv1, getTextureMode(1));

    //    StringBuilder sizes = new StringBuilder();

    for (int i = 0; i < SMALL_BUF_COUNT; i++) {
        BufferData bd = bufferData[i];
        if (bd.toBind != null) {
            gl.glBindBuffer(WebGL.GL_ARRAY_BUFFER, bd.buffer);
            checkError("bindBuffer" + i);

            //               int len = bd.toBind.getByteLength();
            //               if (len < bd.byteSize) {
            //                  gl.glBufferSubData(WebGL.GL_ARRAY_BUFFER, 0, bd.toBind);
            //               } else {
            //                  bd.byteSize = len;
            gl.glBufferData(WebGL.GL_ARRAY_BUFFER, bd.toBind, WebGL.GL_STREAM_DRAW);
            //               }
            checkError("bufferData" + i);

            gl.glVertexAttribPointer(i, bd.size, bd.type, bd.normalize, bd.byteStride, 0);
            checkError("vertexAttribPointer");

            bd.toBind = null;
        }
    }

    //    log ("prepDraw: " + sizes);
}