mirror of
				https://git.zaroz.cloud/nintendo-back-up/yuzu/yuzu.git
				synced 2025-05-12 00:45:25 +00:00 
			
		
		
		
	renderer_opengl: Fix Morton copy byteswap, etc.
This commit is contained in:
		
							parent
							
								
									0ca8fce9d0
								
							
						
					
					
						commit
						a992aac5eb
					
				@ -57,7 +57,7 @@ uniform sampler2D color_texture;
 | 
			
		||||
void main() {
 | 
			
		||||
    // Swap RGBA -> ABGR so we don't have to do this on the CPU. This needs to change if we have to
 | 
			
		||||
    // support more framebuffer pixel formats.
 | 
			
		||||
    color = texture(color_texture, frag_tex_coord).abgr;
 | 
			
		||||
    color = texture(color_texture, frag_tex_coord);
 | 
			
		||||
}
 | 
			
		||||
)";
 | 
			
		||||
 | 
			
		||||
@ -311,10 +311,10 @@ void RendererOpenGL::DrawScreenTriangles(const ScreenInfo& screen_info, float x,
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
    std::array<ScreenRectVertex, 4> vertices = {{
 | 
			
		||||
        ScreenRectVertex(x, y, texcoords.top, right),
 | 
			
		||||
        ScreenRectVertex(x + w, y, texcoords.bottom, right),
 | 
			
		||||
        ScreenRectVertex(x, y + h, texcoords.top, left),
 | 
			
		||||
        ScreenRectVertex(x + w, y + h, texcoords.bottom, left),
 | 
			
		||||
        ScreenRectVertex(x, y, texcoords.top, left),
 | 
			
		||||
        ScreenRectVertex(x + w, y, texcoords.bottom, left),
 | 
			
		||||
        ScreenRectVertex(x, y + h, texcoords.top, right),
 | 
			
		||||
        ScreenRectVertex(x + w, y + h, texcoords.bottom, right),
 | 
			
		||||
    }};
 | 
			
		||||
 | 
			
		||||
    state.texture_units[0].texture_2d = screen_info.display_texture;
 | 
			
		||||
 | 
			
		||||
@ -151,7 +151,7 @@ static inline void MortonCopyPixels128(u32 width, u32 height, u32 bytes_per_pixe
 | 
			
		||||
            const u32 coarse_y = y & ~127;
 | 
			
		||||
            u32 morton_offset =
 | 
			
		||||
                GetMortonOffset128(x, y, bytes_per_pixel) + coarse_y * width * bytes_per_pixel;
 | 
			
		||||
            u32 gl_pixel_index = (x + (height - 1 - y) * width) * gl_bytes_per_pixel;
 | 
			
		||||
            u32 gl_pixel_index = (x + y * width) * gl_bytes_per_pixel;
 | 
			
		||||
 | 
			
		||||
            data_ptrs[morton_to_gl] = morton_data + morton_offset;
 | 
			
		||||
            data_ptrs[!morton_to_gl] = &gl_data[gl_pixel_index];
 | 
			
		||||
 | 
			
		||||
		Loading…
	
		Reference in New Issue
	
	Block a user