Go to the documentation of this file.
42 UINT D3D11BindFlags = 0;
43 D3D11BindFlags = D3D11BindFlags | ((BindFlags &
BIND_VERTEX_BUFFER) ? D3D11_BIND_VERTEX_BUFFER : 0);
44 D3D11BindFlags = D3D11BindFlags | ((BindFlags &
BIND_INDEX_BUFFER) ? D3D11_BIND_INDEX_BUFFER : 0);
45 D3D11BindFlags = D3D11BindFlags | ((BindFlags &
BIND_UNIFORM_BUFFER) ? D3D11_BIND_CONSTANT_BUFFER : 0);
46 D3D11BindFlags = D3D11BindFlags | ((BindFlags &
BIND_SHADER_RESOURCE) ? D3D11_BIND_SHADER_RESOURCE : 0);
47 D3D11BindFlags = D3D11BindFlags | ((BindFlags &
BIND_STREAM_OUTPUT) ? D3D11_BIND_STREAM_OUTPUT : 0);
48 D3D11BindFlags = D3D11BindFlags | ((BindFlags &
BIND_RENDER_TARGET) ? D3D11_BIND_RENDER_TARGET : 0);
49 D3D11BindFlags = D3D11BindFlags | ((BindFlags &
BIND_DEPTH_STENCIL) ? D3D11_BIND_DEPTH_STENCIL : 0);
50 D3D11BindFlags = D3D11BindFlags | ((BindFlags &
BIND_UNORDERED_ACCESS) ? D3D11_BIND_UNORDERED_ACCESS : 0);
52 return D3D11BindFlags;
68 (D3D11_BIND_VERTEX_BUFFER|D3D11_BIND_INDEX_BUFFER|D3D11_BIND_CONSTANT_BUFFER|
69 D3D11_BIND_SHADER_RESOURCE|D3D11_BIND_STREAM_OUTPUT|D3D11_BIND_RENDER_TARGET|
87 default:
UNEXPECTED(
"Unknow usage");
return D3D11_USAGE_DEFAULT;
107 d3d11MapType =
static_cast<D3D11_MAP
>(0);
111 d3d11MapType = D3D11_MAP_READ;
116 d3d11MapType = D3D11_MAP_WRITE_DISCARD;
118 d3d11MapType = D3D11_MAP_WRITE_NO_OVERWRITE;
120 d3d11MapType = D3D11_MAP_WRITE;
124 d3d11MapType = D3D11_MAP_READ_WRITE;
137 UINT D3D11CPUAccessFlags = 0;
140 return D3D11CPUAccessFlags;
149 return CPUAccessFlags;
154 UINT D3D11MiscFlags = 0;
156 return D3D11MiscFlags;
173 D3D11_DEPTH_STENCIL_DESC& d3d11DSSDesc);
176 D3D11_RASTERIZER_DESC& d3d11RSDesc);
179 D3D11_BLEND_DESC& D3D11BSDesc);
182 std::vector<D3D11_INPUT_ELEMENT_DESC, STDAllocatorRawMem<D3D11_INPUT_ELEMENT_DESC>>& D3D11InputElements);
@ USAGE_STAGING
A resource that facilitates transferring data between GPU and CPU. D3D11 Counterpart: D3D11_USAGE_S...
Definition: GraphicsTypes.h:167
void TextureViewDesc_to_D3D11_UAV_DESC(const TextureViewDesc &TexViewDesc, D3D11_UNORDERED_ACCESS_VIEW_DESC &D3D11UAVDesc)
Definition: D3D11TypeConversions.cpp:117
void BufferViewDesc_to_D3D11_SRV_DESC(const BufferDesc &BuffDesc, const BufferViewDesc &SRVDesc, D3D11_SHADER_RESOURCE_VIEW_DESC &D3D11SRVDesc)
Definition: D3D11TypeConversions.cpp:125
@ MISC_TEXTURE_FLAG_NONE
Definition: GraphicsTypes.h:977
BIND_FLAGS D3D11BindFlagsToBindFlags(UINT D3D11BindFlags)
Definition: D3D11TypeConversions.hpp:55
CPU_ACCESS_FLAGS
Allowed CPU access mode flags when mapping a resource.
Definition: GraphicsTypes.h:191
UINT BindFlagsToD3D11BindFlags(Uint32 BindFlags)
Definition: D3D11TypeConversions.hpp:39
@ BIND_UNORDERED_ACCESS
A buffer or a texture can be bound as an unordered access view.
Definition: GraphicsTypes.h:127
void TextureViewDesc_to_D3D11_RTV_DESC(const TextureViewDesc &TexViewDesc, D3D11_RENDER_TARGET_VIEW_DESC &D3D11RTVDesc, Uint32 SampleCount)
Definition: D3D11TypeConversions.cpp:103
USAGE
Resource usage.
Definition: GraphicsTypes.h:143
TEXTURE_ADDRESS_MODE
Texture address mode.
Definition: GraphicsTypes.h:889
Uint32 Flags
Definition: DXBCUtils.cpp:71
@ MAP_FLAG_DISCARD
Previous contents of the resource will be undefined. This flag is only compatible with MAP_WRITE D3D...
Definition: GraphicsTypes.h:241
FILTER_TYPE
Filter type.
Definition: GraphicsTypes.h:864
#define UNEXPECTED(...)
Definition: DebugUtilities.hpp:77
@ MAP_FLAG_NO_OVERWRITE
The system will not synchronize pending operations before mapping the buffer. It is responsibility of...
Definition: GraphicsTypes.h:247
PRIMITIVE_TOPOLOGY
Input primitive topology.
Definition: GraphicsTypes.h:989
void TextureViewDesc_to_D3D11_DSV_DESC(const TextureViewDesc &TexViewDesc, D3D11_DEPTH_STENCIL_VIEW_DESC &D3D11DSVDesc, Uint32 SampleCount)
Definition: D3D11TypeConversions.cpp:110
@ USAGE_DYNAMIC
A resource that can be read by the GPU and written at least once per frame by the CPU....
Definition: GraphicsTypes.h:161
D3D11_USAGE UsageToD3D11Usage(USAGE Usage)
Definition: D3D11TypeConversions.hpp:77
D3D11_FILTER FilterTypeToD3D11Filter(FILTER_TYPE MinFilter, FILTER_TYPE MagFilter, FILTER_TYPE MipFilter)
Definition: D3D11TypeConversions.cpp:39
BIND_FLAGS
Resource binding flags.
Definition: GraphicsTypes.h:115
@ BIND_UNIFORM_BUFFER
A buffer can be bound as a uniform buffer.
Definition: GraphicsTypes.h:120
MISC_TEXTURE_FLAGS D3D11MiscFlagsToMiscTextureFlags(UINT D3D11MiscFlags)
Definition: D3D11TypeConversions.hpp:159
void MapParamsToD3D11MapParams(MAP_TYPE MapType, Uint32 MapFlags, D3D11_MAP &d3d11MapType, UINT &d3d11MapFlags)
Definition: D3D11TypeConversions.hpp:105
struct InputLayoutDesc InputLayoutDesc
Definition: InputLayout.h:239
@ MAP_READ_WRITE
The resource is mapped for reading and writing. D3D11 counterpart: D3D11_MAP_READ_WRITE....
Definition: GraphicsTypes.h:218
struct BufferDesc BufferDesc
Definition: Buffer.h:152
@ MISC_TEXTURE_FLAG_GENERATE_MIPS
Allow automatic mipmap generation with ITextureView::GenerateMips()
Definition: GraphicsTypes.h:982
struct TextureViewDesc TextureViewDesc
Definition: TextureView.h:183
@ CPU_ACCESS_WRITE
A resource can be mapped for writing.
Definition: GraphicsTypes.h:195
struct BlendStateDesc BlendStateDesc
Definition: BlendState.h:431
uint32_t Uint32
32-bit unsigned integer
Definition: BasicTypes.h:51
@ MAP_WRITE
The resource is mapped for writing. D3D11 counterpart: D3D11_MAP_WRITE. OpenGL counterpart: GL_MAP_...
Definition: GraphicsTypes.h:214
@ MAP_READ
The resource is mapped for reading. D3D11 counterpart: D3D11_MAP_READ. OpenGL counterpart: GL_MAP_R...
Definition: GraphicsTypes.h:210
UINT CPUAccessFlagsToD3D11CPUAccessFlags(Uint32 Flags)
Definition: D3D11TypeConversions.hpp:135
COMPARISON_FUNCTION
Comparison function.
Definition: GraphicsTypes.h:931
void BlendStateDesc_To_D3D11_BLEND_DESC(const BlendStateDesc &BSDesc, D3D11_BLEND_DESC &D3D11BSDesc)
Definition: D3D11TypeConversions.cpp:68
@ BIND_STREAM_OUTPUT
A buffer can be bound as a target for stream output stage.
Definition: GraphicsTypes.h:124
UINT MiscTextureFlagsToD3D11Flags(Uint32 Flags)
Definition: D3D11TypeConversions.hpp:152
@ CPU_ACCESS_READ
A resource can be mapped for reading.
Definition: GraphicsTypes.h:194
struct DepthStencilStateDesc DepthStencilStateDesc
Definition: DepthStencilState.h:233
void BufferViewDesc_to_D3D11_UAV_DESC(const BufferDesc &BuffDesc, const BufferViewDesc &UAVDesc, D3D11_UNORDERED_ACCESS_VIEW_DESC &D3D11UAVDesc)
Definition: D3D11TypeConversions.cpp:147
@ BIND_DEPTH_STENCIL
A texture can be bound as a depth-stencil target.
Definition: GraphicsTypes.h:126
@ MAP_FLAG_DO_NOT_WAIT
Specifies that map operation should not wait until previous command that using the same resource comp...
Definition: GraphicsTypes.h:236
D3D11_COMPARISON_FUNC ComparisonFuncToD3D11ComparisonFunc(COMPARISON_FUNCTION Func)
Definition: D3D11TypeConversions.cpp:49
@ BIND_VERTEX_BUFFER
A buffer can be bound as a vertex buffer.
Definition: GraphicsTypes.h:118
struct BufferViewDesc BufferViewDesc
Definition: BufferView.h:140
@ BIND_NONE
Undefined binding.
Definition: GraphicsTypes.h:117
#define VERIFY_EXPR(...)
Definition: DebugUtilities.hpp:79
@ BIND_RENDER_TARGET
A texture can be bound as a render target.
Definition: GraphicsTypes.h:125
D3D11_TEXTURE_ADDRESS_MODE TexAddressModeToD3D11AddressMode(TEXTURE_ADDRESS_MODE Mode)
Definition: D3D11TypeConversions.cpp:44
void DepthStencilStateDesc_To_D3D11_DEPTH_STENCIL_DESC(const DepthStencilStateDesc &DepthStencilDesc, D3D11_DEPTH_STENCIL_DESC &d3d11DSSDesc)
Definition: D3D11TypeConversions.cpp:54
void RasterizerStateDesc_To_D3D11_RASTERIZER_DESC(const RasterizerStateDesc &RasterizerDesc, D3D11_RASTERIZER_DESC &d3d11RSDesc)
Definition: D3D11TypeConversions.cpp:60
void LayoutElements_To_D3D11_INPUT_ELEMENT_DESCs(const InputLayoutDesc &InputLayout, std::vector< D3D11_INPUT_ELEMENT_DESC, STDAllocatorRawMem< D3D11_INPUT_ELEMENT_DESC >> &D3D11InputElements)
Definition: D3D11TypeConversions.cpp:83
@ BIND_INDEX_BUFFER
A buffer can be bound as an index buffer.
Definition: GraphicsTypes.h:119
MAP_TYPE
Resource mapping type.
Definition: GraphicsTypes.h:206
void TextureViewDesc_to_D3D11_SRV_DESC(const TextureViewDesc &TexViewDesc, D3D11_SHADER_RESOURCE_VIEW_DESC &D3D11SRVDesc, Uint32 SampleCount)
Definition: D3D11TypeConversions.cpp:96
MISC_TEXTURE_FLAGS
Miscellaneous texture flags.
Definition: GraphicsTypes.h:975
@ CPU_ACCESS_NONE
No CPU access.
Definition: GraphicsTypes.h:193
@ USAGE_IMMUTABLE
A resource that can only be read by the GPU. It cannot be written by the GPU, and cannot be accessed ...
Definition: GraphicsTypes.h:150
struct RasterizerStateDesc RasterizerStateDesc
Definition: RasterizerState.h:184
USAGE D3D11UsageToUsage(D3D11_USAGE D3D11Usage)
Definition: D3D11TypeConversions.hpp:91
The library uses Direct3D-style math:
Definition: AdvancedMath.hpp:37
@ BIND_SHADER_RESOURCE
A buffer or a texture can be bound as a shader resource.
Definition: GraphicsTypes.h:122
@ USAGE_DEFAULT
A resource that requires read and write access by the GPU and can also be occasionally written by the...
Definition: GraphicsTypes.h:156
D3D11_PRIMITIVE_TOPOLOGY TopologyToD3D11Topology(PRIMITIVE_TOPOLOGY Topology)
Definition: D3D11TypeConversions.cpp:89
CPU_ACCESS_FLAGS D3D11CPUAccessFlagsToCPUAccessFlags(UINT D3D11CPUAccessFlags)
Definition: D3D11TypeConversions.hpp:143