| OLD | NEW |
| 1 .. _devguide-coding-3D-graphics: | 1 .. _devguide-coding-3D-graphics: |
| 2 | 2 |
| 3 ########### | 3 ########### |
| 4 3D Graphics | 4 3D Graphics |
| 5 ########### | 5 ########### |
| 6 | 6 |
| 7 Native Client applications use the `OpenGL ES 2.0 | 7 Native Client applications use the `OpenGL ES 2.0 |
| 8 <http://en.wikipedia.org/wiki/OpenGL_ES>`_ API for 3D rendering. This document | 8 <http://en.wikipedia.org/wiki/OpenGL_ES>`_ API for 3D rendering. This document |
| 9 describes how to call the OpenGL ES 2.0 interface in a Native Client module and | 9 describes how to call the OpenGL ES 2.0 interface in a Native Client module and |
| 10 how to build an efficient rendering loop. It also explains how to validate GPU | 10 how to build an efficient rendering loop. It also explains how to validate GPU |
| (...skipping 168 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 179 users about dangerous drivers. | 179 users about dangerous drivers. |
| 180 | 180 |
| 181 Test your defenses | 181 Test your defenses |
| 182 ------------------ | 182 ------------------ |
| 183 | 183 |
| 184 You can test your driver validation code by running Chrome with the following | 184 You can test your driver validation code by running Chrome with the following |
| 185 flags (all at once) and watching how your application responds: | 185 flags (all at once) and watching how your application responds: |
| 186 | 186 |
| 187 * ``--disable-webgl`` | 187 * ``--disable-webgl`` |
| 188 * ``--disable-pepper-3d`` | 188 * ``--disable-pepper-3d`` |
| 189 * ``--disable-gl-multisampling`` | 189 * ``--disable_multisampling`` |
| 190 * ``--disable-accelerated-compositing`` | 190 * ``--disable-accelerated-compositing`` |
| 191 * ``--disable-accelerated-2d-canvas`` | 191 * ``--disable-accelerated-2d-canvas`` |
| 192 | 192 |
| 193 Calling OpenGL ES 2.0 commands | 193 Calling OpenGL ES 2.0 commands |
| 194 ============================== | 194 ============================== |
| 195 | 195 |
| 196 There are three ways to write OpenGL ES 2.0 calls in Native Client. | 196 There are three ways to write OpenGL ES 2.0 calls in Native Client. |
| 197 | 197 |
| 198 Use "pure" OpenGL ES 2.0 function calls | 198 Use "pure" OpenGL ES 2.0 function calls |
| 199 --------------------------------------- | 199 --------------------------------------- |
| (...skipping 321 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 521 * **Don't read data from the GPU.** Don't call ``glReadPixels``, as it is slow. | 521 * **Don't read data from the GPU.** Don't call ``glReadPixels``, as it is slow. |
| 522 | 522 |
| 523 * **Don't update a small portion of a large buffer.** In the current OpenGL ES | 523 * **Don't update a small portion of a large buffer.** In the current OpenGL ES |
| 524 2.0 implementation when you update a portion of a buffer (with | 524 2.0 implementation when you update a portion of a buffer (with |
| 525 ``glSubBufferData`` for example) the entire buffer must be reprocessed. To | 525 ``glSubBufferData`` for example) the entire buffer must be reprocessed. To |
| 526 avoid this problem, keep static and dynamic data in different buffers. | 526 avoid this problem, keep static and dynamic data in different buffers. |
| 527 | 527 |
| 528 * **Don't call ``glDisable(GL_TEXTURE_2D)``.** This is an OpenGL ES 2.0 | 528 * **Don't call ``glDisable(GL_TEXTURE_2D)``.** This is an OpenGL ES 2.0 |
| 529 error. Each time it is called, an error messages will appear in Chrome's | 529 error. Each time it is called, an error messages will appear in Chrome's |
| 530 ``about:gpu`` tab. | 530 ``about:gpu`` tab. |
| OLD | NEW |