|
@@ -523,6 +523,11 @@ private:
|
|
|
// shader.
|
|
// shader.
|
|
|
ASSERT(stage == Maxwell3D::Regs::ShaderStage::Vertex);
|
|
ASSERT(stage == Maxwell3D::Regs::ShaderStage::Vertex);
|
|
|
return "vec4(0, 0, uintBitsToFloat(gl_InstanceID), uintBitsToFloat(gl_VertexID))";
|
|
return "vec4(0, 0, uintBitsToFloat(gl_InstanceID), uintBitsToFloat(gl_VertexID))";
|
|
|
|
|
+ case Attribute::Index::Unknown_63:
|
|
|
|
|
+ // TODO(bunnei): Figure out what this is used for. Super Mario Odyssey uses this.
|
|
|
|
|
+ LOG_CRITICAL(HW_GPU, "Unhandled input attribute Unknown_63");
|
|
|
|
|
+ UNREACHABLE();
|
|
|
|
|
+ break;
|
|
|
default:
|
|
default:
|
|
|
const u32 index{static_cast<u32>(attribute) -
|
|
const u32 index{static_cast<u32>(attribute) -
|
|
|
static_cast<u32>(Attribute::Index::Attribute_0)};
|
|
static_cast<u32>(Attribute::Index::Attribute_0)};
|
|
@@ -534,6 +539,8 @@ private:
|
|
|
LOG_CRITICAL(HW_GPU, "Unhandled input attribute: {}", index);
|
|
LOG_CRITICAL(HW_GPU, "Unhandled input attribute: {}", index);
|
|
|
UNREACHABLE();
|
|
UNREACHABLE();
|
|
|
}
|
|
}
|
|
|
|
|
+
|
|
|
|
|
+ return "vec4(0, 0, 0, 0)";
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
/// Generates code representing an output attribute register.
|
|
/// Generates code representing an output attribute register.
|