()
| 25027 | var tempTexture, occlusionTexture; |
| 25028 | |
| 25029 | var init = function () { |
| 25030 | |
| 25031 | var vertices = new Float32Array( [ |
| 25032 | -1, -1, 0, 0, |
| 25033 | 1, -1, 1, 0, |
| 25034 | 1, 1, 1, 1, |
| 25035 | -1, 1, 0, 1 |
| 25036 | ] ); |
| 25037 | |
| 25038 | var faces = new Uint16Array( [ |
| 25039 | 0, 1, 2, |
| 25040 | 0, 2, 3 |
| 25041 | ] ); |
| 25042 | |
| 25043 | // buffers |
| 25044 | |
| 25045 | vertexBuffer = gl.createBuffer(); |
| 25046 | elementBuffer = gl.createBuffer(); |
| 25047 | |
| 25048 | gl.bindBuffer( gl.ARRAY_BUFFER, vertexBuffer ); |
| 25049 | gl.bufferData( gl.ARRAY_BUFFER, vertices, gl.STATIC_DRAW ); |
| 25050 | |
| 25051 | gl.bindBuffer( gl.ELEMENT_ARRAY_BUFFER, elementBuffer ); |
| 25052 | gl.bufferData( gl.ELEMENT_ARRAY_BUFFER, faces, gl.STATIC_DRAW ); |
| 25053 | |
| 25054 | // textures |
| 25055 | |
| 25056 | tempTexture = gl.createTexture(); |
| 25057 | occlusionTexture = gl.createTexture(); |
| 25058 | |
| 25059 | gl.bindTexture( gl.TEXTURE_2D, tempTexture ); |
| 25060 | gl.texImage2D( gl.TEXTURE_2D, 0, gl.RGB, 16, 16, 0, gl.RGB, gl.UNSIGNED_BYTE, null ); |
| 25061 | gl.texParameteri( gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, gl.CLAMP_TO_EDGE ); |
| 25062 | gl.texParameteri( gl.TEXTURE_2D, gl.TEXTURE_WRAP_T, gl.CLAMP_TO_EDGE ); |
| 25063 | gl.texParameteri( gl.TEXTURE_2D, gl.TEXTURE_MAG_FILTER, gl.NEAREST ); |
| 25064 | gl.texParameteri( gl.TEXTURE_2D, gl.TEXTURE_MIN_FILTER, gl.NEAREST ); |
| 25065 | |
| 25066 | gl.bindTexture( gl.TEXTURE_2D, occlusionTexture ); |
| 25067 | gl.texImage2D( gl.TEXTURE_2D, 0, gl.RGBA, 16, 16, 0, gl.RGBA, gl.UNSIGNED_BYTE, null ); |
| 25068 | gl.texParameteri( gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, gl.CLAMP_TO_EDGE ); |
| 25069 | gl.texParameteri( gl.TEXTURE_2D, gl.TEXTURE_WRAP_T, gl.CLAMP_TO_EDGE ); |
| 25070 | gl.texParameteri( gl.TEXTURE_2D, gl.TEXTURE_MAG_FILTER, gl.NEAREST ); |
| 25071 | gl.texParameteri( gl.TEXTURE_2D, gl.TEXTURE_MIN_FILTER, gl.NEAREST ); |
| 25072 | |
| 25073 | hasVertexTexture = gl.getParameter( gl.MAX_VERTEX_TEXTURE_IMAGE_UNITS ) > 0; |
| 25074 | |
| 25075 | var shader; |
| 25076 | |
| 25077 | if ( hasVertexTexture ) { |
| 25078 | |
| 25079 | shader = { |
| 25080 | |
| 25081 | vertexShader: [ |
| 25082 | |
| 25083 | "uniform lowp int renderType;", |
| 25084 | |
| 25085 | "uniform vec3 screenPosition;", |
| 25086 | "uniform vec2 scale;", |
no test coverage detected