Ryujinx/src/Ryujinx.Graphics.OpenGL
jhorv 268c9aecf8
Texture loading: reduce memory allocations (#6623)
* rebase

* add methods Ryyjinx.Common EmbeddedResources and SteamUtils

* GAL changes - change SetData() methods and ThreadedTexture commands to use IMemoryOwner<byte> instead of SpanOrArray<byte>

* Ryujinx.Graphics.Texture: change texture conversion methods to return IMemoryOwner<byte> and allocate from ByteMemoryPool

* Ryujinx.Graphics.OpenGL: update ITexture and Texture-like types with SetData() methods to take IMemoryOwner<byte> instead of SpanOrArray<byte>

* Ryujinx.Graphics.Vulkan: update ITexture and Texture-like types with SetData() methods to take IMemoryOwner<byte> instead of SpanOrArray<byte>

* Ryujinx.Graphics.Gpu: update ITexture and Texture-like types with SetData() methods to take IMemoryOwner<byte> instead of SpanOrArray<byte>

* Remove now-unused SpanOrArray<T>

* post-rebase cleanup

* PixelConverter: remove unsafe modifier on safe methods, and remove one unnecessary cast

* use ByteMemoryPool.Rent() in GetWritableRegion() impls

* fix formatting, rename `ReadRentedMemory()` to `ReadFileToRentedMemory()``

* Texture.ConvertToHostCompatibleFormat(): dispose of `result` in Astc decode branch
2024-04-14 17:06:14 -03:00
..
Effects Texture loading: reduce memory allocations (#6623) 2024-04-14 17:06:14 -03:00
Helper editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
Image Texture loading: reduce memory allocations (#6623) 2024-04-14 17:06:14 -03:00
Queries editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
BackgroundContextWorker.cs Make IOpenGLContext.HasContext context dependent (#6290) 2024-02-10 20:13:10 +01:00
Buffer.cs GPU: Pre-emptively flush textures that are flushed often (to imported memory when available) (#4711) 2023-05-01 16:05:12 -03:00
Constants.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
Debugger.cs [Ryujinx.Graphics.OpenGL] Address dotnet-format issues (#5372) 2023-06-28 18:10:55 +02:00
DrawTextureEmulation.cs [Ryujinx.Graphics.OpenGL] Address dotnet-format issues (#5372) 2023-06-28 18:10:55 +02:00
EnumConversion.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
FormatInfo.cs [Ryujinx.Graphics.OpenGL] Address dotnet-format issues (#5372) 2023-06-28 18:10:55 +02:00
FormatTable.cs Implement X8Z24 texture format (#6315) 2024-02-15 19:06:26 -03:00
Framebuffer.cs Implement X8Z24 texture format (#6315) 2024-02-15 19:06:26 -03:00
Handle.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
HwCapabilities.cs Geometry shader emulation for macOS (#5551) 2023-08-29 21:10:34 -03:00
IOpenGLContext.cs Make IOpenGLContext.HasContext context dependent (#6290) 2024-02-10 20:13:10 +01:00
OpenGLRenderer.cs Add support for large sampler arrays on Vulkan (#6489) 2024-04-07 18:25:55 -03:00
PersistentBuffers.cs [Ryujinx.Graphics.OpenGL] Address dotnet-format issues (#5372) 2023-06-28 18:10:55 +02:00
Pipeline.cs Add support for large sampler arrays on Vulkan (#6489) 2024-04-07 18:25:55 -03:00
Program.cs OpenGL: Mask out all color outputs with no fragment shader (#6341) 2024-02-22 18:43:19 +01:00
ResourcePool.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
Ryujinx.Graphics.OpenGL.csproj Migrate to .NET 8 (#5887) 2023-11-15 17:41:31 +01:00
Sync.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
VertexArray.cs [Ryujinx.Graphics.OpenGL] Address dotnet-format issues (#5372) 2023-06-28 18:10:55 +02:00
Window.cs Implement color space passthrough option (#5531) 2023-08-07 18:54:05 +01:00