diff options
| author | Nic Gaffney <gaffney_nic@protonmail.com> | 2024-06-12 21:15:52 -0500 |
|---|---|---|
| committer | Nic Gaffney <gaffney_nic@protonmail.com> | 2024-06-12 21:15:52 -0500 |
| commit | 963fae202108acd0498349e872e4811fa6c6aba0 (patch) | |
| tree | 1a7d5b6ee837700819d8f6f5a2484342a0ab6ec1 /vendor/zgui/src/backend_glfw_dx12.zig | |
| parent | 6084001df845815efd9c0eb712acf4fd9311ce36 (diff) | |
| download | particle-sim-963fae202108acd0498349e872e4811fa6c6aba0.tar.gz | |
Added imgui for configuration
Diffstat (limited to 'vendor/zgui/src/backend_glfw_dx12.zig')
| -rw-r--r-- | vendor/zgui/src/backend_glfw_dx12.zig | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/vendor/zgui/src/backend_glfw_dx12.zig b/vendor/zgui/src/backend_glfw_dx12.zig new file mode 100644 index 0000000..48c63cb --- /dev/null +++ b/vendor/zgui/src/backend_glfw_dx12.zig @@ -0,0 +1,45 @@ +const gui = @import("gui.zig"); +const backend_glfw = @import("backend_glfw.zig"); +const backend_dx12 = @import("backend_dx12.zig"); + +pub fn init( + window: *const anyopaque, // zglfw.Window + device: *const anyopaque, // ID3D12Device + num_frames_in_flight: u32, + rtv_format: c_uint, // DXGI_FORMAT + cbv_srv_heap: *const anyopaque, // ID3D12DescriptorHeap + font_srv_cpu_desc_handle: backend_dx12.D3D12_CPU_DESCRIPTOR_HANDLE, + font_srv_gpu_desc_handle: backend_dx12.D3D12_GPU_DESCRIPTOR_HANDLE, +) void { + backend_glfw.init(window); + backend_dx12.init( + device, + num_frames_in_flight, + rtv_format, + cbv_srv_heap, + font_srv_cpu_desc_handle, + font_srv_gpu_desc_handle, + ); +} + +pub fn deinit() void { + backend_dx12.deinit(); + backend_glfw.deinit(); +} + +pub fn newFrame(fb_width: u32, fb_height: u32) void { + backend_glfw.newFrame(); + backend_dx12.newFrame(); + + gui.io.setDisplaySize(@as(f32, @floatFromInt(fb_width)), @as(f32, @floatFromInt(fb_height))); + gui.io.setDisplayFramebufferScale(1.0, 1.0); + + gui.newFrame(); +} + +pub fn draw( + graphics_command_list: *const anyopaque, // *ID3D12GraphicsCommandList +) void { + gui.render(); + backend_dx12.render(gui.getDrawData(), graphics_command_list); +} |
