From 82cb3cb3574c18bfd97cc4a0646673d36776b9e0 Mon Sep 17 00:00:00 2001 From: Matthew Date: Sat, 15 Nov 2025 19:48:09 +1100 Subject: [PATCH] update dependencies, minor change to scrolling speed --- assets/gui.frag.spv | Bin 5992 -> 5992 bytes assets/gui.vert.spv | Bin 8860 -> 8860 bytes dub.json | 2 +- src/VulkanRenderer | 2 +- src/dlib | 2 +- src/editor/ui.d | 38 +++++++++++++++++++------------------- src/shaders/gui.layout | 4 ++-- 7 files changed, 24 insertions(+), 24 deletions(-) diff --git a/assets/gui.frag.spv b/assets/gui.frag.spv index 670e1a26507b0a542eb0916d5e3be8aee151cdad..de3dd14b5f053776131f4eb5abd074d29691c697 100644 GIT binary patch delta 31 ncmaE%_d;*OU5?2zoEDSCIE5#_;?UU~!uf-Vk#Vyxk2E&`!#fIQ delta 29 lcmaE%_d;*OT@FTr$ugW4ldp5wZ4Tl5!Nkb0*_TI}8vv}q3D5ul diff --git a/assets/gui.vert.spv b/assets/gui.vert.spv index 9928c20dcd9d656525055f39c8f1d700b9bc3430..d2e8ef26f61e3485e3888e72c131943aac14a8e8 100644 GIT binary patch delta 35 rcmbQ^I>&VbE6-#X9t-y3)Di_-1;fc~JQka4c%HB@GHy;3v=#&a!)^)_ delta 29 lcmbQ^I>&VbD-WZ=WEUQb$^W_SHrMbxVPRz0oG5552mq9x2|xe< diff --git a/dub.json b/dub.json index a908b41..d533de7 100644 --- a/dub.json +++ b/dub.json @@ -13,7 +13,7 @@ "sourcePaths": ["src/editor", "src/dlib", "src/dlib/external/xxhash", "src/VulkanRenderer"], "libs-linux": ["xcb", "X11", "X11-xcb", "vulkan", "stdc++", "xcb-xfixes", "freetype"], "libs-windows": [], - "versions": [], + "versions": ["VULKAN_DEBUG"], "preGenerateCommands-linux": ["./build.sh"], "preGenerateCommands-windows": [], "dflags": ["-Xcc=-mno-sse", "-P-I/usr/include/freetype2", "-Jbuild", "-Jassets", "-link-debuglib"], diff --git a/src/VulkanRenderer b/src/VulkanRenderer index 614ee40..c42238a 160000 --- a/src/VulkanRenderer +++ b/src/VulkanRenderer @@ -1 +1 @@ -Subproject commit 614ee40d853d65818fd04e41372e0ae492c8d988 +Subproject commit c42238a456f5048c7d1b2d5ebd71ecf13bb10ece diff --git a/src/dlib b/src/dlib index c83ffab..10b5c0a 160000 --- a/src/dlib +++ b/src/dlib @@ -1 +1 @@ -Subproject commit c83ffabce69071a3e7a0af3f26aa420082eeda1f +Subproject commit 10b5c0a127ef5fd5a18b956d2d112cae75017150 diff --git a/src/editor/ui.d b/src/editor/ui.d index a9e72da..bcae712 100644 --- a/src/editor/ui.d +++ b/src/editor/ui.d @@ -136,7 +136,8 @@ struct UICtx PlatformWindow* window; Renderer rd; - ImageView font_atlas; + Descriptor font_atlas; + Descriptor sampler; Pipeline pipeline; DescSetLayout desc_set_layout; DescSet desc_set; @@ -428,7 +429,7 @@ EaseOutQuint(f32 x) void SetScrollOffset(UIPanel* panel) { - f32 scroll_speed = 0.8 * (g_delta * 60.0); + f32 scroll_speed = 5.0; U64Vec2 pos = VecPos(&panel.ed.buf); @@ -451,7 +452,7 @@ SetScrollOffset(UIPanel* panel) if(panel.scroll_offset != panel.scroll_target) { - panel.scroll_offset += (scroll_speed * (panel.scroll_target - panel.scroll_offset)) * (g_delta * 60.0); + panel.scroll_offset += (scroll_speed * (panel.scroll_target - panel.scroll_offset)) * (g_delta * 2.0); if(fabsf(panel.scroll_offset-panel.scroll_target) < 0.0009) { @@ -529,10 +530,6 @@ Panel(UIPanel* panel) DrawPanel(panel, lc_w, focused); f32 y_rem = fmod(panel.scroll_offset, TEXT_SIZE); - if(y_rem != 0.0) - { - Logf("rem %f ln %s", y_rem, panel.start_ln); - } f32 x = panel.rect.x0; f32 y = panel.rect.y0 + TEXT_SIZE - fmod(panel.scroll_offset, TEXT_SIZE); @@ -754,16 +751,16 @@ InitUICtx(PlatformWindow* window) Vec4 b = Vec4(Vec3(0.0), 1.0); UICtx ctx = { - rd: InitRenderer(handles, MB(16), MB(8)), - items: CreateHashTable!(UIHash, UIItem*)(12), - arena: arena, + rd: InitRenderer(handles, MB(16), MB(8)), + items: CreateHashTable!(UIHash, UIItem*)(12), + arena: arena, temp_arena: CreateArena(MB(1)), - drag_item: g_UI_NIL, - atlas_buf: atlas_buf, - font: font, - font_data: cast(u8[])FONT_BYTES, - text_size: 16.0, - tab_width: 2, + drag_item: g_UI_NIL, + atlas_buf: atlas_buf, + font: font, + font_data: cast(u8[])FONT_BYTES, + text_size: 16.0, + tab_width: 2, }; for(u64 i = 0; i < FRAME_OVERLAP; i += 1) @@ -775,8 +772,8 @@ InitUICtx(PlatformWindow* window) } DescLayoutBinding[2] layout_bindings = [ - { binding: 0, descriptorType: DT.Image, descriptorCount: 1, stageFlags: SS.All }, - { binding: 1, descriptorType: DT.Storage, descriptorCount: 1, stageFlags: SS.All }, + { binding: 0, descriptorType: DT.Image, descriptorCount: 1, stageFlags: SS.All }, + { binding: 1, descriptorType: DT.Sampler, descriptorCount: 1, stageFlags: SS.All }, ]; ctx.desc_set_layout = CreateDescSetLayout(&ctx.rd, layout_bindings); @@ -819,7 +816,10 @@ InitUICtx(PlatformWindow* window) CreateImageView(&ctx.rd, &ctx.font_atlas, ctx.atlas_buf.atlas.width, ctx.atlas_buf.atlas.height, 4, ctx.atlas_buf.data); - Write(&ctx.rd, ctx.desc_set, &ctx.font_atlas, 0, DT.Image); + ctx.sampler = CreateSampler(&ctx.rd, MipmapMode.Nearest); + ctx.sampler.binding = 1; + + Write(&ctx.rd, ctx.desc_set, [ctx.font_atlas, ctx.sampler]); SetClearColors(&ctx.rd, [0.0, 0.0, 0.0, 1.0], [0.0, 0.0, 0.0, 0.0]); diff --git a/src/shaders/gui.layout b/src/shaders/gui.layout index cb24155..2555672 100644 --- a/src/shaders/gui.layout +++ b/src/shaders/gui.layout @@ -1,9 +1,9 @@ layout (rgba16f, set = 0, binding = 0) uniform image2D DrawImage; -layout (set = 0, binding = 1) uniform sampler SamplerNearest; - layout (set = 1, binding = 0) uniform texture2D SpriteAtlas; +layout (set = 1, binding = 1) uniform sampler SamplerNearest; + layout (push_constant) uniform Constants { mat4 projection; } PC;