mirror of
https://github.com/hrydgard/ppsspp.git
synced 2026-10-17 16:30:30 +02:00
Debug visualization for the Vulkan memory allocator. Shows some interesting behaviour.
This commit is contained in:
1 parent
2ae2dd7d40
commit
c60c8ed68a
18 files changed
+168
-15
No files matched your search
+13
-8
@@ -50,6 +50,7 @@
|
||||
#include "GPU/GPUState.h"
|
||||
#include "GPU/GPUInterface.h"
|
||||
#include "GPU/GLES/FramebufferManagerGLES.h"
|
||||
#include "GPU/Vulkan/DebugVisVulkan.h"
|
||||
#include "Core/HLE/sceCtrl.h"
|
||||
#include "Core/HLE/sceDisplay.h"
|
||||
#include "Core/HLE/sceSas.h"
|
||||
@@ -1179,9 +1180,10 @@ void EmuScreen::renderUI() {
|
||||
using namespace Draw;
|
||||
|
||||
DrawContext *thin3d = screenManager()->getDrawContext();
|
||||
UIContext *ctx = screenManager()->getUIContext();
|
||||
|
||||
// This sets up some important states but not the viewport.
|
||||
screenManager()->getUIContext()->Begin();
|
||||
ctx->Begin();
|
||||
|
||||
Viewport viewport;
|
||||
viewport.TopLeftX = 0;
|
||||
@@ -1192,11 +1194,10 @@ void EmuScreen::renderUI() {
|
||||
viewport.MinDepth = 0.0;
|
||||
thin3d->SetViewports(1, &viewport);
|
||||
|
||||
DrawBuffer *draw2d = screenManager()->getUIContext()->Draw();
|
||||
|
||||
DrawBuffer *draw2d = ctx->Draw();
|
||||
if (root_) {
|
||||
UI::LayoutViewHierarchy(*screenManager()->getUIContext(), root_);
|
||||
root_->Draw(*screenManager()->getUIContext());
|
||||
UI::LayoutViewHierarchy(*ctx, root_);
|
||||
root_->Draw(*ctx);
|
||||
}
|
||||
|
||||
if (g_Config.bShowDebugStats && !invalid_) {
|
||||
@@ -1208,16 +1209,20 @@ void EmuScreen::renderUI() {
|
||||
}
|
||||
|
||||
if (g_Config.iShowFPSCounter && !invalid_) {
|
||||
DrawFPS(draw2d, screenManager()->getUIContext()->GetBounds());
|
||||
DrawFPS(draw2d, ctx->GetBounds());
|
||||
}
|
||||
|
||||
if (g_Config.iGPUBackend == (int)GPUBackend::VULKAN && g_Config.bShowAllocatorDebug) {
|
||||
DrawAllocatorVis(ctx, gpu);
|
||||
}
|
||||
|
||||
#ifdef USE_PROFILER
|
||||
if (g_Config.bShowFrameProfiler && !invalid_) {
|
||||
DrawProfile(*screenManager()->getUIContext());
|
||||
DrawProfile(*ctx);
|
||||
}
|
||||
#endif
|
||||
|
||||
screenManager()->getUIContext()->End();
|
||||
ctx->End();
|
||||
}
|
||||
|
||||
void EmuScreen::autoLoad() {
|
||||
|
||||
Reference in new issue
Block a user