|
@@ -59,7 +59,7 @@ struct ImGui_ImplSDLGPU3_Data
|
|
|
SDL_GPUShader* VertexShader = nullptr;
|
|
|
SDL_GPUShader* FragmentShader = nullptr;
|
|
|
SDL_GPUGraphicsPipeline* Pipeline = nullptr;
|
|
|
- SDL_GPUSampler* TexSampler = nullptr;
|
|
|
+ SDL_GPUSampler* TexSamplerLinear = nullptr;
|
|
|
SDL_GPUTransferBuffer* TexTransferBuffer = nullptr;
|
|
|
uint32_t TexTransferBufferSize = 0;
|
|
|
|
|
@@ -85,7 +85,7 @@ static ImGui_ImplSDLGPU3_Data* ImGui_ImplSDLGPU3_GetBackendData()
|
|
|
static void ImGui_ImplSDLGPU3_SetupRenderState(ImDrawData* draw_data, ImGui_ImplSDLGPU3_RenderState* render_state, SDL_GPUGraphicsPipeline* pipeline, SDL_GPUCommandBuffer* command_buffer, SDL_GPURenderPass* render_pass, ImGui_ImplSDLGPU3_FrameData* fd, uint32_t fb_width, uint32_t fb_height)
|
|
|
{
|
|
|
ImGui_ImplSDLGPU3_Data* bd = ImGui_ImplSDLGPU3_GetBackendData();
|
|
|
- render_state->SamplerCurrent = bd->TexSampler;
|
|
|
+ render_state->SamplerCurrent = bd->TexSamplerLinear;
|
|
|
|
|
|
// Bind graphics pipeline
|
|
|
SDL_BindGPUGraphicsPipeline(render_pass, pipeline);
|
|
@@ -234,7 +234,7 @@ void ImGui_ImplSDLGPU3_RenderDrawData(ImDrawData* draw_data, SDL_GPUCommandBuffe
|
|
|
ImGuiPlatformIO& platform_io = ImGui::GetPlatformIO();
|
|
|
ImGui_ImplSDLGPU3_RenderState render_state;
|
|
|
render_state.Device = bd->InitInfo.Device;
|
|
|
- render_state.SamplerDefault = render_state.SamplerCurrent = bd->TexSampler;
|
|
|
+ render_state.SamplerDefault = render_state.SamplerCurrent = bd->TexSamplerLinear;
|
|
|
platform_io.Renderer_RenderState = &render_state;
|
|
|
|
|
|
ImGui_ImplSDLGPU3_SetupRenderState(draw_data, &render_state, pipeline, command_buffer, render_pass, fd, fb_width, fb_height);
|
|
@@ -339,7 +339,7 @@ void ImGui_ImplSDLGPU3_UpdateTexture(ImTextureData* tex)
|
|
|
texture_info.sample_count = SDL_GPU_SAMPLECOUNT_1;
|
|
|
|
|
|
SDL_GPUTexture* raw_tex = SDL_CreateGPUTexture(v->Device, &texture_info);
|
|
|
- IM_ASSERT(raw_tex != nullptr && "Failed to create font texture, call SDL_GetError() for more info");
|
|
|
+ IM_ASSERT(raw_tex != nullptr && "Failed to create texture, call SDL_GetError() for more info");
|
|
|
|
|
|
// Store identifiers
|
|
|
tex->SetTexID((ImTextureID)(intptr_t)raw_tex);
|
|
@@ -369,7 +369,7 @@ void ImGui_ImplSDLGPU3_UpdateTexture(ImTextureData* tex)
|
|
|
transferbuffer_info.size = upload_size + 1024;
|
|
|
bd->TexTransferBufferSize = upload_size + 1024;
|
|
|
bd->TexTransferBuffer = SDL_CreateGPUTransferBuffer(v->Device, &transferbuffer_info);
|
|
|
- IM_ASSERT(bd->TexTransferBuffer != nullptr && "Failed to create font transfer buffer, call SDL_GetError() for more information");
|
|
|
+ IM_ASSERT(bd->TexTransferBuffer != nullptr && "Failed to create transfer buffer, call SDL_GetError() for more information");
|
|
|
}
|
|
|
|
|
|
// Copy to transfer buffer
|
|
@@ -558,7 +558,7 @@ void ImGui_ImplSDLGPU3_CreateDeviceObjects()
|
|
|
|
|
|
ImGui_ImplSDLGPU3_DestroyDeviceObjects();
|
|
|
|
|
|
- if (bd->TexSampler == nullptr)
|
|
|
+ if (bd->TexSamplerLinear == nullptr)
|
|
|
{
|
|
|
// Bilinear sampling is required by default. Set 'io.Fonts->Flags |= ImFontAtlasFlags_NoBakedLines' or 'style.AntiAliasedLinesUseTex = false' to allow point/nearest sampling.
|
|
|
SDL_GPUSamplerCreateInfo sampler_info = {};
|
|
@@ -575,8 +575,8 @@ void ImGui_ImplSDLGPU3_CreateDeviceObjects()
|
|
|
sampler_info.max_anisotropy = 1.0f;
|
|
|
sampler_info.enable_compare = false;
|
|
|
|
|
|
- bd->TexSampler = SDL_CreateGPUSampler(v->Device, &sampler_info);
|
|
|
- IM_ASSERT(bd->TexSampler != nullptr && "Failed to create font sampler, call SDL_GetError() for more information");
|
|
|
+ bd->TexSamplerLinear = SDL_CreateGPUSampler(v->Device, &sampler_info);
|
|
|
+ IM_ASSERT(bd->TexSamplerLinear != nullptr && "Failed to create sampler, call SDL_GetError() for more information");
|
|
|
}
|
|
|
|
|
|
ImGui_ImplSDLGPU3_CreateGraphicsPipeline();
|
|
@@ -611,7 +611,7 @@ void ImGui_ImplSDLGPU3_DestroyDeviceObjects()
|
|
|
if (bd->TexTransferBuffer) { SDL_ReleaseGPUTransferBuffer(v->Device, bd->TexTransferBuffer); bd->TexTransferBuffer = nullptr; }
|
|
|
if (bd->VertexShader) { SDL_ReleaseGPUShader(v->Device, bd->VertexShader); bd->VertexShader = nullptr; }
|
|
|
if (bd->FragmentShader) { SDL_ReleaseGPUShader(v->Device, bd->FragmentShader); bd->FragmentShader = nullptr; }
|
|
|
- if (bd->TexSampler) { SDL_ReleaseGPUSampler(v->Device, bd->TexSampler); bd->TexSampler = nullptr; }
|
|
|
+ if (bd->TexSamplerLinear) { SDL_ReleaseGPUSampler(v->Device, bd->TexSamplerLinear); bd->TexSamplerLinear = nullptr; }
|
|
|
if (bd->Pipeline) { SDL_ReleaseGPUGraphicsPipeline(v->Device, bd->Pipeline); bd->Pipeline = nullptr; }
|
|
|
}
|
|
|
|
|
@@ -654,7 +654,7 @@ void ImGui_ImplSDLGPU3_NewFrame()
|
|
|
ImGui_ImplSDLGPU3_Data* bd = ImGui_ImplSDLGPU3_GetBackendData();
|
|
|
IM_ASSERT(bd != nullptr && "Context or backend not initialized! Did you call ImGui_ImplSDLGPU3_Init()?");
|
|
|
|
|
|
- if (!bd->TexSampler)
|
|
|
+ if (!bd->TexSamplerLinear)
|
|
|
ImGui_ImplSDLGPU3_CreateDeviceObjects();
|
|
|
}
|
|
|
|