Class DX12ResourceFactory
The DirectX version of the resource factory.
Inherited Members
Namespace: Evergine.DirectX12
Assembly: Evergine.DirectX12.dll
Syntax
public class DX12ResourceFactory : ResourceFactory
Constructors
DX12ResourceFactory(DX12GraphicsContext)
Initializes a new instance of the DX12ResourceFactory class.
Declaration
public DX12ResourceFactory(DX12GraphicsContext graphicsContext)
Parameters
| Type | Name | Description |
|---|---|---|
| DX12GraphicsContext | graphicsContext | DirectX graphics context. |
Properties
GraphicsContext
Gets the generic graphics context.
Declaration
protected override GraphicsContext GraphicsContext { get; }
Property Value
| Type | Description |
|---|---|
| GraphicsContext |
Overrides
Methods
CreateBufferInternal(nint, ref BufferDescription)
Creates a Buffer instance.
Declaration
protected override Buffer CreateBufferInternal(nint data, ref BufferDescription description)
Parameters
| Type | Name | Description |
|---|---|---|
| nint | data | Pointer to the data. |
| BufferDescription | description | The description of the index buffer. |
Returns
| Type | Description |
|---|---|
| Buffer | The new buffer. |
Overrides
CreateCommandQueueInternal(CommandQueueType)
Creates a CommandQueue instance.
Declaration
protected override CommandQueue CreateCommandQueueInternal(CommandQueueType queueType)
Parameters
| Type | Name | Description |
|---|---|---|
| CommandQueueType | queueType | The command queue type, CommandQueueType. |
Returns
| Type | Description |
|---|---|
| CommandQueue | The new command queue. |
Overrides
CreateComputePipelineInternal(ref ComputePipelineDescription)
Creates a ComputePipelineState instance.
Declaration
protected override ComputePipelineState CreateComputePipelineInternal(ref ComputePipelineDescription description)
Parameters
| Type | Name | Description |
|---|---|---|
| ComputePipelineDescription | description | The compute pipeline state description. |
Returns
| Type | Description |
|---|---|
| ComputePipelineState | The new pipeline state. |
Overrides
CreateFrameBufferInternal(FrameBufferAttachment?, FrameBufferAttachment[], bool, bool)
Creates a FrameBuffer instance.
Declaration
protected override FrameBuffer CreateFrameBufferInternal(FrameBufferAttachment? depthTarget, FrameBufferAttachment[] colorTargets, bool disposeAttachments, bool belongsToSwapChain)
Parameters
| Type | Name | Description |
|---|---|---|
| FrameBufferAttachment? | depthTarget | The depth FrameBufferAttachment which must have been created with the DepthStencil flag. |
| FrameBufferAttachment[] | colorTargets | The array of color FrameBufferAttachment, all of which must have been created with the RenderTarget flags. |
| bool | disposeAttachments | When this framebuffer is disposed, disposes the attachment textures too. |
| bool | belongsToSwapChain | Value indicating whether this framebuffer belongs to a swap chain. That is, it it's the main framebuffer. |
Returns
| Type | Description |
|---|---|
| FrameBuffer | The new framebuffer. |
Overrides
CreateGraphicsPipelineInternal(ref GraphicsPipelineDescription)
Creates a GraphicsPipelineState instance.
Declaration
protected override GraphicsPipelineState CreateGraphicsPipelineInternal(ref GraphicsPipelineDescription description)
Parameters
| Type | Name | Description |
|---|---|---|
| GraphicsPipelineDescription | description | The graphics pipeline state description. |
Returns
| Type | Description |
|---|---|
| GraphicsPipelineState | The new pipeline state. |
Overrides
CreateMeshShaderPipelineInternal(ref MeshShaderPipelineDescription)
Creates a MeshShaderPipelineState instance.
Declaration
protected override MeshShaderPipelineState CreateMeshShaderPipelineInternal(ref MeshShaderPipelineDescription description)
Parameters
| Type | Name | Description |
|---|---|---|
| MeshShaderPipelineDescription | description | The raytracing pipeline state description. |
Returns
| Type | Description |
|---|---|
| MeshShaderPipelineState | The new pipeline state. |
Overrides
CreateQueryHeap(ref QueryHeapDescription)
Creates a QueryHeap instance.
Declaration
public override QueryHeap CreateQueryHeap(ref QueryHeapDescription description)
Parameters
| Type | Name | Description |
|---|---|---|
| QueryHeapDescription | description | The QueryHeap description. |
Returns
| Type | Description |
|---|---|
| QueryHeap | The new QueryHeap. |
Overrides
CreateRaytracingPipelineInternal(ref RaytracingPipelineDescription)
Creates a RaytracingPipelineState instance.
Declaration
protected override RaytracingPipelineState CreateRaytracingPipelineInternal(ref RaytracingPipelineDescription description)
Parameters
| Type | Name | Description |
|---|---|---|
| RaytracingPipelineDescription | description | The raytracing pipeline state description. |
Returns
| Type | Description |
|---|---|
| RaytracingPipelineState | The new pipeline state. |
Overrides
CreateResourceLayoutInternal(ref ResourceLayoutDescription)
Creates a new ResourceLayout.
Declaration
protected override ResourceLayout CreateResourceLayoutInternal(ref ResourceLayoutDescription description)
Parameters
| Type | Name | Description |
|---|---|---|
| ResourceLayoutDescription | description | The description of all elements in this new ResourceLayout. |
Returns
| Type | Description |
|---|---|
| ResourceLayout | A new ResourceLayout object. |
Overrides
CreateResourceSetInternal(ref ResourceSetDescription)
Creates a new ResourceSet.
Declaration
protected override ResourceSet CreateResourceSetInternal(ref ResourceSetDescription description)
Parameters
| Type | Name | Description |
|---|---|---|
| ResourceSetDescription | description | The description for all elements in this new ResourceSet. |
Returns
| Type | Description |
|---|---|
| ResourceSet | A new ResourceSet object. |
Overrides
CreateSamplerStateInternal(ref SamplerStateDescription)
Creates a SamplerState instance.
Declaration
protected override SamplerState CreateSamplerStateInternal(ref SamplerStateDescription description)
Parameters
| Type | Name | Description |
|---|---|---|
| SamplerStateDescription | description | The sampler state description. |
Returns
| Type | Description |
|---|---|
| SamplerState | The new sampler state. |
Overrides
CreateShaderInternal(ref ShaderDescription)
Creates a Shader instance.
Declaration
protected override Shader CreateShaderInternal(ref ShaderDescription description)
Parameters
| Type | Name | Description |
|---|---|---|
| ShaderDescription | description | The shader description. |
Returns
| Type | Description |
|---|---|
| Shader | The new shader. |
Overrides
CreateTextureInternal(DataBox[], ref TextureDescription, ref SamplerStateDescription)
Creates a Texture instance.
Declaration
protected override Texture CreateTextureInternal(DataBox[] data, ref TextureDescription description, ref SamplerStateDescription samplerState)
Parameters
| Type | Name | Description |
|---|---|---|
| DataBox[] | data | The texture data. |
| TextureDescription | description | The texture description. |
| SamplerStateDescription | samplerState | The sampler state description of the SamplerStateDescription struct. |
Returns
| Type | Description |
|---|---|
| Texture | The new texture. |
Overrides
GetTextureFromNativePointerInternal(nint, ref TextureDescription)
Gets a Texture instance from an existing texture using the specified native pointer.
Declaration
protected override Texture GetTextureFromNativePointerInternal(nint texturePointer, ref TextureDescription textureDescription)
Parameters
| Type | Name | Description |
|---|---|---|
| nint | texturePointer | The pointer to the texture. |
| TextureDescription | textureDescription | The description of the already created texture. |
Returns
| Type | Description |
|---|---|
| Texture | The texture instance. |