aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--util/sokol_cimgui.h8
-rw-r--r--util/sokol_imgui.h8
2 files changed, 8 insertions, 8 deletions
diff --git a/util/sokol_cimgui.h b/util/sokol_cimgui.h
index 9235971d..e14999da 100644
--- a/util/sokol_cimgui.h
+++ b/util/sokol_cimgui.h
@@ -825,8 +825,8 @@ SOKOL_API_IMPL void scimgui_shutdown(void) {
SOKOL_API_IMPL void scimgui_new_frame(int width, int height, double delta_time) {
ImGuiIO* io = igGetIO();
- io->DisplaySize.x = (float) width;
- io->DisplaySize.y = (float) height;
+ io->DisplaySize.x = ((float) width) * _scimgui.desc.dpi_scale;
+ io->DisplaySize.y = ((float) height) * _scimgui.desc.dpi_scale;
io->DeltaTime = (float) delta_time;
#if !defined(SOKOL_CIMGUI_NO_SOKOL_APP)
for (int i = 0; i < SAPP_MAX_MOUSEBUTTONS; i++) {
@@ -864,8 +864,8 @@ SOKOL_API_IMPL void scimgui_render(void) {
sg_push_debug_group("sokol-imgui");
sg_apply_pipeline(_scimgui.pip);
_scimgui_vs_params_t vs_params;
- vs_params.disp_size.x = igGetIO()->DisplaySize.x / dpi_scale;
- vs_params.disp_size.y = igGetIO()->DisplaySize.y / dpi_scale;
+ vs_params.disp_size.x = igGetIO()->DisplaySize.x;
+ vs_params.disp_size.y = igGetIO()->DisplaySize.y;
sg_apply_uniforms(SG_SHADERSTAGE_VS, 0, &vs_params, sizeof(vs_params));
sg_bindings bind;
_scimgui_clear(bind);
diff --git a/util/sokol_imgui.h b/util/sokol_imgui.h
index da3dc21b..e549397d 100644
--- a/util/sokol_imgui.h
+++ b/util/sokol_imgui.h
@@ -835,8 +835,8 @@ SOKOL_API_IMPL void simgui_shutdown(void) {
SOKOL_API_IMPL void simgui_new_frame(int width, int height, double delta_time) {
ImGuiIO& io = ImGui::GetIO();
- io.DisplaySize.x = (float) width;
- io.DisplaySize.y = (float) height;
+ io.DisplaySize.x = ((float) width) / _simgui.desc.dpi_scale;
+ io.DisplaySize.y = ((float) height) / _simgui.desc.dpi_scale;
io.DeltaTime = (float) delta_time;
#if !defined(SOKOL_IMGUI_NO_SOKOL_APP)
for (int i = 0; i < SAPP_MAX_MOUSEBUTTONS; i++) {
@@ -874,8 +874,8 @@ SOKOL_API_IMPL void simgui_render(void) {
sg_push_debug_group("sokol-imgui");
sg_apply_pipeline(_simgui.pip);
_simgui_vs_params_t vs_params;
- vs_params.disp_size.x = ImGui::GetIO().DisplaySize.x / dpi_scale;
- vs_params.disp_size.y = ImGui::GetIO().DisplaySize.y / dpi_scale;
+ vs_params.disp_size.x = ImGui::GetIO().DisplaySize.x;
+ vs_params.disp_size.y = ImGui::GetIO().DisplaySize.y;
sg_apply_uniforms(SG_SHADERSTAGE_VS, 0, &vs_params, sizeof(vs_params));
sg_bindings bind = { };
bind.vertex_buffers[0] = _simgui.vbuf;