Henrik Rydgård and Claude Opus 5
70095e458b
thin3d: add sub-rectangle texture updates, use them for imgui fonts
...
imgui 1.92 hands the backend a list of dirty rectangles when its font atlas
grows, but thin3d could only replace a whole mip level, so every new glyph
re-uploaded the entire atlas.
Adds DrawContext::UpdateTextureRegions, taking a batch of regions so each
backend can submit them together:
- Vulkan: packs the regions into the push pool and issues a single
vkCmdCopyBufferToImage from the init command buffer, transitioning only
the level being written.
- OpenGL: new TEXTURE_SUBIMAGE init step. The existing sub-image path is a
render command needing an active render pass and a texture slot, which
doesn't fit here. Rows are packed caller-side since GLES2 lacks
GL_UNPACK_ROW_LENGTH.
- D3D11: UpdateSubresource with a box, no staging texture needed.
Co-Authored-By: Claude Opus 5 (1M context) <[email protected] >
2026-09-12 13:16:17 -06:00
Henrik Rydgård and Claude Opus 5
43850e7c03
Update Dear ImGui to 1.92.9b (docking)
...
From 947aa9c97 to 98a66d8c8 on the docking branch - the latest release there,
plus the viewport fixes that landed on top of it. The only local changes to
upstream files are the "#undef new" hack at the top of imgui.h and enabling
IMGUI_DISABLE_OBSOLETE_FUNCTIONS in imconfig.h; both re-applied.
1.92 reworked fonts and textures, so the thin3d backend now advertises
ImGuiBackendFlags_RendererHasTextures and creates/updates/destroys imgui's
textures on request instead of building the font atlas itself. ImTextureIDs
below 256 now index those, above it the per-frame temp textures as before.
thin3d can't replace part of a texture yet, so an update re-uploads the whole
thing - fine for an atlas that only changes when a new glyph appears.
Also: AddRect() swapped its thickness and flags parameters in 1.92.8.
Co-Authored-By: Claude Opus 5 (1M context) <[email protected] >
2026-09-12 12:59:53 -06:00
Henrik Rydgård
a6996f570f
ImDebugger: make selected text more visible
2026-09-12 12:58:56 -06:00
Henrik Rydgård
8d2c1e7a66
Make the ImDebugger a bit less crash prone outside of games
2026-08-07 22:40:05 +02:00
Henrik Rydgård
25a146a11c
Make the PPSSPP UI fit inside the imgui desktop
2026-08-07 17:56:09 +02:00
Henrik Rydgård
ea8a648737
Refactor UI shader presets, prepare for some updates to the ImGe debugger
2026-06-14 11:08:56 +02:00
Henrik Rydgård
054a10d46b
Fix imgui being upside down on some backends.
...
Fixes #21761
2026-06-01 10:53:41 +02:00
Henrik Rydgård
6f0a16a4a4
Fix Y flip
2026-05-18 14:14:25 +02:00
Henrik Rydgård
026ea6e197
imgui debugger: Make the repeat button capable of returning values > 1
...
(for very fast repeats, but the caller must support it)
Also just increase the repeat rates in the ge debugger
2026-01-22 13:47:14 +01:00
Henrik Rydgård
18a67b82d2
Do the same with KeyInputFlags. Fix minor UI misalignments
2025-12-19 13:41:58 +01:00
Henrik Rydgård
481d0fd18c
Switch TouchInputFlags to enum class, fix some minor UI issues
...
Scroll views now only wheel-scroll if the mouse is hovering over them.
2025-12-19 11:38:56 +01:00
Henrik Rydgård
5f8ee93006
Use a TTF font for fixed-width text in the debugger
...
Fixes #20635
2025-07-16 20:20:33 +02:00
Henrik Rydgård
eadd32e00a
Keycodes: Restore the old PrintScreen keymapping, fixing mistake from #19656
...
Fixes #20588
2025-07-08 14:03:04 +02:00
Henrik Rydgård
6df9e513c1
Logging, comments and debugger fixes, plus simple dumping of the first block of streaming Atrac3
2025-06-25 01:08:47 +02:00
Henrik Rydgård
09e067c6e1
Revert "Get rid of remains of support for non-square screen DPIs"
...
This reverts commit f206ed95eb .
2025-05-21 21:41:50 +02:00
Henrik Rydgård
dc22638918
ImDebugger UI update
2025-04-14 23:36:45 +02:00
Henrik Rydgård
a97ea04827
ImGui: Add "repeatshift" buttons that auto-repeat if you hold shift.
2025-04-09 11:58:31 +02:00
Henrik Rydgård
717ea3ec8e
ImDebugger: Show imports/exports in Module window
2025-04-02 10:09:19 +02:00
Henrik Rydgård
2d69d78e71
Console wip
2025-03-27 08:59:38 +01:00
Henrik Rydgård
9049139845
imgui: Simulate the left mouse button through touch
2025-03-05 23:26:30 +01:00
Henrik Rydgård
f206ed95eb
Get rid of remains of support for non-square screen DPIs
2025-02-20 11:14:26 -06:00
Henrik Rydgård
1f7461bb70
When ImDebugger is active, shrink the display area to match the central node.
2025-02-19 11:00:20 -06:00
Henrik Rydgård
86b3eadc16
Warning fixes, maybe test fix
2025-01-19 16:33:40 +01:00
Henrik Rydgård
58adb379ea
GE debugger improvements
2024-12-20 20:31:58 +01:00
Henrik Rydgård
ae3e50da30
Fix the imgui font in release mode builds, oops
2024-12-16 18:47:06 +01:00
Henrik Rydgård
111d0c872d
Global rename of FBChannel to Aspect, also make it a class enum
2024-12-15 22:24:05 +01:00
Henrik Rydgård
6c355836da
ImGeDebugger: Implement draw stepping
2024-12-15 00:40:33 +01:00
Henrik Rydgård
8cc77c0997
ImGui: Implement cursor support on Windows
2024-12-13 22:06:59 +01:00
Henrik Rydgård
fa3321ca0c
ImDebugger: Switch "Dear Imgui" to the Docking branch, enable the feature
2024-12-12 22:50:51 +01:00
Henrik Rydgård
c85266359f
More memory view work
2024-12-12 17:47:37 +01:00
Henrik Rydgård
27122a9e64
Work on previews
2024-12-10 22:09:51 +01:00
Henrik Rydgård
e4adc112ff
ImDebugger: Add a basic texture browser
2024-11-29 19:30:38 +01:00
Henrik Rydgård
1df3b9b905
Add config save/load for imdebugger, move the imgui.ini to PSP/SYSTEM
2024-11-27 09:15:03 +01:00
Henrik Rydgård
6763c13f88
ImGui: Finish implementing pipeline switching for all backends
2024-11-27 01:19:05 +01:00
Henrik Rydgård
09779e0f44
ImGui drawing: Allow varying the pipeline when binding textures
2024-11-26 19:59:09 +01:00
Henrik Rydgård
eaff38f161
Implement ImGui clipped batch texturing support in the other backends too
2024-11-26 09:38:30 +01:00
Henrik Rydgård
e82b7f788e
Implement texture binding in draw batches. Framebuffer viewer now works in Vulkan.
2024-11-26 09:22:35 +01:00
Henrik Rydgård
57845b02c5
ImGui thin3d backend: Add texture binding support
2024-11-26 09:05:29 +01:00
Henrik Rydgård
8372105d66
Fix printscreen keyboard mapping (although kinda useless)
2024-11-25 23:40:51 +01:00
Henrik Rydgård
e31636caec
Still use a fixed-width font for the disassembly (might change this)
2024-11-25 00:03:06 +01:00
Henrik Rydgård
2a1cda05b0
ImGui: Fix DPI scale, disable unneeded logging
2024-11-24 23:41:27 +01:00
Henrik Rydgård
6dfc5ea9ef
ImGui: Add TTF font support
...
We use the Roboto font that we're already shipping for now, although, we could
also support other fonts or have a setting.
2024-11-24 21:29:34 +01:00
Henrik Rydgård
0bf53e38f4
Remove duplicated imgui keycode logging (already logs in the conversion function)
2024-11-12 11:08:47 +01:00
Henrik Rydgård
e9bc28f629
Fix bug where the 'o' char input got eaten because the char matches the keycode for Esc..
2024-11-07 19:56:32 +01:00
Henrik Rydgård
9c92978fcc
ImGui debugger: assorted work
2024-11-07 11:10:16 +01:00
Henrik Rydgård
cf6d06c56a
Start work on imdbg
2024-11-07 11:10:12 +01:00
Henrik Rydgård
dff7f5704a
Implement mousewheel vertical scroll and hover in ImGui integration
2024-11-06 22:00:11 +01:00
Henrik Rydgård
c68c5353b0
SDL mouse input fixes
2024-11-06 12:04:24 +01:00
Henrik Rydgård
8dba3a50f7
imgui: Code cleanup, fix clean shutdown
2024-11-05 11:27:16 +01:00
Henrik Rydgård
ae1756c8c0
Plumb deltatime into imgui
2024-11-05 10:57:24 +01:00