Commit a0fc18d9f7c921a1c62927b2548a29e1ff1807f0

Olli Etuaho 2016-02-29T11:17:16

Fix D3D11 DXGI format info tables - Treat red/green views into depth/stencil formats as being red/green. - Sort all AddDXGIFormat calls in a similar way and remove duplicate AddDXGIFormat calls. - Add info on typeless formats. These changes are needed to make it possible to change integer texture DXGI formats. Native mipmap generation support will still be determined by querying the DXGI format info table with the texture storage format, so the TYPELESS formats will need entries there. The changes to format info used for depth/stencil formats will not affect existing uses of GetDXGIFormatInfo: - In Clear11.cpp, info is queried for rtvFormat and dsvFormat. Info for possible values of rtvFormat and dsvFormat is not changed. - In Renderer11::blitRenderbufferRect, info is queried for rtvFormat and dsvFormat. - In Renderer11::packPixels, GetDXGIFormaInfo is used to get a fast-copy function. The function only exists for conversion from BGRA to RGBA, so the changes do not affect this. - In Renderer11::getVertexComponentType, the component type is queried for vertex formats. The formats that might be queried here are SINT, SNORM, UINT, UNORM, or FLOAT formats with regular RGBA fields. Info is not changed for these. - In TextureStorage11_Cube::createSRV, the SRV or blitSRV format is queried for whether it has integer on unsigned integer channels. This will not be affected by the changes done to the format table. This change does not enable native mipmap generation for any new formats to avoid any possible regressions. BUG=angleproject:1244 TEST=angle_end2end_tests, dEQP-GLES3.functional.texture.mipmap.* (no regressions), dEQP-GLES3.functional.fbo.* (no regressions) Change-Id: Ic5ed731ddf153ae97bce631b1634347f8d9ae75c Reviewed-on: https://chromium-review.googlesource.com/329690 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Corentin Wallez <cwallez@chromium.org> Commit-Queue: Olli Etuaho <oetuaho@nvidia.com>