protected override void ExecuteCommandListsImpl(RendererAbstract.CommandSubmission.CommandList[] commandLists) { using (var commandListsDX12 = new ComArray <SharpDX.Direct3D12.CommandList>(commandLists.Length)) { for (int index = 0; index < commandListsDX12.Length; ++index) { commandListsDX12[index] = ((RendererDX12.CommandSubmission.CommandList)commandLists[index])?.CommandListD3D12; } CommandQueueD3D12.ExecuteCommandLists(commandListsDX12.Length, commandListsDX12); } }
/// <summary> /// Bind an array of shader resources to the shader stage. /// </summary> /// <remarks> /// If an overlapping resource view is already bound to an output slot, such as a render target, then this API will fill the destination shader resource slot with NULL.For information about creating shader-resource views, see <see cref = "SharpDX.Direct3D11.Device.CreateShaderResourceView" />. The method will hold a reference to the interfaces passed in. This differs from the device state behavior in Direct3D 10. /// </remarks> /// <param name = "startSlot">Index into the device's zero-based array to begin setting shader resources to (ranges from 0 to D3D11_COMMONSHADER_INPUT_RESOURCE_SLOT_COUNT - 1).</param> /// <param name = "shaderResourceViews">Array of {{shader resource view}} interfaces to set to the device.</param> public void SetShaderResources(int startSlot, ComArray <SharpDX.Direct3D11.ShaderResourceView> shaderResourceViews) { SetShaderResources(startSlot, shaderResourceViews.Length, shaderResourceViews); }
/// <summary> /// Sets an array of samplers to be used by the shader stage. /// </summary> /// <param name = "slot">Index into the device's zero-based array to which to set the array of sampler states.</param> /// <param name = "samplers">An array of sampler state to set</param> public void SetSamplers(int slot, ComArray <SamplerState> samplers) { SetSamplers(slot, samplers == null ? 0 : samplers.Length, samplers); }
/// <summary> /// Sets an array of constant buffers to be used by the shader stage. /// </summary> /// <param name = "slot">Index into the device's zero-based array to which to set the array of constant buffers.</param> /// <param name = "constantBuffers">An array of constant buffer to set</param> public void SetConstantBuffers(int slot, ComArray <Buffer> constantBuffers) { SetConstantBuffers(slot, constantBuffers == null ? 0 : constantBuffers.Length, constantBuffers); }
public Transform3D(Device2 dev, ComArray <Transform3D> effects) : this(IntPtr.Zero) { dev.CreateTransform3DGroup(effects, effects.Length, this); }
public Transform3D(Device2 dev, ComArray<Transform3D> effects) : this(IntPtr.Zero) { dev.CreateTransform3DGroup(effects, effects.Length, this); }
/// <summary> /// Bind an array of shader resources to the shader stage. /// </summary> /// <remarks> /// If an overlapping resource view is already bound to an output slot, such as a rendertarget, then this API will fill the destination shader resource slot with NULL.For information about creating shader-resource views, see <see cref = "SharpDX.Direct3D11.Device.CreateShaderResourceView" />. The method will hold a reference to the interfaces passed in. This differs from the device state behavior in Direct3D 10. /// </remarks> /// <param name = "startSlot">Index into the device's zero-based array to begin setting shader resources to (ranges from 0 to D3D11_COMMONSHADER_INPUT_RESOURCE_SLOT_COUNT - 1).</param> /// <param name = "shaderResourceViews">Array of {{shader resource view}} interfaces to set to the device.</param> public void SetShaderResources(int startSlot, ComArray<SharpDX.Direct3D11.ShaderResourceView> shaderResourceViews) { SetShaderResources(startSlot, shaderResourceViews.Length, shaderResourceViews); }
/// <summary> /// Sets an array of samplesr to be used by the shader stage. /// </summary> /// <param name = "slot">Index into the device's zero-based array to which to set the array of sampler states.</param> /// <param name = "samplers">An array of sampler state to set</param> public void SetSamplers(int slot, ComArray<SamplerState> samplers) { SetSamplers(slot, samplers == null ? 0 : samplers.Length, samplers); }
/// <summary> /// Sets an array of constant buffers to be used by the shader stage. /// </summary> /// <param name = "slot">Index into the device's zero-based array to which to set the array of constant buffers.</param> /// <param name = "constantBuffers">An array of constant buffer to set</param> public void SetConstantBuffers(int slot, ComArray<Buffer> constantBuffers) { SetConstantBuffers(slot, constantBuffers == null ? 0 : constantBuffers.Length, constantBuffers); }
/// <summary> /// Sets an array of views for an unordered resource. /// </summary> /// <param name="startSlot">Index of the first element in the zero-based array to begin setting. </param> /// <param name="unorderedAccessViews">A reference to an array of <see cref="SharpDX.Direct3D11.UnorderedAccessView"/> references to be set by the method. </param> public unsafe void SetUnorderedAccessViews(int startSlot, ComArray <SharpDX.Direct3D11.UnorderedAccessView> unorderedAccessViews, int[] uavInitialCounts) { fixed(void *puav = uavInitialCounts) SetUnorderedAccessViews(startSlot, unorderedAccessViews == null ? 0 : unorderedAccessViews.Length, unorderedAccessViews.NativePointer, (IntPtr)puav); }