gl_device: Implement interface and add uniform offset alignment
parent
97648f4841
commit
0032821864
@ -0,0 +1,27 @@
|
|||||||
|
// Copyright 2019 yuzu Emulator Project
|
||||||
|
// Licensed under GPLv2 or any later version
|
||||||
|
// Refer to the license.txt file included.
|
||||||
|
|
||||||
|
#include <cstddef>
|
||||||
|
#include <glad/glad.h>
|
||||||
|
|
||||||
|
#include "video_core/renderer_opengl/gl_device.h"
|
||||||
|
|
||||||
|
namespace OpenGL {
|
||||||
|
|
||||||
|
namespace {
|
||||||
|
template <typename T>
|
||||||
|
T GetInteger(GLenum pname) {
|
||||||
|
GLint temporary;
|
||||||
|
glGetIntegerv(pname, &temporary);
|
||||||
|
return static_cast<T>(temporary);
|
||||||
|
}
|
||||||
|
} // Anonymous namespace
|
||||||
|
|
||||||
|
Device::Device() = default;
|
||||||
|
|
||||||
|
void Device::Initialize() {
|
||||||
|
uniform_buffer_alignment = GetInteger<std::size_t>(GL_UNIFORM_BUFFER_OFFSET_ALIGNMENT);
|
||||||
|
}
|
||||||
|
|
||||||
|
} // namespace OpenGL
|
@ -0,0 +1,25 @@
|
|||||||
|
// Copyright 2019 yuzu Emulator Project
|
||||||
|
// Licensed under GPLv2 or any later version
|
||||||
|
// Refer to the license.txt file included.
|
||||||
|
|
||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include <cstddef>
|
||||||
|
|
||||||
|
namespace OpenGL {
|
||||||
|
|
||||||
|
class Device {
|
||||||
|
public:
|
||||||
|
Device();
|
||||||
|
|
||||||
|
void Initialize();
|
||||||
|
|
||||||
|
std::size_t GetUniformBufferAlignment() const {
|
||||||
|
return uniform_buffer_alignment;
|
||||||
|
}
|
||||||
|
|
||||||
|
private:
|
||||||
|
std::size_t uniform_buffer_alignment{};
|
||||||
|
};
|
||||||
|
|
||||||
|
} // namespace OpenGL
|
Loading…
Reference in New Issue