Release v2.4 is out with Explicit State Transition Control

Release v2.4 introduces explicit control of resources state transitions, fixes some multi-threading issues and implements a number of improvements to the API that make it better organized and more clear.

API changes:

  • Added RESOURCE_STATE enum that defines the resource state
  • Added RESOURCE_STATE_TRANSITION_MODE enum that controls resource state transition mode
  • Added DRAW_FLAGS enum that controls state validation performed by Draw command
  • Added Flags  member to DrawAttribs structure (values from DRAW_FLAGS)
  • Added IndirectAttribsBufferStateTransitionMode  member to DrawAttribs and DispatchComputeAttribs structures
  • Added StateTransitionDesc structure that describes resource state transition barrier
  • Added IDeviceContext::TransitionResourceStates(Uint32 BarrierCount, StateTransitionDesc* pResourceBarriers) method
  • Added IBuffer::SetState(), IBuffer::GetState(), ITexture::SetState(), ITexture::GetState() methods
  • Added IShaderResourceBinding::InitializeStaticResources() to explicitly initialize static resources and avoid problems in multi-threaded environments
  • Added InitStaticResources parameter to IPipelineState::CreateShaderResourceBinding() method to allow immediate initialization of static resources in a SRB
  • Removed default SRB object
  • Renamed/moved IBuffer::UpdateData()  to IDeviceContext::UpdateBuffer()
  • Renamed/moved IBuffer::CopyData() to IDeviceContext::CopyBuffer()
  • Renamed/moved IBuffer::Map() to IDeviceContext::MapBuffer()
  • Renamed/moved IBuffer::Unmap()  to IDeviceContext::UnmapBuffer()
  • Removed MapFlags  parameter
  • Renamed/moved ITexture::UpdateData()  to IDeviceContext::UpdateTexture()
  • Renamed/moved ITexture::CopyData() to IDeviceContext::CopyTexture()
  • Renamed/moved ITexture::Map() to IDeviceContext::MapTextureSubresource()
  • Renamed/moved ITexture::Unmap() to IDeviceContext::UnmapTextureSubresource()
  • Moved ITextureView::GenerateMips() to IDeviceContext::GenerateMips()
  • Added state transition mode parameters to IDeviceContext::UpdateBuffer(), IDeviceContext::UpdateTexture(), IDeviceContext::CopyBuffer(), IDeviceContext::CopyTexture(), IDeviceContext::SetVertexBuffers(),   IDeviceContext::SetIndexBuffers(), IDeviceContext::ClearRenderTargets(), and IDeviceContext::ClearDepthStencil()  methods
  • Replaced COMMIT_SHADER_RESOURCES_FLAGS  enum with RESOURCE_STATE_TRANSITION_MODE
  • Added ITextureD3D12::GetD3D12ResourceState(), IBufferD3D12::GetD3D12ResourceState(),
    IBufferVk::GetAccessFlags(), and ITextureVk::GetLayout() methods
  • Added CopyTextureAttribs structure that combines all parameters of IDeviceContext::CopyTexture() method

cheap generic viagra I don’t believe one has to go to church to connect with the divine power. On ordine cialis on line the other hand, Kaunch seeds offer positive effects for enhancing the sex drive in male. Therapy is pfizer online viagra very helpful at breaking through these areas. Amazingly, Colfax has migrated newly-acquired companies onto IFS Applications in as little as nine weeks! Colfax Corporation is a world leader viagra tabs in the development, engineering, manufacturing, distribution, service and support of pumping and fluid handling systems.

Leave a Comment

Your email address will not be published.