GPU: Fix VertexShaderOutputMask in non-accelerated draws

This commit is contained in:
wheremyfoodat 2025-07-23 03:52:42 +03:00
commit 4efd0de156

View file

@ -138,7 +138,7 @@ void GPU::drawArrays(bool indexed) {
if (config.accelerateShaders) { if (config.accelerateShaders) {
// If we are potentially going to use hw shaders, gather necessary to do vertex fetch, index buffering, etc on the GPU // If we are potentially going to use hw shaders, gather necessary to do vertex fetch, index buffering, etc on the GPU
// This includes parsing which vertices to upload, getting pointers to the index buffer data & vertex data, and so on // This includes parsing which vertices to upload, getting pointers to the index buffer data & vertex data, and so on
getAcceleratedDrawInfo(accel, indexed); getAcceleratedDrawInfo(accel, indexed);
} }
@ -182,6 +182,7 @@ void GPU::drawArrays() {
// We can have up to 16 attributes, each one consisting of 4 floats // We can have up to 16 attributes, each one consisting of 4 floats
constexpr u32 maxAttrSizeInFloats = 16 * 4; constexpr u32 maxAttrSizeInFloats = 16 * 4;
setVsOutputMask(regs[PICA::InternalRegs::VertexShaderOutputMask]);
// Base address for vertex attributes // Base address for vertex attributes
// The vertex base is always on a quadword boundary because the PICA does weird alignment shit any time possible // The vertex base is always on a quadword boundary because the PICA does weird alignment shit any time possible