diff options
Diffstat (limited to 'o3d')
-rw-r--r-- | o3d/core/cross/gl/renderer_gl.cc | 2 | ||||
-rw-r--r-- | o3d/tests/selenium/tests/texture-set-test.html | 11 |
2 files changed, 9 insertions, 4 deletions
diff --git a/o3d/core/cross/gl/renderer_gl.cc b/o3d/core/cross/gl/renderer_gl.cc index 143410b..c22cda3 100644 --- a/o3d/core/cross/gl/renderer_gl.cc +++ b/o3d/core/cross/gl/renderer_gl.cc @@ -696,7 +696,7 @@ Renderer::InitStatus RendererGL::InitCommonGL() { #ifdef OS_MACOSX // The Radeon X1600 says it supports NPOT, but in most situations it doesn't. - if (supports_npot_ && + if (supports_npot() && !strcmp("ATI Radeon X1600 OpenGL Engine", reinterpret_cast<const char*>(::glGetString(GL_RENDERER)))) SetSupportsNPOT(false); diff --git a/o3d/tests/selenium/tests/texture-set-test.html b/o3d/tests/selenium/tests/texture-set-test.html index b3c37be..7035575 100644 --- a/o3d/tests/selenium/tests/texture-set-test.html +++ b/o3d/tests/selenium/tests/texture-set-test.html @@ -280,7 +280,7 @@ function initStep2(clientElements) { sampler.texture = texture; if (tx == 0 && ty == 0) { var texturePixels = texture.getRect(0, tx, ty, 32, 32); - if (texturePixels.length != pixels.length) { + if (texturePixels.length != pixels.length && format != 4) { reportResult(false, 'different length'); return; } @@ -288,8 +288,13 @@ function initStep2(clientElements) { // because float<->half conversion is not perfect var difference = Math.abs(pixels[ndx] - texturePixels[ndx]); if (difference > 0.004) { - reportResult(false, 'pixels different by:' + difference); - return; + //console.log("fmt: " + format + + // " ndx: " + ndx + + // " p1: " + pixels[ndx] + + // " p2: " + texturePixels[ndx] + + // " dif: " + difference); + reportResult(false, 'pixels, format: ' + format + + ' different by: ' + difference); } } } |