Implement support for rendering to 32-bit float textures on ES3

On ES2 with OES_texture_float/OES_texture_half_float support, it is only possible to render to 16-bit half float textures using EXT_color_buffer_half_float. There's no support for rendering to 32-bit float textures in ES2 extensions. On ES3, rendering to some 32-bit float texture formats is exposed with EXT_color_buffer_float, but one must use the sized internal formats specified in ES3 core to do that. To expose this, a new command buffer extension is added which enables clients to directly use the sized internal format GL_RGBA32F.

A similar extension is also added to expose GL_RGB32F on desktop GL platforms for the sake of consistency.

These extensions are available whenever rendering to float textures is available. To support the current version of ANGLE, format conversions back to unsized internal formats are added to ui/gl.

Tests are added to cover this functionality. The new tests also add coverage for the handling of 32-bit float formats on ES2 and on desktop GL that existed before this patch.

BUG=329605
TEST=gpu_unittests, WebGL conformance tests

Review URL: https://codereview.chromium.org/139013008

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@251329 0039d316-1c4b-4281-b951-d872f2087c98
SVN changes up to revision 251329
Improved the documentation of the DisabledPluginsException policy.

BUG=343024

Review URL: https://codereview.chromium.org/135013007

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@251330 0039d316-1c4b-4281-b951-d872f2087c98
SVN changes up to revision 251330