mirror of
https://git.suyu.dev/suyu/suyu.git
synced 2024-11-27 01:02:48 +01:00
Merge pull request #1130 from Subv/tex_2d
Shaders: Fixed texture coordinates in TEX with Texture2D
This commit is contained in:
commit
ea99819f37
1 changed files with 15 additions and 6 deletions
|
@ -1514,7 +1514,7 @@ private:
|
|||
switch (instr.tex.texture_type) {
|
||||
case Tegra::Shader::TextureType::Texture2D: {
|
||||
std::string x = regs.GetRegisterAsFloat(instr.gpr8);
|
||||
std::string y = regs.GetRegisterAsFloat(instr.gpr20);
|
||||
std::string y = regs.GetRegisterAsFloat(instr.gpr8.Value() + 1);
|
||||
coord = "vec2 coords = vec2(" + x + ", " + y + ");";
|
||||
break;
|
||||
}
|
||||
|
@ -1526,7 +1526,9 @@ private:
|
|||
break;
|
||||
}
|
||||
default:
|
||||
UNIMPLEMENTED();
|
||||
LOG_CRITICAL(HW_GPU, "Unhandled texture type {}",
|
||||
static_cast<u32>(instr.tex.texture_type.Value()));
|
||||
UNREACHABLE();
|
||||
}
|
||||
|
||||
const std::string sampler =
|
||||
|
@ -1576,7 +1578,9 @@ private:
|
|||
break;
|
||||
}
|
||||
default:
|
||||
UNIMPLEMENTED();
|
||||
LOG_CRITICAL(HW_GPU, "Unhandled texture type {}",
|
||||
static_cast<u32>(instr.texs.GetTextureType()));
|
||||
UNREACHABLE();
|
||||
}
|
||||
const std::string sampler = GetSampler(instr.sampler, instr.texs.GetTextureType(),
|
||||
instr.texs.IsArrayTexture());
|
||||
|
@ -1593,7 +1597,8 @@ private:
|
|||
switch (instr.tlds.GetTextureType()) {
|
||||
case Tegra::Shader::TextureType::Texture2D: {
|
||||
if (instr.tlds.IsArrayTexture()) {
|
||||
UNIMPLEMENTED();
|
||||
LOG_CRITICAL(HW_GPU, "Unhandled 2d array texture");
|
||||
UNREACHABLE();
|
||||
} else {
|
||||
std::string x = regs.GetRegisterAsInteger(instr.gpr8);
|
||||
std::string y = regs.GetRegisterAsInteger(instr.gpr20);
|
||||
|
@ -1602,7 +1607,9 @@ private:
|
|||
break;
|
||||
}
|
||||
default:
|
||||
UNIMPLEMENTED();
|
||||
LOG_CRITICAL(HW_GPU, "Unhandled texture type {}",
|
||||
static_cast<u32>(instr.tlds.GetTextureType()));
|
||||
UNREACHABLE();
|
||||
}
|
||||
const std::string sampler = GetSampler(instr.sampler, instr.tlds.GetTextureType(),
|
||||
instr.tlds.IsArrayTexture());
|
||||
|
@ -1623,7 +1630,9 @@ private:
|
|||
break;
|
||||
}
|
||||
default:
|
||||
UNIMPLEMENTED();
|
||||
LOG_CRITICAL(HW_GPU, "Unhandled texture type {}",
|
||||
static_cast<u32>(instr.tld4.texture_type.Value()));
|
||||
UNREACHABLE();
|
||||
}
|
||||
|
||||
const std::string sampler =
|
||||
|
|
Loading…
Reference in a new issue