public void BeginRenderPass(int numRenderTargets, RenderPassRenderTargetDescription[] renderTargetsRef, RenderPassDepthStencilDescription?depthStencilRef, RenderPassFlags flags)
        {
            using ID3D12GraphicsCommandList4? commandList = currentCommandList.NativeCommandList.QueryInterfaceOrNull <ID3D12GraphicsCommandList4>();

            if (commandList != null)
            {
                commandList.BeginRenderPass(numRenderTargets, renderTargetsRef, depthStencilRef, flags);
            }
        }
Exemple #2
0
 /// <summary>
 /// Marks the beginning of a render pass by binding a set of output resources for the duration of the render pass.
 /// These bindings are to one or more render target views (RTVs), and/or to a depth stencil view (DSV).
 /// </summary>
 /// <param name="renderTargets">An array of <see cref="RenderPassRenderTargetDescription"/>, which describes bindings (fixed for the duration of the render pass) to one or more render target views (RTVs), as well as their beginning and ending access characteristics.</param>
 /// <param name="depthStencil">An optional <see cref="RenderPassDepthStencilDescription"/>, which describes a binding (fixed for the duration of the render pass) to a depth stencil view (DSV), as well as its beginning and ending access characteristics.</param>
 /// <param name="flags">The nature/requirements of the render pass; for example, whether it is a suspending or a resuming render pass, or whether it wants to write to unordered access view(s).</param>
 public void BeginRenderPass(RenderPassRenderTargetDescription[] renderTargets, RenderPassDepthStencilDescription?depthStencil, RenderPassFlags flags = RenderPassFlags.None)
 {
     BeginRenderPass(renderTargets.Length, renderTargets, depthStencil, flags);
 }