17 virtual void SetShaderPlatform(
const plGALShader* pShader) = 0;
32 virtual plGALFenceHandle InsertFencePlatform() = 0;
43 virtual void CopyBufferRegionPlatform(
const plGALBuffer* pDestination, plUInt32 uiDestOffset,
const plGALBuffer* pSource, plUInt32 uiSourceOffset, plUInt32 uiByteCount) = 0;
54 virtual void ReadbackTexturePlatform(
const plGALTexture* pTexture) = 0;
62 virtual void FlushPlatform() = 0;
66 virtual void PushMarkerPlatform(
const char* szMarker) = 0;
67 virtual void PopMarkerPlatform() = 0;
68 virtual void InsertEventMarkerPlatform(
const char* szMarker) = 0;
72 virtual void BeginComputePlatform() = 0;
73 virtual void EndComputePlatform() = 0;
75 virtual plResult DispatchPlatform(plUInt32 uiThreadGroupCountX, plUInt32 uiThreadGroupCountY, plUInt32 uiThreadGroupCountZ) = 0;
76 virtual plResult DispatchIndirectPlatform(
const plGALBuffer* pIndirectArgumentBuffer, plUInt32 uiArgumentOffsetInBytes) = 0;
81 virtual void EndRenderingPlatform() = 0;
83 virtual void ClearPlatform(
const plColor& clearColor, plUInt32 uiRenderTargetClearMask,
bool bClearDepth,
bool bClearStencil,
float fDepthClear, plUInt8 uiStencilClear) = 0;
85 virtual plResult DrawPlatform(plUInt32 uiVertexCount, plUInt32 uiStartVertex) = 0;
86 virtual plResult DrawIndexedPlatform(plUInt32 uiIndexCount, plUInt32 uiStartIndex) = 0;
87 virtual plResult DrawIndexedInstancedPlatform(plUInt32 uiIndexCountPerInstance, plUInt32 uiInstanceCount, plUInt32 uiStartIndex) = 0;
88 virtual plResult DrawIndexedInstancedIndirectPlatform(
const plGALBuffer* pIndirectArgumentBuffer, plUInt32 uiArgumentOffsetInBytes) = 0;
89 virtual plResult DrawInstancedPlatform(plUInt32 uiVertexCountPerInstance, plUInt32 uiInstanceCount, plUInt32 uiStartVertex) = 0;
90 virtual plResult DrawInstancedIndirectPlatform(
const plGALBuffer* pIndirectArgumentBuffer, plUInt32 uiArgumentOffsetInBytes) = 0;
94 virtual void SetIndexBufferPlatform(
const plGALBuffer* pIndexBuffer) = 0;
95 virtual void SetVertexBufferPlatform(plUInt32 uiSlot,
const plGALBuffer* pVertexBuffer) = 0;
97 virtual void SetPrimitiveTopologyPlatform(plGALPrimitiveTopology::Enum topology) = 0;
99 virtual void SetBlendStatePlatform(
const plGALBlendState* pBlendState,
const plColor& blendFactor, plUInt32 uiSampleMask) = 0;
100 virtual void SetDepthStencilStatePlatform(
const plGALDepthStencilState* pDepthStencilState, plUInt8 uiStencilRefValue) = 0;
103 virtual void SetViewportPlatform(
const plRectFloat& rect,
float fMinDepth,
float fMaxDepth) = 0;
104 virtual void SetScissorRectPlatform(
const plRectU32& rect) = 0;
Definition ResourceView.h:11
Definition UnorderedAccesView.h:11
Definition RendererFoundationDLL.h:359