Optimize texture format conversion, and MethodCopyBuffer (#1274)
* Improve performance when converting texture formats.
Still more work to do.
* Speed up buffer -> texture copies.
No longer copies byte by byte. Fast path when formats are identical.
* Fix a few things, 64 byte block fast copy.
* Spacing cleanup, unrelated change.
* Fix base offset calculation for region copies.
* Fix Linear -> BlockLinear
* Fix some nits. (part 1 of review feedback)
* Use a generic version of the Convert* functions rather than lambdas.
This is some real monkey's paw shit.
* Remove unnecessary span constructor.
* Revert "Use a generic version of the Convert* functions rather than lambdas."
This reverts commit aa43dcfbe8
.
* Fix bug with rectangle destination writing, better rectangle calculation for linear textures.
This commit is contained in:
parent
ce983f360b
commit
bea1fc2e8d
5 changed files with 356 additions and 61 deletions
11
Ryujinx.Graphics.Texture/Bpp12Pixel.cs
Normal file
11
Ryujinx.Graphics.Texture/Bpp12Pixel.cs
Normal file
|
@ -0,0 +1,11 @@
|
|||
using System.Runtime.InteropServices;
|
||||
|
||||
namespace Ryujinx.Graphics.Texture
|
||||
{
|
||||
[StructLayout(LayoutKind.Sequential, Pack = 1, Size = 12)]
|
||||
public struct Bpp12Pixel
|
||||
{
|
||||
private ulong _elem1;
|
||||
private uint _elem2;
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue