Changeset 60914 in webkit
- Timestamp:
- Jun 9, 2010 2:39:42 PM (14 years ago)
- Location:
- trunk
- Files:
-
- 19 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/LayoutTests/ChangeLog
r60913 r60914 32 32 * platform/mac/Skipped: Unskip the test that is passing now. 33 33 * platform/qt/Skipped: Unskip the test that is passing now. 34 35 2010-06-09 Kenneth Russell <kbr@google.com> 36 37 Reviewed by Dimitri Glazkov. 38 39 Update readPixels to take ArrayBufferView rather than returning it 40 https://bugs.webkit.org/show_bug.cgi?id=40322 41 42 No new tests; covered by existing tests, which have been modified. 43 44 * fast/canvas/webgl/bug-32888.html: 45 * fast/canvas/webgl/context-attributes-alpha-depth-stencil-antialias.html: 46 * fast/canvas/webgl/copy-tex-image-and-sub-image-2d.html: 47 * fast/canvas/webgl/point-size.html: 48 * fast/canvas/webgl/read-pixels-expected.txt: 49 * fast/canvas/webgl/read-pixels.html: 50 * fast/canvas/webgl/renderbuffer-initialization.html: 51 * fast/canvas/webgl/tex-image-and-sub-image-2d-with-image-data.html: 52 * fast/canvas/webgl/tex-image-and-sub-image-2d-with-image.html: 53 * fast/canvas/webgl/tex-sub-image-2d.html: 54 * fast/canvas/webgl/texImage2DImageDataTest.html: 55 * fast/canvas/webgl/texture-npot.html: 56 * fast/canvas/webgl/triangle.html: 57 * fast/canvas/webgl/viewport-unchanged-upon-resize.html: 34 58 35 59 2010-06-09 Kenneth Russell <kbr@google.com> -
trunk/LayoutTests/fast/canvas/webgl/bug-32888.html
r55282 r60914 113 113 var width = 32; 114 114 var height = 32; 115 buf = gl.readPixels(0, 0, width, height, gl.RGBA, gl.UNSIGNED_BYTE); 115 buf = new Uint8Array(width * height * 4); 116 gl.readPixels(0, 0, width, height, gl.RGBA, gl.UNSIGNED_BYTE, buf); 116 117 // Spot check a couple of 2x2 regions in the upper and lower left 117 118 // corners; they should be the background color rather than -
trunk/LayoutTests/fast/canvas/webgl/context-attributes-alpha-depth-stencil-antialias.html
r56886 r60914 131 131 gl.drawArrays(gl.TRIANGLES, 0, vertices.length / 3); 132 132 133 return gl.readPixels(x, y, 1, 1, gl.RGBA, gl.UNSIGNED_BYTE); 133 var buf = new Uint8Array(1 * 1 * 4); 134 gl.readPixels(x, y, 1, 1, gl.RGBA, gl.UNSIGNED_BYTE, buf); 135 return buf; 134 136 } 135 137 … … 148 150 shouldBe("contextAttribs.premultipliedAlpha", "true"); 149 151 150 var buf = webGL.readPixels(0, 0, 1, 1, webGL.RGBA, webGL.UNSIGNED_BYTE); 152 var buf = new Uint8Array(1 * 1 * 4); 153 webGL.readPixels(0, 0, 1, 1, webGL.RGBA, webGL.UNSIGNED_BYTE, buf); 151 154 pixel[0] = buf[0]; 152 155 pixel[1] = buf[1]; -
trunk/LayoutTests/fast/canvas/webgl/copy-tex-image-and-sub-image-2d.html
r57322 r60914 117 117 118 118 // Read back the rendering results, should be red 119 var buf = gl.readPixels(0, 0, 2, 2, gl.RGBA, gl.UNSIGNED_BYTE); 119 var buf = new Uint8Array(2 * 2 * 4); 120 gl.readPixels(0, 0, 2, 2, gl.RGBA, gl.UNSIGNED_BYTE, buf); 120 121 var idx = 0; 121 122 correctColor = [255, 0, 0]; … … 148 149 149 150 // Read back the rendering results, should be green 150 buf = gl.readPixels(0, 0, 2, 2, gl.RGBA, gl.UNSIGNED_BYTE);151 gl.readPixels(0, 0, 2, 2, gl.RGBA, gl.UNSIGNED_BYTE, buf); 151 152 correctColor = [0, 255, 0]; 152 153 for (var y = 0; y < 2; y++) { -
trunk/LayoutTests/fast/canvas/webgl/point-size.html
r57694 r60914 66 66 gl.uniform1f(locPointSize, 1.0); 67 67 gl.drawArrays(gl.POINTS, 0, vertices.length / 3); 68 var buf = gl.readPixels(0, 0, 2, 2, gl.RGBA, gl.UNSIGNED_BYTE); 68 var buf = new Uint8Array(2 * 2 * 4); 69 gl.readPixels(0, 0, 2, 2, gl.RGBA, gl.UNSIGNED_BYTE, buf); 69 70 var index = 0; 70 71 for (var y = 0; y < 2; ++y) { … … 90 91 gl.uniform1f(locPointSize, 2.0); 91 92 gl.drawArrays(gl.POINTS, 0, vertices.length / 3); 92 buf = gl.readPixels(0, 0, 2, 2, gl.RGBA, gl.UNSIGNED_BYTE);93 gl.readPixels(0, 0, 2, 2, gl.RGBA, gl.UNSIGNED_BYTE, buf); 93 94 index = 0; 94 95 for (var y = 0; y < 2; ++y) { -
trunk/LayoutTests/fast/canvas/webgl/read-pixels-expected.txt
r58102 r60914 12 12 PASS gl.getError() is gl.NO_ERROR 13 13 PASS gl.getError() is gl.NO_ERROR 14 PASS array.length is expectedSize15 14 PASS 255,102,0,255 is non-null. 16 15 PASS pixel is expectedColor … … 18 17 PASS gl.getError() is gl.NO_ERROR 19 18 PASS gl.getError() is gl.NO_ERROR 20 PASS array.length is expectedSize21 19 PASS 255,102,0,255 is non-null. 22 20 PASS pixel is expectedColor … … 24 22 PASS gl.getError() is gl.NO_ERROR 25 23 PASS gl.getError() is gl.NO_ERROR 26 PASS array.length is expectedSize27 24 PASS 255,102,0,255 is non-null. 28 25 PASS pixel is expectedColor … … 30 27 PASS gl.getError() is gl.NO_ERROR 31 28 PASS gl.getError() is gl.NO_ERROR 32 PASS array.length is expectedSize33 29 PASS 255,102,0,255 is non-null. 34 30 PASS pixel is expectedColor … … 36 32 PASS gl.getError() is gl.NO_ERROR 37 33 PASS gl.getError() is gl.NO_ERROR 38 PASS array.length is expectedSize39 34 PASS 255,102,0,255 is non-null. 40 35 PASS pixel is expectedColor … … 42 37 PASS gl.getError() is gl.NO_ERROR 43 38 PASS gl.getError() is gl.NO_ERROR 44 PASS array.length is expectedSize45 39 PASS 255,102,0,255 is non-null. 46 40 PASS pixel is expectedColor … … 48 42 PASS gl.getError() is gl.NO_ERROR 49 43 PASS gl.getError() is gl.NO_ERROR 50 PASS array.length is expectedSize51 44 PASS 255,102,0,255 is non-null. 52 45 PASS pixel is expectedColor … … 54 47 PASS gl.getError() is gl.NO_ERROR 55 48 PASS gl.getError() is gl.NO_ERROR 56 PASS array.length is expectedSize57 49 PASS 255,102,0,255 is non-null. 58 50 PASS pixel is expectedColor … … 60 52 PASS gl.getError() is gl.NO_ERROR 61 53 PASS gl.getError() is gl.NO_ERROR 62 PASS array.length is expectedSize63 54 PASS 255,102,0,255 is non-null. 64 55 PASS pixel is expectedColor … … 66 57 PASS gl.getError() is gl.NO_ERROR 67 58 PASS gl.getError() is gl.NO_ERROR 68 PASS array.length is expectedSize69 59 PASS 255,102,0,255 is non-null. 70 60 PASS pixel is expectedColor … … 72 62 PASS gl.getError() is gl.NO_ERROR 73 63 PASS gl.getError() is gl.NO_ERROR 74 PASS array.length is expectedSize75 64 PASS 255,102,0,255 is non-null. 76 65 PASS pixel is expectedColor … … 78 67 PASS gl.getError() is gl.NO_ERROR 79 68 PASS gl.getError() is gl.NO_ERROR 80 PASS array.length is expectedSize81 69 PASS 255,102,0,255 is non-null. 82 70 PASS pixel is expectedColor … … 84 72 PASS gl.getError() is gl.NO_ERROR 85 73 PASS gl.getError() is gl.NO_ERROR 86 PASS array.length is expectedSize87 74 PASS 255,102,0,255 is non-null. 88 75 PASS pixel is expectedColor … … 90 77 PASS gl.getError() is gl.NO_ERROR 91 78 PASS gl.getError() is gl.NO_ERROR 92 PASS array.length is expectedSize93 79 PASS 255,102,0,255 is non-null. 94 80 PASS pixel is expectedColor … … 96 82 PASS gl.getError() is gl.NO_ERROR 97 83 PASS gl.getError() is gl.NO_ERROR 98 PASS array.length is expectedSize99 84 PASS 255,102,0,255 is non-null. 100 85 PASS pixel is expectedColor … … 102 87 PASS gl.getError() is gl.NO_ERROR 103 88 PASS gl.getError() is gl.NO_ERROR 104 PASS array.length is expectedSize105 89 PASS 255,102,0,255 is non-null. 106 90 PASS pixel is expectedColor … … 109 93 PASS gl.getError() is gl.NO_ERROR 110 94 PASS gl.getError() is gl.NO_ERROR 111 PASS array.length is expectedSize112 95 PASS 255,102,0,0 is non-null. 113 96 PASS pixel is expectedColor … … 115 98 PASS gl.getError() is gl.NO_ERROR 116 99 PASS gl.getError() is gl.NO_ERROR 117 PASS array.length is expectedSize118 100 PASS 255,102,0,0 is non-null. 119 101 PASS pixel is expectedColor … … 121 103 PASS gl.getError() is gl.NO_ERROR 122 104 PASS gl.getError() is gl.NO_ERROR 123 PASS array.length is expectedSize124 105 PASS 255,102,0,0 is non-null. 125 106 PASS pixel is expectedColor … … 127 108 PASS gl.getError() is gl.NO_ERROR 128 109 PASS gl.getError() is gl.NO_ERROR 129 PASS array.length is expectedSize130 110 PASS 255,102,0,0 is non-null. 131 111 PASS pixel is expectedColor … … 133 113 PASS gl.getError() is gl.NO_ERROR 134 114 PASS gl.getError() is gl.NO_ERROR 135 PASS array.length is expectedSize136 115 PASS 255,102,0,0 is non-null. 137 116 PASS pixel is expectedColor … … 139 118 PASS gl.getError() is gl.NO_ERROR 140 119 PASS gl.getError() is gl.NO_ERROR 141 PASS array.length is expectedSize142 120 PASS 255,102,0,0 is non-null. 143 121 PASS pixel is expectedColor … … 145 123 PASS gl.getError() is gl.NO_ERROR 146 124 PASS gl.getError() is gl.NO_ERROR 147 PASS array.length is expectedSize148 125 PASS 255,102,0,0 is non-null. 149 126 PASS pixel is expectedColor … … 151 128 PASS gl.getError() is gl.NO_ERROR 152 129 PASS gl.getError() is gl.NO_ERROR 153 PASS array.length is expectedSize154 130 PASS 255,102,0,0 is non-null. 155 131 PASS pixel is expectedColor … … 157 133 PASS gl.getError() is gl.NO_ERROR 158 134 PASS gl.getError() is gl.NO_ERROR 159 PASS array.length is expectedSize160 135 PASS 255,102,0,0 is non-null. 161 136 PASS pixel is expectedColor … … 163 138 PASS gl.getError() is gl.NO_ERROR 164 139 PASS gl.getError() is gl.NO_ERROR 165 PASS array.length is expectedSize166 140 PASS 255,102,0,0 is non-null. 167 141 PASS pixel is expectedColor … … 169 143 PASS gl.getError() is gl.NO_ERROR 170 144 PASS gl.getError() is gl.NO_ERROR 171 PASS array.length is expectedSize172 145 PASS 255,102,0,0 is non-null. 173 146 PASS pixel is expectedColor … … 175 148 PASS gl.getError() is gl.NO_ERROR 176 149 PASS gl.getError() is gl.NO_ERROR 177 PASS array.length is expectedSize178 150 PASS 255,102,0,0 is non-null. 179 151 PASS pixel is expectedColor … … 181 153 PASS gl.getError() is gl.NO_ERROR 182 154 PASS gl.getError() is gl.NO_ERROR 183 PASS array.length is expectedSize184 155 PASS 255,102,0,0 is non-null. 185 156 PASS pixel is expectedColor … … 187 158 PASS gl.getError() is gl.NO_ERROR 188 159 PASS gl.getError() is gl.NO_ERROR 189 PASS array.length is expectedSize190 160 PASS 255,102,0,0 is non-null. 191 161 PASS pixel is expectedColor … … 193 163 PASS gl.getError() is gl.NO_ERROR 194 164 PASS gl.getError() is gl.NO_ERROR 195 PASS array.length is expectedSize196 165 PASS 255,102,0,0 is non-null. 197 166 PASS pixel is expectedColor … … 199 168 PASS gl.getError() is gl.NO_ERROR 200 169 PASS gl.getError() is gl.NO_ERROR 201 PASS array.length is expectedSize202 170 PASS 255,102,0,0 is non-null. 203 171 PASS pixel is expectedColor -
trunk/LayoutTests/fast/canvas/webgl/read-pixels.html
r58102 r60914 36 36 var gl = null; 37 37 var array = null; 38 var expectedSize = 0;39 38 var pixel = [ 0, 0, 0, 0 ]; 40 39 var expectedColor = [ 0, 0, 0, 0 ]; … … 160 159 gl.pixelStorei(gl.PACK_ALIGNMENT, packAlignment); 161 160 shouldBe("gl.getError()", "gl.NO_ERROR"); 162 array = gl.readPixels(0, 0, width, height, format, type);163 shouldBe("gl.getError()", "gl.NO_ERROR");164 161 var bytesPerPixel = calculatePixelBytes(format, type); 165 162 var padding = calculatePaddingBytes(bytesPerPixel, packAlignment, width); 166 expectedSize = bytesPerPixel * width * height + padding * (height - 1);163 var size = bytesPerPixel * width * height + padding * (height - 1); 167 164 var isShort = false; 168 165 switch (type) { … … 173 170 } 174 171 if (isShort) 175 expectedSize /= 2; 176 shouldBe("array.length", "expectedSize"); 172 size /= 2; 173 if (type == gl.UNSIGNED_BYTE) 174 array = new Uint8Array(size); 175 else 176 array = new Uint16Array(size); 177 gl.readPixels(0, 0, width, height, format, type, array); 178 shouldBe("gl.getError()", "gl.NO_ERROR"); 177 179 // Check the last pixel of the last row. 178 180 var bytesPerRow = width * bytesPerPixel + padding; -
trunk/LayoutTests/fast/canvas/webgl/renderbuffer-initialization.html
r60290 r60914 16 16 17 17 debug('Test whether the WebGL internal buffers have been initialized to 0.'); 18 var buf = gl.readPixels(0, 0, 500, 500, gl.RGBA, gl.UNSIGNED_BYTE); 18 var buf = new Uint8Array(500 * 500 * 4); 19 gl.readPixels(0, 0, 500, 500, gl.RGBA, gl.UNSIGNED_BYTE, buf); 19 20 if (gl.getError() != gl.NO_ERROR) { 20 21 testFailed('GL error detected after readPixels().'); … … 45 46 return false; 46 47 } 47 buf = gl.readPixels(0, 0, 500, 500, gl.RGBA, gl.UNSIGNED_BYTE);48 gl.readPixels(0, 0, 500, 500, gl.RGBA, gl.UNSIGNED_BYTE, buf); 48 49 if (gl.getError() != gl.NO_ERROR) { 49 50 testFailed('GL error detected after readPixels().'); -
trunk/LayoutTests/fast/canvas/webgl/tex-image-and-sub-image-2d-with-image-data.html
r55283 r60914 134 134 135 135 // Read back the rendering results 136 buf = gl.readPixels(0, 0, 1, 2, gl.RGBA, gl.UNSIGNED_BYTE); 136 buf = new Uint8Array(1 * 2 * 4); 137 gl.readPixels(0, 0, 1, 2, gl.RGBA, gl.UNSIGNED_BYTE, buf); 137 138 // Check the top pixel and bottom pixel and make sure they have 138 139 // the right color. -
trunk/LayoutTests/fast/canvas/webgl/tex-image-and-sub-image-2d-with-image.html
r60874 r60914 132 132 var width = 32; 133 133 var height = 32; 134 buf = gl.readPixels(0, 0, width, height, gl.RGBA, gl.UNSIGNED_BYTE); 134 buf = new Uint8Array(width * height * 4); 135 gl.readPixels(0, 0, width, height, gl.RGBA, gl.UNSIGNED_BYTE, buf); 135 136 // Check a few pixels near the top and bottom and make sure they have 136 137 // the right color. -
trunk/LayoutTests/fast/canvas/webgl/tex-sub-image-2d.html
r55282 r60914 98 98 99 99 // Read back the frame buffer 100 var buf = gl.readPixels(0, 0, textureWidth, textureHeight, gl.RGBA, gl.UNSIGNED_BYTE); 100 var buf = new Uint8Array(textureWidth * textureHeight * 4); 101 gl.readPixels(0, 0, textureWidth, textureHeight, gl.RGBA, gl.UNSIGNED_BYTE, buf); 101 102 102 103 // Verify the frame buffer's contents -
trunk/LayoutTests/fast/canvas/webgl/texImage2DImageDataTest.html
r55282 r60914 107 107 // Test several locations 108 108 // Each line should be all red 109 var buf = gl.readPixels(0, 0, 64, 64, gl.RGBA, gl.UNSIGNED_BYTE); 109 var buf = new Uint8Array(64 * 64 * 4); 110 gl.readPixels(0, 0, 64, 64, gl.RGBA, gl.UNSIGNED_BYTE, buf); 110 111 111 112 var offset15 = 3840; // (15*64) * 4 -
trunk/LayoutTests/fast/canvas/webgl/texture-npot.html
r59899 r60914 128 128 gl.drawArrays(gl.TRIANGLES, 0, 6); 129 129 gl.flush(); 130 var buf = gl.readPixels(0, 0, 4, 4, gl.RGBA, gl.UNSIGNED_BYTE); 130 var buf = new Uint8Array(4 * 4 * 4); 131 gl.readPixels(0, 0, 4, 4, gl.RGBA, gl.UNSIGNED_BYTE, buf); 131 132 for (var i = 0; i < 4 * 4; ++i) { 132 133 var offset = i * 4; -
trunk/LayoutTests/fast/canvas/webgl/triangle.html
r55282 r60914 50 50 gl.drawArrays(gl.TRIANGLES, 0, 3); 51 51 52 var buf = gl.readPixels(0, 0, 50, 50, gl.RGBA, gl.UNSIGNED_BYTE); 52 var buf = new Uint8Array(50 * 50 * 4); 53 gl.readPixels(0, 0, 50, 50, gl.RGBA, gl.UNSIGNED_BYTE, buf); 53 54 54 55 // Test several locations -
trunk/LayoutTests/fast/canvas/webgl/viewport-unchanged-upon-resize.html
r55282 r60914 54 54 55 55 // Ensure that the frame buffer is red at the sampled pixel 56 var buf = gl.readPixels(2, 2, 1, 1, gl.RGBA, gl.UNSIGNED_BYTE); 56 var buf = new Uint8Array(1 * 1 * 4); 57 gl.readPixels(2, 2, 1, 1, gl.RGBA, gl.UNSIGNED_BYTE, buf); 57 58 var passed = true; 58 59 if (buf[0] != 255 || … … 76 77 // still be (0, 0, 4, 4), so only the lower-left quadrant should 77 78 // have been filled. 78 var buf = gl.readPixels(6, 6, 1, 1, gl.RGBA, gl.UNSIGNED_BYTE); 79 var buf = new Uint8Array(1 * 1 * 4); 80 gl.readPixels(6, 6, 1, 1, gl.RGBA, gl.UNSIGNED_BYTE, buf); 79 81 var passed = true; 80 82 if (buf[0] != 0 || -
trunk/WebCore/ChangeLog
r60911 r60914 1 2010-06-09 Kenneth Russell <kbr@google.com> 2 3 Reviewed by Dimitri Glazkov. 4 5 Update readPixels to take ArrayBufferView rather than returning it 6 https://bugs.webkit.org/show_bug.cgi?id=40322 7 8 No new tests; covered by existing tests, which have been modified. 9 10 * html/canvas/WebGLRenderingContext.cpp: 11 (WebCore::WebGLRenderingContext::readPixels): 12 * html/canvas/WebGLRenderingContext.h: 13 * html/canvas/WebGLRenderingContext.idl: 14 1 15 2010-06-09 Enrico Ros <eros@codeaurora.org> 2 16 -
trunk/WebCore/html/canvas/WebGLRenderingContext.cpp
r60902 r60914 1665 1665 } 1666 1666 1667 PassRefPtr<ArrayBufferView> WebGLRenderingContext::readPixels(long x, long y, unsigned long width, unsigned long height, unsigned long format, unsigned long type)1667 void WebGLRenderingContext::readPixels(long x, long y, unsigned long width, unsigned long height, unsigned long format, unsigned long type, ArrayBufferView* pixels) 1668 1668 { 1669 1669 // Validate enums. … … 1681 1681 default: 1682 1682 m_context->synthesizeGLError(GraphicsContext3D::INVALID_ENUM); 1683 return 0;1683 return; 1684 1684 } 1685 1685 unsigned long bytesPerComponent = 0; … … 1696 1696 default: 1697 1697 m_context->synthesizeGLError(GraphicsContext3D::INVALID_ENUM); 1698 return 0; 1698 return; 1699 } 1700 if (!pixels) { 1701 m_context->synthesizeGLError(GraphicsContext3D::INVALID_VALUE); 1702 return; 1699 1703 } 1700 1704 if (!((format == GraphicsContext3D::RGBA && type == GraphicsContext3D::UNSIGNED_BYTE) || (format == m_implementationColorReadFormat && type == m_implementationColorReadType))) { 1701 1705 m_context->synthesizeGLError(GraphicsContext3D::INVALID_OPERATION); 1702 return 0; 1706 return; 1707 } 1708 // Validate array type against pixel type. 1709 if (type == GraphicsContext3D::UNSIGNED_BYTE && !pixels->isUnsignedByteArray() 1710 || type != GraphicsContext3D::UNSIGNED_BYTE && !pixels->isUnsignedShortArray()) { 1711 m_context->synthesizeGLError(GraphicsContext3D::INVALID_OPERATION); 1712 return; 1703 1713 } 1704 1714 // Calculate array size, taking into consideration of PACK_ALIGNMENT. … … 1713 1723 unsigned long totalBytes = bytesPerRow * height - padding; 1714 1724 unsigned long num = totalBytes / bytesPerComponent; 1715 RefPtr<ArrayBufferView> array; 1716 if (type == GraphicsContext3D::UNSIGNED_BYTE) 1717 array = Uint8Array::create(num); 1718 else 1719 array = Uint16Array::create(num); 1720 void* data = array->baseAddress(); 1725 if (pixels->length() < num) { 1726 m_context->synthesizeGLError(GraphicsContext3D::INVALID_OPERATION); 1727 return; 1728 } 1729 void* data = pixels->baseAddress(); 1721 1730 m_context->readPixels(x, y, width, height, format, type, data); 1722 1731 #if PLATFORM(CG) … … 1738 1747 #endif 1739 1748 cleanupAfterGraphicsCall(false); 1740 return array;1741 1749 } 1742 1750 -
trunk/WebCore/html/canvas/WebGLRenderingContext.h
r60902 r60914 183 183 void polygonOffset(double factor, double units); 184 184 185 PassRefPtr<ArrayBufferView> readPixels(long x, long y, unsigned long width, unsigned long height, unsigned long format, unsigned long type);185 void readPixels(long x, long y, unsigned long width, unsigned long height, unsigned long format, unsigned long type, ArrayBufferView* pixels); 186 186 187 187 void releaseShaderCompiler(); -
trunk/WebCore/html/canvas/WebGLRenderingContext.idl
r60902 r60914 596 596 void polygonOffset(in double factor, in double units); 597 597 598 ArrayBufferView readPixels(in long x, in long y, in unsigned long width, in unsigned long height, in unsigned long format, in unsigned long type);598 void readPixels(in long x, in long y, in unsigned long width, in unsigned long height, in unsigned long format, in unsigned long type, in ArrayBufferView pixels); 599 599 600 600 void releaseShaderCompiler();
Note: See TracChangeset
for help on using the changeset viewer.