diff options
author | gman@chromium.org <gman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-04-22 05:17:15 +0000 |
---|---|---|
committer | gman@chromium.org <gman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-04-22 05:17:15 +0000 |
commit | 1958e0ef0fe59e392cab9bb351401beeb64e8379 (patch) | |
tree | 2dab1d4b2cdbbb50c1c6263b85430988d0ebecdb /gpu/command_buffer/service/texture_manager.cc | |
parent | 9040ad23a3950685b08523d12305d9afcbbc7551 (diff) | |
download | chromium_src-1958e0ef0fe59e392cab9bb351401beeb64e8379.zip chromium_src-1958e0ef0fe59e392cab9bb351401beeb64e8379.tar.gz chromium_src-1958e0ef0fe59e392cab9bb351401beeb64e8379.tar.bz2 |
A bunch more GLES2 conformance test fixes.
1) All the glIsXXX functions were wrong
2) unlike buffers, renderbuffers, framebuffers, etc texture 0 is valid.
3) UseProgram accepts 0.
4) make glShaderSource fail if passed a NULL pointer (the spec doesn't say this afaict)
TEST=conformance tests
BUG=none
Review URL: http://codereview.chromium.org/1750005
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@45293 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'gpu/command_buffer/service/texture_manager.cc')
-rw-r--r-- | gpu/command_buffer/service/texture_manager.cc | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/gpu/command_buffer/service/texture_manager.cc b/gpu/command_buffer/service/texture_manager.cc index 4369199..a895e27 100644 --- a/gpu/command_buffer/service/texture_manager.cc +++ b/gpu/command_buffer/service/texture_manager.cc @@ -4,6 +4,7 @@ #include "gpu/command_buffer/service/texture_manager.h" #include "base/bits.h" +#include "gpu/command_buffer/common/gles2_cmd_utils.h" #include "gpu/command_buffer/service/context_group.h" #include "gpu/command_buffer/service/gles2_cmd_decoder.h" @@ -263,6 +264,17 @@ TextureManager::TextureManager( max_cube_map_levels_(ComputeMipMapCount(max_cube_map_texture_size, max_cube_map_texture_size, max_cube_map_texture_size)) { + default_texture_2d_ = TextureInfo::Ref(new TextureInfo(0)); + SetInfoTarget(default_texture_2d_, GL_TEXTURE_2D); + default_texture_2d_->SetLevelInfo( + GL_TEXTURE_2D, 0, GL_RGBA, 1, 1, 1, 0, GL_RGBA, GL_UNSIGNED_BYTE); + default_texture_cube_map_ = TextureInfo::Ref(new TextureInfo(0)); + SetInfoTarget(default_texture_cube_map_, GL_TEXTURE_CUBE_MAP); + for (int ii = 0; ii < GLES2Util::kNumFaces; ++ii) { + default_texture_cube_map_->SetLevelInfo( + GLES2Util::IndexToGLFaceTarget(ii), + 0, GL_RGBA, 1, 1, 1, 0, GL_RGBA, GL_UNSIGNED_BYTE); + } } TextureManager::TextureInfo* TextureManager::CreateTextureInfo( |