OLD | NEW |
1 {{+bindTo:partials.standard_nacl_article}} | 1 {{+bindTo:partials.standard_nacl_article}} |
2 | 2 |
3 <section id="d-graphics"> | 3 <section id="d-graphics"> |
4 <span id="devguide-coding-3d-graphics"></span><h1 id="d-graphics"><span id="devg
uide-coding-3d-graphics"></span>3D Graphics</h1> | 4 <span id="devguide-coding-3d-graphics"></span><h1 id="d-graphics"><span id="devg
uide-coding-3d-graphics"></span>3D Graphics</h1> |
5 <p>Native Client applications use the <a class="reference external" href="http:/
/en.wikipedia.org/wiki/OpenGL_ES">OpenGL ES 2.0</a> API for 3D rendering. This d
ocument | 5 <p>Native Client applications use the <a class="reference external" href="http:/
/en.wikipedia.org/wiki/OpenGL_ES">OpenGL ES 2.0</a> API for 3D rendering. This d
ocument |
6 describes how to call the OpenGL ES 2.0 interface in a Native Client module and | 6 describes how to call the OpenGL ES 2.0 interface in a Native Client module and |
7 how to build an efficient rendering loop. It also explains how to validate GPU | 7 how to build an efficient rendering loop. It also explains how to validate GPU |
8 drivers and test for specific GPU capabilities, and provides tips to help ensure | 8 drivers and test for specific GPU capabilities, and provides tips to help ensure |
9 your rendering code runs efficiently.</p> | 9 your rendering code runs efficiently.</p> |
10 <aside class="note"> | 10 <aside class="note"> |
(...skipping 102 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
113 been disabled.”</p> | 113 been disabled.”</p> |
114 <p>The manifest-based check applies only to downloads directly from the Chrome W
eb | 114 <p>The manifest-based check applies only to downloads directly from the Chrome W
eb |
115 Store. It is not performed when an application is loaded via <a class="reference
external" href="/webstore/inline_installation">inline | 115 Store. It is not performed when an application is loaded via <a class="reference
external" href="/webstore/inline_installation">inline |
116 installation</a>.</p> | 116 installation</a>.</p> |
117 <h3 id="what-to-do-when-there-are-problems">What to do when there are problems</
h3> | 117 <h3 id="what-to-do-when-there-are-problems">What to do when there are problems</
h3> |
118 <p>Using the vetting procedure described above, you should be able to detect the | 118 <p>Using the vetting procedure described above, you should be able to detect the |
119 most common problems before your application runs. If there are problems, your | 119 most common problems before your application runs. If there are problems, your |
120 code should describe the issue as clearly as possible. That’s easy if ther
e is a | 120 code should describe the issue as clearly as possible. That’s easy if ther
e is a |
121 missing feature. Failure to create a graphics context is tougher to diagnose. At | 121 missing feature. Failure to create a graphics context is tougher to diagnose. At |
122 the very least, you can suggest that the user try to update the driver. You | 122 the very least, you can suggest that the user try to update the driver. You |
123 might want to linke to the Chrome page that describes <a class="reference extern
al" href="http://support.google.com/chrome/bin/answer.py?hl=en&answer=120294
6">how to do updates</a>.</p> | 123 might want to linke to the Chrome page that describes <a class="reference extern
al" href="https://support.google.com/chrome/answer/1202946">how to do updates</a
>.</p> |
124 <p>If a user can’t update the driver, or their problem persists, be sure t
o gather | 124 <p>If a user can’t update the driver, or their problem persists, be sure t
o gather |
125 information about their graphics environment. Ask for the contents of the Chrome | 125 information about their graphics environment. Ask for the contents of the Chrome |
126 <code>about:gpu</code> page.</p> | 126 <code>about:gpu</code> page.</p> |
127 <h3 id="document-unreliable-drivers">Document unreliable drivers</h3> | 127 <h3 id="document-unreliable-drivers">Document unreliable drivers</h3> |
128 <p>It can be helpful to include information about known dubious drivers in your | 128 <p>It can be helpful to include information about known dubious drivers in your |
129 user documentation. This might help identify if a rogue driver is the cause of a | 129 user documentation. This might help identify if a rogue driver is the cause of a |
130 problem. There are many sources of GPU driver blacklists. Two such lists can be | 130 problem. There are many sources of GPU driver blacklists. Two such lists can be |
131 found at the <a class="reference external" href="http://src.chromium.org/viewvc/
chrome/trunk/deps/gpu/software_rendering_list/software_rendering_list.json">Chro
mium project</a> | 131 found at the <a class="reference external" href="http://src.chromium.org/viewvc/
chrome/trunk/deps/gpu/software_rendering_list/software_rendering_list.json">Chro
mium project</a> |
132 and <a class="reference external" href="http://www.khronos.org/webgl/wiki/Blackl
istsAndWhitelists">Khronos</a>. You | 132 and <a class="reference external" href="http://www.khronos.org/webgl/wiki/Blackl
istsAndWhitelists">Khronos</a>. You |
133 can use these lists to include information in your documentation that warns | 133 can use these lists to include information in your documentation that warns |
(...skipping 274 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
408 2.0 implementation when you update a portion of a buffer (with | 408 2.0 implementation when you update a portion of a buffer (with |
409 <code>glSubBufferData</code> for example) the entire buffer must be reprocessed.
To | 409 <code>glSubBufferData</code> for example) the entire buffer must be reprocessed.
To |
410 avoid this problem, keep static and dynamic data in different buffers.</li> | 410 avoid this problem, keep static and dynamic data in different buffers.</li> |
411 <li><strong>Don’t call glDisable(GL_TEXTURE_2D).</strong> This is an OpenG
L ES 2.0 | 411 <li><strong>Don’t call glDisable(GL_TEXTURE_2D).</strong> This is an OpenG
L ES 2.0 |
412 error. Each time it is called, an error messages will appear in Chrome’s | 412 error. Each time it is called, an error messages will appear in Chrome’s |
413 <code>about:gpu</code> tab.</li> | 413 <code>about:gpu</code> tab.</li> |
414 </ul> | 414 </ul> |
415 </section> | 415 </section> |
416 | 416 |
417 {{/partials.standard_nacl_article}} | 417 {{/partials.standard_nacl_article}} |
OLD | NEW |