diff options
author | bunnei <bunneidev@gmail.com> | 2018-10-29 18:22:14 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-10-29 18:22:14 +0100 |
commit | 0270906dbf6cc4f3de0340ada974fcefb297ace1 (patch) | |
tree | 39b5222fb937ef8facb1997d6013836e8adb0675 /src/video_core/renderer_opengl/utils.cpp | |
parent | Merge pull request #1610 from slashiee/dxt1-alpha (diff) | |
parent | video_core: Move OpenGL specific utils to its renderer (diff) | |
download | yuzu-0270906dbf6cc4f3de0340ada974fcefb297ace1.tar yuzu-0270906dbf6cc4f3de0340ada974fcefb297ace1.tar.gz yuzu-0270906dbf6cc4f3de0340ada974fcefb297ace1.tar.bz2 yuzu-0270906dbf6cc4f3de0340ada974fcefb297ace1.tar.lz yuzu-0270906dbf6cc4f3de0340ada974fcefb297ace1.tar.xz yuzu-0270906dbf6cc4f3de0340ada974fcefb297ace1.tar.zst yuzu-0270906dbf6cc4f3de0340ada974fcefb297ace1.zip |
Diffstat (limited to 'src/video_core/renderer_opengl/utils.cpp')
-rw-r--r-- | src/video_core/renderer_opengl/utils.cpp | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/src/video_core/renderer_opengl/utils.cpp b/src/video_core/renderer_opengl/utils.cpp new file mode 100644 index 000000000..d84634cb3 --- /dev/null +++ b/src/video_core/renderer_opengl/utils.cpp @@ -0,0 +1,38 @@ +// Copyright 2014 Citra Emulator Project +// Licensed under GPLv2 or any later version +// Refer to the license.txt file included. + +#include <string> +#include <fmt/format.h> +#include <glad/glad.h> +#include "common/common_types.h" +#include "video_core/renderer_opengl/utils.h" + +namespace OpenGL { + +void LabelGLObject(GLenum identifier, GLuint handle, VAddr addr, std::string extra_info) { + if (!GLAD_GL_KHR_debug) { + return; // We don't need to throw an error as this is just for debugging + } + const std::string nice_addr = fmt::format("0x{:016x}", addr); + std::string object_label; + + if (extra_info.empty()) { + switch (identifier) { + case GL_TEXTURE: + object_label = "Texture@" + nice_addr; + break; + case GL_PROGRAM: + object_label = "Shader@" + nice_addr; + break; + default: + object_label = fmt::format("Object(0x{:x})@{}", identifier, nice_addr); + break; + } + } else { + object_label = extra_info + '@' + nice_addr; + } + glObjectLabel(identifier, handle, -1, static_cast<const GLchar*>(object_label.c_str())); +} + +} // namespace OpenGL
\ No newline at end of file |