A modern cross-platform low-level graphics library and rendering framework
Full release notes
STATE_TRANSITION_TYPE
enum and STATE_TRANSITION_TYPE TransitionType
member to StateTransitionDesc
structureRESOURCE_STATE
enum that defines the resource stateRESOURCE_STATE_TRANSITION_MODE
enum that controls resource state transition modeDRAW_FLAGS
enum that controls state validation performed by Draw commandFlags
member to DrawAttribs
structure (values from DRAW_FLAGS
)IndirectAttribsBufferStateTransitionMode
member to DrawAttribs
and DispatchComputeAttribs
structures (values from RESOURCE_STATE_TRANSITION_MODE
)StateTransitionDesc
structure that describes resource state transition barrierIDeviceContext::TransitionResourceStates(Uint32 BarrierCount, StateTransitionDesc* pResourceBarriers)
methodIBuffer::SetState()
, IBuffer::GetState()
, ITexture::SetState()
, ITexture::GetState()
methodsIShaderResourceBinding::InitializeStaticResources()
to explicitly initialize static resources and
avoid problems in multi-threaded environmentsInitStaticResources
parameter to IPipelineState::CreateShaderResourceBinding()
method to allow immediate initialization of static resources in a SRBIBuffer::UpdateData()
to IDeviceContext::UpdateBuffer()
IBuffer::CopyData()
to IDeviceContext::CopyBuffer()
IBuffer::Map()
to IDeviceContext::MapBuffer()
IBuffer::Unmap()
to IDeviceContext::UnmapBuffer()
ITexture::UpdateData()
to IDeviceContext::UpdateTexture()
ITexture::CopyData()
to IDeviceContext::CopyTexture()
ITexture::Map()
to IDeviceContext::MapTextureSubresource()
ITexture::Unmap()
to IDeviceContext::UnmapTextureSubresource()
ITextureView::GenerateMips()
to IDeviceContext::GenerateMips()
IDeviceContext::UpdateBuffer()
, IDeviceContext::UpdateTexture()
, IDeviceContext::CopyBuffer()
, IDeviceContext::CopyTexture()
, IDeviceContext::SetVertexBuffers()
, IDeviceContext::SetIndexBuffers()
, IDeviceContext::ClearRenderTargets()
, and IDeviceContext::ClearDepthStencil()
methodsCOMMIT_SHADER_RESOURCES_FLAGS
enum with RESOURCE_STATE_TRANSITION_MODE
ITextureD3D12::GetD3D12ResourceState()
, IBufferD3D12::GetD3D12ResourceState()
,
IBufferVk::GetAccessFlags()
, and ITextureVk::GetLayout()
methodsCopyTextureAttribs
structure that combines all paramters of IDeviceContext::CopyTexture()
methodUseCombinedTextureSamplers
and CombinedSamplerSuffix
members to ShaderCreationAttribs
structureUseCombinedTextureSamplers == false
), samplers are set in the same way as other shader variables via shader or SRB objectsBIND_SHADER_RESOURCES_RESET_BINDINGS
flag, renamed BIND_SHADER_RESOURCES_KEEP_EXISTING
to BIND_SHADER_RESOURCES_KEEP_EXISTING
.
Added BIND_SHADER_RESOURCES_UPDATE_STATIC
, BIND_SHADER_RESOURCES_UPDATE_MUTABLE
, BIND_SHADER_RESOURCES_UPDATE_DYNAMIC
, and
BIND_SHADER_RESOURCES_UPDATE_ALL
flagsCore
IFence
interface and IDeviceContext::SignalFence()
method to enable CPU-GPU synchronizationBUFFER_MODE_RAW
mode allowing raw buffer views in D3D11/D3D12.Format
member from BufferDesc
to BufferViewDesc
IsIndirect
member from DrawAttrbis
as setting pIndirectDrawAttribs
to a non-null buffer already indicates indirect renderingSamples:
Implemented Vulkan backend plus multiple other updates/improvements.