Changes between Version 17 and Version 18 of Alpha27


Ignore:
Timestamp:
Apr 17, 2023, 1:40:18 PM (13 months ago)
Author:
Vladislav Belov
Comment:

Adds changes related to Vulkan (and which were necessary to introduce it).

Legend:

Unmodified
Added
Removed
Modified
  • Alpha27

    v17 v18  
    105105- r27606 Use premake5 beta2's `externalincludedirs` when available (Phab:D4980)
    106106- r27607 Adds more libraries to feedback reports. (Phab:D4949)
     107
     108=== Vulkan ===
     109Changes related to Vulkan particularly:
     110
     111- r27109 Removes drawing via IDeviceCommandContext from CMinimap. (Phab:D4779)
     112- r27110 Fixes vertex attribute stride in Canvas2D.
     113- r27134 Replaces border color of sampler by enum.
     114- r27136 Reduces uniforms sizes for the Canvas2D shader. (Phab:D4796)
     115- r27137 Moves vertex buffer offset to SetVertexBuffer.
     116- r27138 Reduces the number of SetVertexAttributeFormat calls in Canvas2D.
     117- r27139 Fixes calls to SetVertexAttributeFormat with zero stride.
     118- r27145 Fixes vertex attribute format in minimap and passes dependent textures as parameters.
     119- r27147 Reduces uniforms sizes for the minimap shader.
     120- r27148 Adds AcquireNextBackbuffer to CDevice to have something to present.
     121- r27151 Adds BeginFramebufferPass/EndFramebufferPass instead of SetFramebuffer.
     122- r27152 Adds usage flags to backend textures.
     123- r27167 Moves skybox vertex array creation and uploading before its rendering.
     124- r27173 Moves Backend enum from CVideoMode to backends. (Phab:D4809)
     125- r27182 Disallows backend buffer uploading inside framebuffer pass. (Phab:D4815)
     126- r27184 Makes AcquireNextBackbuffer returns true in case of successful backbuffer acquirement.
     127- r27198 Wraps gl_Position in a macro to avoid duplication for different versions.
     128- r27199 Wraps vertex attributes in a macro to avoid duplication for different versions.
     129- r27204 Wraps gl_FragColor in a macro to avoid duplication for different versions.
     130- r27207 Moves particles data uploading out of framebuffer pass. (Phab:D4820)
     131- r27208 Reduces the uniform size of a texture transform of debug overlay shader.
     132- r27209 Reduces the uniform size of an instancing transform of overlay solid shader.
     133- r27222 Removes unused UV1 stream in OverlayRenderer and moves vertex data setup out of a loop.
     134- r27232 Moves post processing out of scene rendering to avoid framebuffer pass duplicate. (Phab:D4827)
     135- r27236 Updates glad library to 2.0.2.
     136- r27256 Adds framebuffer attachment load and store operations. (Phab:D4830)
     137- r27282 Reduces shader inputs duplication and wraps them in a macro. Refs #6636 (Phab:D4837)
     138- r27313 Removes SetViewport from CRenderer. (Phab:D4849)
     139- r27328 Switches from pipeline state descriptions to pipeline states. (Phab:D4850)
     140- r27331 Fixes vertex attribute format mismatch for silhouette debug rendering.
     141- r27363 Switches from per draw vertex attribute format to precompiled vertex input layout. (Phab:D4852)
     142- r27379 Adds preferred depth stencil format to renderer backend.
     143- r27387 Adds dependent libraries for Vulkan. Refs #6636 (Phab:D4869)
     144- r27412 **Adds Vulkan backend.** (Phab:D4876)
     145- r27418 Fixes silhouettes on Vulkan by using VkStencilOpState.
     146- r27421 Ands new depth stencil format to support all combinations on Vulkan. (Phab:D4878)
     147- r27422 Recreates Vulkan swapchain on window resize. (Phab:D4879)
     148- r27446 Removes unnecessary PreDraw from Vulkan CDeviceCommandContext.
     149- r27450 Hides some warnings for VMA. (Phab:D4889)
     150- r27475 Fixes querying descriptor indexing features and properties on some drivers.
     151- r27477 Disables descriptor indexing on macOS.
     152- r27478 Adds a warning in case of Vulkan window creation failure.
     153- r27488 Add MoltenVK support to fix Vulkan on macOS. (Phab:D4905)
     154- r27494 Enables non-solid fill for Vulkan to allow wireframe drawing.
     155- r27495 Creates image views for Vulkan textures only when needed.
     156- r27496 Prevents using R8G8B8_UNORM format for Vulkan textures as it can be supported as a native format only by workarounds.
     157- r27501 Fix Molten VK printing too many log messages (Phab:D4913)
     158- r27502 Adds more features to report for Vulkan backend.
     159- r27503 Uses Vulkan physical device indices as the last comparison for device selection.
     160- r27510 Extends logs for Vulkan available device.  (Phab:D4917)
     161- r27511 Fixes descriptor set overwrite when multiple textures reference it with delayed deletion. Fixes #6717 (Phab:D4916)
     162- r27516 Makes Vulkan device selection stop searching after a first suitable queue family.
     163- r27522 Fixes overflow of inplace vertex and index Vulkan buffers. (Phab:D4920)
     164- r27536 Fixes invalid swapchain size during a window minimize. (Phab:D4932)
     165- r27537 Increases minImageCount for Vulkan swapchain only when there is a room for that.
     166- r27541 Check for the existence of libMoltenVK
     167- r27552 Implements framebuffer readback for Vulkan to allow screenshots. (Phab:D4940)
     168- r27573 Switches VMA to Vulkan 1.1. (Phab:D4947)