mirror of
https://github.com/Ryujinx/Ryujinx.git
synced 2024-08-20 07:38:42 +02:00
Here come Salieri, my implementation of a disk shader cache! "I'm sure you know why I named it that." "It doesn't really mean anything." This implementation collects shaders at runtime and cache them to be later compiled when starting a game.
30 lines
983 B
C#
30 lines
983 B
C#
using System;
|
|
using System.Collections.ObjectModel;
|
|
|
|
namespace Ryujinx.Graphics.Shader
|
|
{
|
|
public class ShaderProgramInfo
|
|
{
|
|
public ReadOnlyCollection<BufferDescriptor> CBuffers { get; }
|
|
public ReadOnlyCollection<BufferDescriptor> SBuffers { get; }
|
|
public ReadOnlyCollection<TextureDescriptor> Textures { get; }
|
|
public ReadOnlyCollection<TextureDescriptor> Images { get; }
|
|
|
|
public bool UsesInstanceId { get; }
|
|
|
|
public ShaderProgramInfo(
|
|
BufferDescriptor[] cBuffers,
|
|
BufferDescriptor[] sBuffers,
|
|
TextureDescriptor[] textures,
|
|
TextureDescriptor[] images,
|
|
bool usesInstanceId)
|
|
{
|
|
CBuffers = Array.AsReadOnly(cBuffers);
|
|
SBuffers = Array.AsReadOnly(sBuffers);
|
|
Textures = Array.AsReadOnly(textures);
|
|
Images = Array.AsReadOnly(images);
|
|
|
|
UsesInstanceId = usesInstanceId;
|
|
}
|
|
}
|
|
} |