106 Commits

Author SHA1 Message Date
ocornut
02af06ea5f Backends: Vulkan: rewrite pColorAttachmentFormats deep-copy to avoid issues when calling multiple times. (#8282, #8110) 2025-09-04 18:14:28 +02:00
ocornut
026d47cd35 Backends: Vulkan: store pColorAttachmentFormats deep-copy into an ImVector. (#8282, #8110) 2025-09-04 18:05:58 +02:00
ocornut
26aa81a8b1 Backends: Vulkan: misc amends (makes ImGui_ImplVulkan_MainPipelineCreateInfo::PipelineRenderingCreateInfo consistent with InitInfo). (#8110, #8111, #8053) 2025-09-04 18:05:15 +02:00
ocornut
1ecc34a0b1 Backends: Vulkan: misc amends (e.g. changelog, coding style). (8110, 8111, 8053)
# Conflicts:
#	backends/imgui_impl_vulkan.cpp
2025-09-04 18:04:20 +02:00
ocornut
ee03cef14f Backends: Vulkan: revert using a struct for ImGui_ImplVulkan_CreatePipeline() for now. (#8110, #8111, #8053) 2025-09-04 18:00:05 +02:00
Ronan Cailleau
e51d93e2f5 Backends: Vulkan: added ImGui_ImplVulkan_CreateMainPipeline(). (#8110, #8111, #8053)
- Added ImGui_ImplVulkan_CreateMainPipeline(...) to explicitly re-create the main window pipeline (when some of its properties are changed).
- Does not implicitly use ImGui_ImplVulkan_InitInfo::PipelineRenderingCreateInfo, but a function parameter.
- The main window pipeline is created only if possible during ImGui_ImplVulkan_Init(...) (if a render pass or rendering info are given), else it should be created with ImGui_ImplVulkan_ReCreateMainPipeline(...)
- ImGui_ImplVulkan_CreatePipeline now takes a struct rather than (too) many parameters (and returns the created pipeline).
2025-09-04 18:00:05 +02:00
Michael Böhme
90025a62c7 Backends: Vulkan: Avoid calling vkCmdBindDescriptorSets() when texture has not changed. (#8666) 2025-08-04 18:10:00 +09:00
Miolith
853a46e021 Backends: Vulkan: fixed texture update corruption introduced in 1.92.0. (#8801, #8755, #8840, #8465)
Fix abe294bfd0
2025-07-27 19:33:30 +09:00
ocornut
336d9212fc Backends: using range-for to iterate draw_data->CmdLists[]. 2025-07-11 17:41:52 +02:00
Moses Miller
032e1397d9 Backends: Vulkan: use separate barrier for buffer. (#8772) 2025-07-07 16:58:42 +02:00
Moses Miller
c2d9b07533 Backends: Vulkan: fixed texture synchronization. (#8772) 2025-07-07 16:58:41 +02:00
ocornut
495d6f1e39 Undef 'Status' in main header file. (#8751, #8765) 2025-07-07 14:56:50 +02:00
Thomas Quante
8e3aac5744 Backends: Vulkan: use nonCoherentAtomSize to align upload_size, fixing validation error on some setups. (#8743, #8744) 2025-06-27 16:32:17 +02:00
ocornut
e97e55adbc Backends: Fixed various warnings discovered when using MinGW GCC 15/Clang on latest backends.
dx12: 'ImGui_ImplDX12_Data* bd' shadowed local in spite of being in lambda.
2025-06-20 15:18:00 +02:00
ocornut
8d6e66d38c Backends: DX10, DX11, DX12, OpenGL3, Vulkan, WGPU: Assert when CreateDeviceObjects() calls return false. 2025-06-20 09:49:53 +02:00
Shawn Hatori
6b3cbb10a2 Backends: Vulkan: correct minimum pool size assertion (#8691) 2025-06-16 11:59:26 +02:00
ocornut
abe294bfd0 Backends: Vulkan: added ImGuiBackendFlags_RendererHasTextures support.
# Conflicts:
#	backends/imgui_impl_vulkan.cpp
2025-06-11 15:33:28 +02:00
ocornut
bf68040dc5 Backends: Vulkan: fixed build with VK_NO_PROTOTYPES.
Amend bbc89b6 (#8600)
2025-05-07 15:42:23 +02:00
ChrisTom-94
bbc89b6391 Backends: Vulkan: fixed validation errors during window detach in multi-viewport mode. (#8600, #8176) 2025-05-07 15:23:03 +02:00
ChrisTom-94
d1dc2a3298 Backends: Vulkan: Load dynamic rendering functions using vkGetDeviceProcAddr() + try both non-KHR and KHR versions. (#8600, #8326, #8365)
# Conflicts:
#	backends/imgui_impl_vulkan.cpp
#	docs/CHANGELOG.txt
2025-05-07 11:50:32 +02:00
ocornut
974bf58a21 Backends: Vulkan: Build and warning fixes. (#8282) 2025-04-07 17:39:00 +02:00
ocornut
91652c317e Backends: Vulkan: Deep-copy ImGui_ImplVulkan_InitInfo::PipelineRenderingCreateInfo's pColorAttachmentFormats buffer when set, in order to reduce common user-error of specifying a pointer to data that gets out of scope. (#8282)
# Conflicts:
#	backends/imgui_impl_vulkan.cpp
#	docs/CHANGELOG.txt
2025-04-07 16:40:14 +02:00
fdsa
3c3d943fb1 Docs: Fix some typos (#8473) 2025-03-09 16:42:16 +01:00
ocornut
ec4cd2cb8c Backends: Vulkan: Fixed crash with using no prototypes + *BREAKING* Added ApiVersion to ImGui_ImplVulkan_LoadFunctions(). (#8326, #8365, #8400) 2025-02-14 12:19:39 +01:00
ocornut
e1ae7db4cc Backends: Vulkan: Fixed building with older headers not supporting VK_HEADER_VERSION_COMPLETE. (#8326, #8365) 2025-02-13 16:03:40 +01:00
ocornut
890ead6a71 Backends: Vulkan: Added ApiVersion field in ImGui_ImplVulkan_InitInfo. Dynamic rendering path loads "vkCmdBeginRendering/vkCmdEndRendering" without -KHR on API 1.3. (#8326, #8365) 2025-02-13 15:40:49 +01:00
ocornut
dd89a3741b Backends: Vulkan: sharing duplicate code. (#5446, #8326) 2025-01-17 17:11:22 +01:00
ocornut
8ebf22d3c1 Backends: Vulkan: use ImVector<> for simplicity. 2025-01-15 16:21:16 +01:00
ocornut
0b8ff4b238 Backends, Examples: Vulkan: add IMGUI_IMPL_VULKAN_MINIMUM_IMAGE_SAMPLER_POOL_SIZE. use in descriptor pools sizes. (#6642) 2025-01-09 23:29:44 +01:00
ocornut
0514332474 Avoid clang/gcc warnings: -Wnontrivial-memaccess in backends. (#8295, #8129, #8135) 2025-01-08 11:44:00 +01:00
ocornut
cec8ff1885 Backends: Vulkan: Fixed building with using VK_NO_PROTOTYPES. (#8180)
Broken by a2e2172
2025-01-06 18:41:17 +01:00
ocornut
a2e21727c0 Backends: Vulkan: moved helpers to backend: ImGui_ImplVulkanH_SelectPhysicalDevice(), ImGui_ImplVulkanH_SelectQueueFamilyIndex(). (#8180) 2025-01-06 17:35:20 +01:00
Mahmood - Zer0xFF
e487eb9da0 Backends: Vulkan: Fixed setting VkSwapchainCreateInfoKHR::preTransform for platforms not supporting VK_SURFACE_TRANSFORM_IDENTITY_BIT_KHR. (#8222) 2024-12-11 15:41:24 +01:00
ocornut
43fbd7ce84 Backends: standardized top of file comments. 2024-12-05 12:43:04 +01:00
ocornut
566558b17c Replacing NULL with nullptr in examples/backends when they creeped back. (#6313, #7071, #4537) 2024-12-05 12:25:02 +01:00
ocornut
dda7672008 Backends: Vulkan: removed sizeof(ImTextureID) check.
(not necessary anymore and it happens to when with a later coming change of ImTextureID, so best removed earlier).
2024-11-28 19:23:01 +01:00
ocornut
c1123fd8d0 Backends: Vulkan: small refactor to use a texture struct. 2024-11-27 14:57:38 +01:00
ocornut
96877eb9c3 Backends: Vulkan: fixed build with VK_NO_PROTOTYPES. (#8172, #4867)
Amend 61ab94d
2024-11-27 12:38:12 +01:00
Arseny Kapoulkine
61ab94d553 Backends: Vulkan: Make descriptor pool optional (#8172, #4867)
Comments/amends by ocornut
2024-11-27 11:54:05 +01:00
ocornut
419a9ada16 Ignore clang warning Wnontrivial-memaccess (#8129, #8135)
Amend 88e2327
Use void* cast in backend where the memset are infrequent.
2024-11-07 19:08:37 +01:00
ocornut
42f47590f9 Fixed ad37b79 breaking IsItemHovered()->IsItemFocused() passthrough for navigation.
+ Backends: comments.
2024-10-14 19:22:05 +02:00
ocornut
c4bc674482 IO: WantCaptureKeyboard is never set when ImGuiConfigFlags_NoKeyboard is enabled. (#4921)
+ Retroactively add missing changelog item in 1.90
+ Backends: Vulkan: use GetTexID() for consistency.
2024-10-11 15:31:17 +02:00
ocornut
92b94980c6 (Breaking) Default ImTextureID to use a Im64 instead of void* (#1641) 2024-10-08 14:21:44 +02:00
ocornut
f890d85381 Backends: Fixed typo in comments from old wip work 'io.BackendRendererRenderState' -> 'platform_io.Renderer_RenderState'. (#6969, #5834, #7468, #3590
Amend e94f95d
2024-10-07 22:12:09 +02:00
ocornut
42206b3d51 Backends: DX9, DX10, DX11, DX12, OpenGL, Vulkan, WGPU: Changed default texture sampler to Clamp instead of Repeat/Wrap. (#7468, #7511, #5999, #5502) 2024-10-07 22:02:55 +02:00
ocornut
74dd38d27c Backends: Vulkan: fixed warnings when building in 32-bit mode. 2024-10-07 21:53:46 +02:00
ocornut
e94f95d82b Backends: DX11, DX12, Vulkan, WGPU: Expose some backend-specific render state usable for callbacks. (#6969, #5834, #7468, #3590) 2024-10-07 21:45:19 +02:00
ocornut
9bd5d8a240 Backends: misc renaming of locals. Use 'draw_list' instead of 'cmd_list'. Avoid using 'ctx'.
This is likely to trigger merging issues. If it does, best to always get "theirs" and rename in there.
2024-10-07 17:57:11 +02:00
Hubert Maier
07dbcf1f70 Fixed typos. (#7593) 2024-05-16 16:13:01 +02:00
ocornut
5e23680454 Backends: all backends + demo now call IMGUI_CHECKVERSION() to verify ABI compatibility between caller code and compiled version of dear imgui. (#7568) 2024-05-13 15:07:13 +02:00