Skip to content

Releases: DiligentGraphics/DiligentEngine

Diligent Engine - v2.4.d

15 Jan 00:45
Compare
Choose a tag to compare

Full release notes

Diligent Engine - v2.4.c

13 Oct 20:28
Compare
Choose a tag to compare

Full release notes

Diligent Engine - v2.4.b

08 Mar 16:01
Compare
Choose a tag to compare

Diligent Engine - v2.4.a

07 Jan 02:07
Compare
Choose a tag to compare
  • Enabled MinGW build
  • Enabled Vulkan on MacOS via MoltenVK
  • Implemented split barriers (https://github.com/DiligentGraphics/DiligentCore/issues/43)
    • Added STATE_TRANSITION_TYPE enum and STATE_TRANSITION_TYPE TransitionType member to StateTransitionDesc structure
  • Added Metal backend stub
  • Samples:
    • Added rendering backend selection dialog on Win32 and Mac

Diligent Engine - v2.4

10 Dec 01:51
Compare
Choose a tag to compare
  • Added explicit resource state transitions
  • 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 (values from RESOURCE_STATE_TRANSITION_MODE)
    • 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 paramters of IDeviceContext::CopyTexture() method

Diligent Engine - v2.3.b

11 Nov 18:54
8d8fa31
Compare
Choose a tag to compare
  • Enabled Vulkan backend on Linux
  • API Changes
    • Implemented separate texture samplers:
      • Added UseCombinedTextureSamplers and CombinedSamplerSuffix members to ShaderCreationAttribs structure
      • When separate samplers are used (UseCombinedTextureSamplers == false), samplers are set in the same way as other shader variables via shader or SRB objects
    • Removed BIND_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 flags
  • Using glslang to compile HLSL to SPIRV in Vulkan backend instead of relying on HLSL->GLSL converter

Diligent Engine - v2.3.a

11 Oct 03:31
0f8685b
Compare
Choose a tag to compare
  • Core

    • Added IFence interface and IDeviceContext::SignalFence() method to enable CPU-GPU synchronization
    • Added BUFFER_MODE_RAW mode allowing raw buffer views in D3D11/D3D12.
    • Moved Format member from BufferDesc to BufferViewDesc
    • Removed IsIndirect member from DrawAttrbis as setting pIndirectDrawAttribs to a non-null buffer already indicates indirect rendering
  • Samples:

    • Added Tutorial 10 - Data Streaming

Diligent Engine - v2.3

08 Jul 14:26
Compare
Choose a tag to compare

Diligent Engine - v2.2.a

14 Mar 03:46
Compare
Choose a tag to compare

Diligent Engine - v2.2

20 Feb 17:24
6a60215
Compare
Choose a tag to compare
  • Enabled MacOS and iOS
  • Fixed multiple issue on Android