mirror of
https://github.com/ciphervance/supercell-wx.git
synced 2025-10-30 18:50:05 +00:00
GL color buffer should be cleared at the start of the frame
This commit is contained in:
parent
8bd6838438
commit
37a850a778
4 changed files with 20 additions and 0 deletions
|
|
@ -136,6 +136,14 @@ void GlContext::Initialize()
|
|||
p->InitializeGL();
|
||||
}
|
||||
|
||||
void GlContext::StartFrame()
|
||||
{
|
||||
auto& gl = p->gl_;
|
||||
|
||||
gl.glClearColor(0.0f, 0.0f, 0.0f, 1.0f);
|
||||
gl.glClear(GL_COLOR_BUFFER_BIT);
|
||||
}
|
||||
|
||||
std::size_t GlContext::Impl::GetShaderKey(
|
||||
std::initializer_list<std::pair<GLenum, std::string>> shaders)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -38,6 +38,7 @@ public:
|
|||
GLuint GetTextureAtlas();
|
||||
|
||||
void Initialize();
|
||||
void StartFrame();
|
||||
|
||||
private:
|
||||
class Impl;
|
||||
|
|
|
|||
|
|
@ -1406,6 +1406,8 @@ void MapWidget::paintGL()
|
|||
|
||||
p->frameDraws_++;
|
||||
|
||||
p->context_->StartFrame();
|
||||
|
||||
// Handle hotkey updates
|
||||
p->HandleHotkeyUpdates();
|
||||
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
#include <scwx/qt/ui/imgui_debug_widget.hpp>
|
||||
#include <scwx/qt/gl/gl.hpp>
|
||||
#include <scwx/qt/manager/font_manager.hpp>
|
||||
#include <scwx/qt/model/imgui_context_model.hpp>
|
||||
|
||||
|
|
@ -59,6 +60,8 @@ public:
|
|||
|
||||
ImGuiContext* currentContext_;
|
||||
|
||||
gl::OpenGLFunctions gl_;
|
||||
|
||||
std::set<ImGuiContext*> renderedSet_ {};
|
||||
bool imGuiRendererInitialized_ {false};
|
||||
std::uint64_t imGuiFontsBuildCount_ {};
|
||||
|
|
@ -103,6 +106,9 @@ void ImGuiDebugWidget::initializeGL()
|
|||
{
|
||||
makeCurrent();
|
||||
|
||||
// Initialize OpenGL Functions
|
||||
p->gl_.initializeOpenGLFunctions();
|
||||
|
||||
// Initialize ImGui OpenGL3 backend
|
||||
ImGui::SetCurrentContext(p->context_);
|
||||
ImGui_ImplOpenGL3_Init();
|
||||
|
|
@ -113,6 +119,9 @@ void ImGuiDebugWidget::initializeGL()
|
|||
|
||||
void ImGuiDebugWidget::paintGL()
|
||||
{
|
||||
p->gl_.glClearColor(0.0f, 0.0f, 0.0f, 1.0f);
|
||||
p->gl_.glClear(GL_COLOR_BUFFER_BIT);
|
||||
|
||||
ImGui::SetCurrentContext(p->currentContext_);
|
||||
|
||||
// Lock ImGui font atlas prior to new ImGui frame
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue