using Ghost.Core.Graphics;
namespace Ghost.Graphics.RHI;
public interface IShaderPipeline
{
///
/// Pipeline type
///
PipelineType Type
{
get;
}
}
public interface IPipelineLibrary
{
///
/// Load pipeline library from disk.
///
/// File path. If null, load default library.
void LoadLibraryFromDisk(string? filePath);
void SaveLibraryToDisk(string filePath);
GraphicsPipelineKey CompilePassPSO(IPassDescriptor descriptor, ReadOnlySpan rtvs, TextureFormat dsv);
}