Przeglądaj źródła

Pica: Fix a bug in the register definitions, relating to texture wrapping.

Tony Wasserka 11 lat temu
rodzic
commit
8bd7a896ea
2 zmienionych plików z 2 dodań i 2 usunięć
  1. 1 1
      src/video_core/pica.h
  2. 1 1
      src/video_core/rasterizer.cpp

+ 1 - 1
src/video_core/pica.h

@@ -131,7 +131,7 @@ struct Regs {
 
         union {
             BitField< 8, 2, WrapMode> wrap_s;
-            BitField<11, 2, WrapMode> wrap_t;
+            BitField<12, 2, WrapMode> wrap_t;
         };
 
         INSERT_PADDING_WORDS(0x1);

+ 1 - 1
src/video_core/rasterizer.cpp

@@ -243,7 +243,7 @@ static void ProcessTriangleInternal(const VertexShader::OutputVertex& v0,
 
                 int s = (int)(uv[i].u() * float24::FromFloat32(static_cast<float>(texture.config.width))).ToFloat32();
                 int t = (int)(uv[i].v() * float24::FromFloat32(static_cast<float>(texture.config.height))).ToFloat32();
-                auto GetWrappedTexCoord = [](Regs::TextureConfig::WrapMode mode, int val, unsigned size) {
+                static auto GetWrappedTexCoord = [](Regs::TextureConfig::WrapMode mode, int val, unsigned size) {
                     switch (mode) {
                         case Regs::TextureConfig::ClampToEdge:
                             val = std::max(val, 0);