update dear imgui from 1.91.9b to 1.92.2b

This commit is contained in:
Sven Balzer
2025-08-28 05:58:03 +02:00
parent ad651462df
commit 883e13cdf5
107 changed files with 10690 additions and 4643 deletions
+9 -10
View File
@@ -643,13 +643,13 @@ static void blit(char *dst, Sint32 dst_pitch, Sint32 dst_x, Sint32 dst_y, char *
static void imgui_tiles_draw_callback(const ImDrawList *parent_list, const ImDrawCmd *cmd) {
ImGui_ImplSDLGPU3_RenderState *render_state = (ImGui_ImplSDLGPU3_RenderState *)ImGui::GetPlatformIO().Renderer_RenderState;
SDL_BindGPUGraphicsPipeline(render_state->render_pass, gui_tile_graphics_pipeline);
SDL_BindGPUGraphicsPipeline(render_state->RenderPass, gui_tile_graphics_pipeline);
Uint32 tile_index = *(Uint32 *)cmd->UserCallbackData;
SDL_PushGPUFragmentUniformData(render_state->command_buffer, 0, &tile_index, sizeof(Uint32));
SDL_PushGPUFragmentUniformData(render_state->CommandBuffer, 0, &tile_index, sizeof(Uint32));
}
static bool SelectableTile(const char *label, bool selected, SDL_GPUTextureSamplerBinding *image, Uint32 tile_index, const ImVec2& image_size, const ImVec2& uv0 = ImVec2(0, 0), const ImVec2& uv1 = ImVec2(1, 1), Uint8 orientation = 0) {
static bool SelectableTile(const char *label, bool selected, SDL_GPUTexture *image, Uint32 tile_index, const ImVec2& image_size, const ImVec2& uv0 = ImVec2(0, 0), const ImVec2& uv1 = ImVec2(1, 1), Uint8 orientation = 0) {
const ImGuiContext *context = ImGui::GetCurrentContext();
const ImVec2 padding = context->Style.FramePadding;
@@ -1463,7 +1463,6 @@ int main(int argc, char **argv) {
};
pixel_sampler = SDL_CreateGPUSampler(device, &pixel_sampler_info);
SDL_GPUTextureSamplerBinding tile_atlas_texture_binding = { .texture = tile_textures_array, .sampler = pixel_sampler };
vertex_buffer = create_buffer(SDL_GPU_BUFFERUSAGE_VERTEX, sizeof(vertices), vertices, "vertex_buffer");
if (!vertex_buffer) {
@@ -1768,7 +1767,7 @@ int main(int argc, char **argv) {
if (i != 0)
SameLineOrWrap(ImVec2(32, 32));
if (SelectableTile("##tile", selected_tile == i, &tile_atlas_texture_binding, i, ImVec2(32, 32), uv0, uv1, SDL_max(selected_rotation, 0))) {
if (SelectableTile("##tile", selected_tile == i, tile_textures_array, i, ImVec2(32, 32), uv0, uv1, SDL_max(selected_rotation, 0))) {
selected_tile_kind = -1;
selected_tile = i;
}
@@ -1782,20 +1781,20 @@ int main(int argc, char **argv) {
ImVec2 uv0 = ImVec2(0, 0);
ImVec2 uv1 = ImVec2(1, 1);
if (SelectableTile("##None", selected_rotation == 0, &tile_atlas_texture_binding, selected_tile, ImVec2(32, 32), uv0, uv1, 0))
if (SelectableTile("##None", selected_rotation == 0, tile_textures_array, selected_tile, ImVec2(32, 32), uv0, uv1, 0))
selected_rotation = 0;
SameLineOrWrap(ImVec2(32, 32));
if (SelectableTile("##90", selected_rotation == 1, &tile_atlas_texture_binding, selected_tile, ImVec2(32, 32), uv0, uv1, 1))
if (SelectableTile("##90", selected_rotation == 1, tile_textures_array, selected_tile, ImVec2(32, 32), uv0, uv1, 1))
selected_rotation = 1;
SameLineOrWrap(ImVec2(32, 32));
if (SelectableTile("##180", selected_rotation == 2, &tile_atlas_texture_binding, selected_tile, ImVec2(32, 32), uv0, uv1, 2))
if (SelectableTile("##180", selected_rotation == 2, tile_textures_array, selected_tile, ImVec2(32, 32), uv0, uv1, 2))
selected_rotation = 2;
SameLineOrWrap(ImVec2(32, 32));
if (SelectableTile("##270", selected_rotation == 3, &tile_atlas_texture_binding, selected_tile, ImVec2(32, 32), uv0, uv1, 3))
if (SelectableTile("##270", selected_rotation == 3, tile_textures_array, selected_tile, ImVec2(32, 32), uv0, uv1, 3))
selected_rotation = 3;
if (ImGui::Selectable("Random", selected_rotation == -1))
@@ -2208,7 +2207,7 @@ int main(int argc, char **argv) {
ZoneScopedN("ImGui Render");
ImGui::Render();
ImDrawData *draw_data = ImGui::GetDrawData();
Imgui_ImplSDLGPU3_PrepareDrawData(draw_data, command_buffer);
ImGui_ImplSDLGPU3_PrepareDrawData(draw_data, command_buffer);
SDL_GPUColorTargetInfo imgui_color_target_info = {
.texture = swapchain_texture,