Merge branch 'shader_recompiler' into next
This commit is contained in:
commit
ff71937776
1 changed files with 10 additions and 2 deletions
|
|
@ -15,6 +15,8 @@ enum class Type : u64 {
|
|||
_2D,
|
||||
ARRAY_2D,
|
||||
_3D,
|
||||
ARRAY_3D,
|
||||
CUBE,
|
||||
};
|
||||
|
||||
enum class Size : u64 {
|
||||
|
|
@ -60,6 +62,10 @@ TextureType GetType(Type type) {
|
|||
return TextureType::ColorArray2D;
|
||||
case Type::_3D:
|
||||
return TextureType::Color3D;
|
||||
case Type::ARRAY_3D:
|
||||
return TextureType::Color3D; // 3D arrays not directly supported, treat as 3D
|
||||
case Type::CUBE:
|
||||
return TextureType::ColorCube;
|
||||
}
|
||||
throw NotImplementedException("Invalid type {}", type);
|
||||
}
|
||||
|
|
@ -68,13 +74,15 @@ IR::Value MakeCoords(TranslatorVisitor& v, IR::Reg reg, Type type) {
|
|||
switch (type) {
|
||||
case Type::_1D:
|
||||
case Type::BUFFER_1D:
|
||||
case Type::ARRAY_1D:
|
||||
return v.X(reg);
|
||||
case Type::_2D:
|
||||
case Type::ARRAY_2D:
|
||||
return v.ir.CompositeConstruct(v.X(reg), v.X(reg + 1));
|
||||
case Type::_3D:
|
||||
case Type::ARRAY_3D:
|
||||
case Type::CUBE:
|
||||
return v.ir.CompositeConstruct(v.X(reg), v.X(reg + 1), v.X(reg + 2));
|
||||
default:
|
||||
break;
|
||||
}
|
||||
throw NotImplementedException("Invalid type {}", type);
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue