[This is preliminary documentation and is subject to change.]
IDevice do the actual "low-level" rendering, and should only be an API independant layer over 3D APIs.
| C# | Visual Basic | Visual C++ |
public interface IDevice : IDisposable
Public Interface IDevice _ Implements IDisposable
public interface class IDevice : IDisposable
| All Members | Methods | Properties | |||
| Icon | Member | Description |
|---|---|---|
| BeginScene()()() |
Begins a scene.
| |
| Clear(ClearFlags, Color, Single, Byte) |
Clear the currently bound render target, depth buffer and/or stencil buffers.
| |
| CopyResource(IResource, IResource) |
Copy a resource to another resource.
| |
| CopySubresource(IResource, Int32, Int32, Int32, Int32, IResource, Int32, Box) |
Copy a region of a subresource to another resource.
| |
| CreateBuffer(Int32, Usage, BindFlags, CPUAccessFlags) |
Create a buffer (either a vertex buffer, index buffer or shader constant buffer).
| |
| CreateDepthStencilView(IResource) |
Create a depth and/or stencil view from a resource for a later call to SetRenderTargets.
| |
| CreateInputLayout(VertexDeclaration, IShader) |
Create an input-layout object that describe how the bound vertex buffers are organized.
| |
| CreateProgram()()() |
Create an IProgram, which is a full rendering pipeline (typically one pixel shader, one vertex shader and eventually a geometry shader).
| |
| CreateRenderTargetView(IResource) |
Create a render target view from a resource for a later call to SetRenderTargets.
| |
| CreateShader(ShaderCategory, String, String, String) |
Create a shader from source code.
| |
| CreateShaderResourceView(IResource) |
Create a shader resource view from a resource for binding it to a shader.
| |
| CreateTexture2D(PixelFormat, Int32, Int32, Int32, Int32, Usage, BindFlags, CPUAccessFlags) |
Create a 2D texture.
| |
| CreateTexture3D(PixelFormat, Int32, Int32, Int32, Int32, Int32, Usage, BindFlags, CPUAccessFlags) |
Create a 3D texture.
| |
| Dispose()()() | (Inherited from IDisposable.) | |
| Draw(Int32, Int32) |
Draw non-indexed primitives.
| |
| DrawIndexed(Int32, Int32, Int32) |
Draw indexed primitives.
| |
| EndScene()()() |
Ends a scene.
| |
| Flush()()() |
Flush the GPU command buffer.
| |
| MainDepthStencil | ||
| MainRenderTarget | ||
| Present()()() |
Presents the result of the drawing calls.
| |
| SetConstantBuffers(ShaderCategory, Int32, array<IBuffer>[]()[]) |
Bind constant buffers.
| |
| SetIndexBuffer(IBuffer, Int32) |
Bind index buffer.
| |
| SetInputLayout(IInputLayout) |
Bind an input layout.
| |
| SetPrimitiveType(PrimitiveType) |
Set primitive type.
| |
| SetProgram(IProgram) |
Bind render pipeline program.
| |
| SetRenderTargets(IDepthStencilView, array<IRenderTargetView>[]()[]) |
Bind render targets and a depth stencil buffer for rendering.
| |
| SetShaderResources(ShaderCategory, Int32, array<IShaderResourceView>[]()[]) |
Bind shader resources.
| |
| SetVertexBuffers(Int32, array<VertexBufferBinding>[]()[]) |
Bind vertex buffers.
| |
| UpdateSubresource(IResource, Int32, Box, array<Byte>[]()[], Int32, Int32) |
Copy data from memory to a subresource.
|