Ryujinx/src/Ryujinx.Graphics.GAL
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
..
Multithreading Texture loading: reduce memory allocations (#6623) 2024-04-14 17:06:14 -03:00
AddressMode.cs [Ryujinx.Graphics.GAL] Address dotnet-format issues (#5366) 2023-06-28 20:20:10 +02:00
AdvancedBlendDescriptor.cs [Ryujinx.Graphics.GAL] Address dotnet-format issues (#5366) 2023-06-28 20:20:10 +02:00
AdvancedBlendOp.cs [Ryujinx.Graphics.GAL] Address dotnet-format issues (#5366) 2023-06-28 20:20:10 +02:00
AdvancedBlendOverlap.cs [Ryujinx.Graphics.GAL] Address dotnet-format issues (#5366) 2023-06-28 20:20:10 +02:00
AntiAliasing.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
BlendDescriptor.cs [Ryujinx.Graphics.GAL] Address dotnet-format issues (#5366) 2023-06-28 20:20:10 +02:00
BlendFactor.cs [Ryujinx.Graphics.GAL] Address dotnet-format issues (#5366) 2023-06-28 20:20:10 +02:00
BlendOp.cs [Ryujinx.Graphics.GAL] Address dotnet-format issues (#5366) 2023-06-28 20:20:10 +02:00
BufferAccess.cs Implement support for multi-range buffers using Vulkan sparse mappings (#5427) 2023-12-04 20:30:19 +01:00
BufferAssignment.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
BufferHandle.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
BufferRange.cs Vulkan: Buffer Mirrors for MacOS performance (#4899) 2023-08-14 14:18:47 -03:00
Capabilities.cs Implement support for multi-range buffers using Vulkan sparse mappings (#5427) 2023-12-04 20:30:19 +01:00
ColorF.cs Move solution and projects to src 2023-04-27 23:51:14 +02:00
CompareMode.cs [Ryujinx.Graphics.GAL] Address dotnet-format issues (#5366) 2023-06-28 20:20:10 +02:00
CompareOp.cs [Ryujinx.Graphics.GAL] Address dotnet-format issues (#5366) 2023-06-28 20:20:10 +02:00
CounterType.cs [Ryujinx.Graphics.GAL] Address dotnet-format issues (#5366) 2023-06-28 20:20:10 +02:00
DepthMode.cs [Ryujinx.Graphics.GAL] Address dotnet-format issues (#5366) 2023-06-28 20:20:10 +02:00
DepthStencilMode.cs [Ryujinx.Graphics.GAL] Address dotnet-format issues (#5366) 2023-06-28 20:20:10 +02:00
DepthTestDescriptor.cs [Ryujinx.Graphics.GAL] Address dotnet-format issues (#5366) 2023-06-28 20:20:10 +02:00
DeviceInfo.cs [Ryujinx.Graphics.GAL] Address dotnet-format issues (#5366) 2023-06-28 20:20:10 +02:00
Extents2D.cs [Ryujinx.Graphics.GAL] Address dotnet-format issues (#5366) 2023-06-28 20:20:10 +02:00
Extents2DF.cs [Ryujinx.Graphics.GAL] Address dotnet-format issues (#5366) 2023-06-28 20:20:10 +02:00
Face.cs [Ryujinx.Graphics.GAL] Address dotnet-format issues (#5366) 2023-06-28 20:20:10 +02:00
Format.cs Implement X8Z24 texture format (#6315) 2024-02-15 19:06:26 -03:00
FrontFace.cs [Ryujinx.Graphics.GAL] Address dotnet-format issues (#5366) 2023-06-28 20:20:10 +02:00
HardwareInfo.cs Use driver name instead of vendor name in the status bar for Vulkan. (#6146) 2024-01-26 01:07:20 +01:00
ICounterEvent.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
IImageArray.cs Add support for large sampler arrays on Vulkan (#6489) 2024-04-07 18:25:55 -03:00
ImageCrop.cs [Ryujinx.Graphics.GAL] Address dotnet-format issues (#5366) 2023-06-28 20:20:10 +02:00
IndexType.cs [Ryujinx.Graphics.GAL] Address dotnet-format issues (#5366) 2023-06-28 20:20:10 +02:00
IPipeline.cs Add support for large sampler arrays on Vulkan (#6489) 2024-04-07 18:25:55 -03:00
IProgram.cs Move solution and projects to src 2023-04-27 23:51:14 +02:00
IRenderer.cs Add support for large sampler arrays on Vulkan (#6489) 2024-04-07 18:25:55 -03:00
ISampler.cs [Ryujinx.Graphics.GAL] Address dotnet-format issues (#5366) 2023-06-28 20:20:10 +02:00
ITexture.cs Texture loading: reduce memory allocations (#6623) 2024-04-14 17:06:14 -03:00
ITextureArray.cs Add support for large sampler arrays on Vulkan (#6489) 2024-04-07 18:25:55 -03:00
IWindow.cs Implement color space passthrough option (#5531) 2023-08-07 18:54:05 +01:00
LogicalOp.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
MagFilter.cs [Ryujinx.Graphics.GAL] Address dotnet-format issues (#5366) 2023-06-28 20:20:10 +02:00
MinFilter.cs [Ryujinx.Graphics.GAL] Address dotnet-format issues (#5366) 2023-06-28 20:20:10 +02:00
MultisampleDescriptor.cs Move solution and projects to src 2023-04-27 23:51:14 +02:00
Origin.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
PinnedSpan.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
PolygonMode.cs [Ryujinx.Graphics.GAL] Address dotnet-format issues (#5366) 2023-06-28 20:20:10 +02:00
PolygonModeMask.cs [Ryujinx.Graphics.GAL] Address dotnet-format issues (#5366) 2023-06-28 20:20:10 +02:00
PrimitiveTopology.cs [Ryujinx.Graphics.GAL] Address dotnet-format issues (#5366) 2023-06-28 20:20:10 +02:00
ProgramLinkStatus.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
ProgramPipelineState.cs editorconfig: Set default encoding to UTF-8 (#5793) 2023-12-04 14:17:13 +01:00
Rectangle.cs Move solution and projects to src 2023-04-27 23:51:14 +02:00
ResourceLayout.cs Add support for large sampler arrays on Vulkan (#6489) 2024-04-07 18:25:55 -03:00
Ryujinx.Graphics.GAL.csproj Migrate to .NET 8 (#5887) 2023-11-15 17:41:31 +01:00
SamplerCreateInfo.cs [Ryujinx.Graphics.GAL] Address dotnet-format issues (#5366) 2023-06-28 20:20:10 +02:00
ScreenCaptureImageInfo.cs [Ryujinx.Graphics.GAL] Address dotnet-format issues (#5366) 2023-06-28 20:20:10 +02:00
ShaderInfo.cs [Ryujinx.Graphics.GAL] Address dotnet-format issues (#5366) 2023-06-28 20:20:10 +02:00
ShaderSource.cs [Ryujinx.Graphics.GAL] Address dotnet-format issues (#5366) 2023-06-28 20:20:10 +02:00
StencilOp.cs [Ryujinx.Graphics.GAL] Address dotnet-format issues (#5366) 2023-06-28 20:20:10 +02:00
StencilTestDescriptor.cs [Ryujinx.Graphics.GAL] Address dotnet-format issues (#5366) 2023-06-28 20:20:10 +02:00
SwizzleComponent.cs [Ryujinx.Graphics.GAL] Address dotnet-format issues (#5366) 2023-06-28 20:20:10 +02:00
Target.cs [Ryujinx.Graphics.GAL] Address dotnet-format issues (#5366) 2023-06-28 20:20:10 +02:00
TextureCreateInfo.cs [Ryujinx.Graphics.GAL] Address dotnet-format issues (#5366) 2023-06-28 20:20:10 +02:00
TextureReleaseCallback.cs Move solution and projects to src 2023-04-27 23:51:14 +02:00
UpscaleType.cs [Ryujinx.Graphics.GAL] Address dotnet-format issues (#5366) 2023-06-28 20:20:10 +02:00
VertexAttribDescriptor.cs Move solution and projects to src 2023-04-27 23:51:14 +02:00
VertexBufferDescriptor.cs [Ryujinx.Graphics.GAL] Address dotnet-format issues (#5366) 2023-06-28 20:20:10 +02:00
Viewport.cs [Ryujinx.Graphics.GAL] Address dotnet-format issues (#5366) 2023-06-28 20:20:10 +02:00
ViewportSwizzle.cs [Ryujinx.Graphics.GAL] Address dotnet-format issues (#5366) 2023-06-28 20:20:10 +02:00