Files
GhostEngine/src/Runtime/Ghost.Graphics.RHI/IRenderDevice.cs
Misaki 162b71f309 Refactor render graph error handling and resource APIs
- RenderGraph.Compile/Execute now return Error for better failure detection; error handling is propagated throughout compiler and executor.
- Renamed ScheduleReleaseResource to ReleaseResource for clarity; updated all usages.
- ResourceManager now calls ReleaseResource directly on Mesh, Material, and Shader types.
- Camera exposes Actual/Virtual size properties and Render returns Error.
- RenderingContext now uses IResourceManager for mesh/resource ops.
- Replaced custom BinaryWriter with BufferWriter in RenderGraphHasher.
- Improved variable naming, interface signatures, and code formatting.
- Added Error extension for IsSuccess/IsFailure.
- Minor FMOD/native interop and test code cleanups.
- No breaking API changes except for new Error return values on some methods.
2026-02-25 19:08:54 +09:00

49 lines
956 B
C#

namespace Ghost.Graphics.RHI;
[Flags]
public enum FeatureSupport
{
None = 0,
RayTracing = 1 << 0,
VariableRateShading = 1 << 1,
MeshShaders = 1 << 2,
SamplerFeedback = 1 << 3,
BindlessResources = 1 << 4,
WorkGraphs = 1 << 5,
AliasBuffersAndTextures = 1 << 6,
}
/// <summary>
/// D3D12-native render device interface for creating graphics resources
/// </summary>
public interface IRenderDevice : IDisposable
{
/// <summary>
/// Graphics command queue for rendering operations
/// </summary>
ICommandQueue GraphicsQueue
{
get;
}
/// <summary>
/// Compute command queue for compute shader operations
/// </summary>
ICommandQueue ComputeQueue
{
get;
}
/// <summary>
/// Copy command queue for data transfer operations
/// </summary>
ICommandQueue CopyQueue
{
get;
}
FeatureSupport FeatureSupport
{
get;
}
}