diff options
author | ReinUsesLisp <reinuseslisp@airmail.cc> | 2019-11-29 00:11:03 +0100 |
---|---|---|
committer | ReinUsesLisp <reinuseslisp@airmail.cc> | 2019-11-29 00:11:03 +0100 |
commit | 4589582eaf9aa5a1d9bc4e74ed71b0bf7903a1d2 (patch) | |
tree | a2ac5e7712b859821c0925f212810ff7e26539e9 /src/video_core | |
parent | Merge pull request #3169 from lioncash/memory (diff) | |
download | yuzu-4589582eaf9aa5a1d9bc4e74ed71b0bf7903a1d2.tar yuzu-4589582eaf9aa5a1d9bc4e74ed71b0bf7903a1d2.tar.gz yuzu-4589582eaf9aa5a1d9bc4e74ed71b0bf7903a1d2.tar.bz2 yuzu-4589582eaf9aa5a1d9bc4e74ed71b0bf7903a1d2.tar.lz yuzu-4589582eaf9aa5a1d9bc4e74ed71b0bf7903a1d2.tar.xz yuzu-4589582eaf9aa5a1d9bc4e74ed71b0bf7903a1d2.tar.zst yuzu-4589582eaf9aa5a1d9bc4e74ed71b0bf7903a1d2.zip |
Diffstat (limited to 'src/video_core')
-rw-r--r-- | src/video_core/renderer_opengl/renderer_opengl.cpp | 19 | ||||
-rw-r--r-- | src/video_core/renderer_opengl/renderer_opengl.h | 14 |
2 files changed, 13 insertions, 20 deletions
diff --git a/src/video_core/renderer_opengl/renderer_opengl.cpp b/src/video_core/renderer_opengl/renderer_opengl.cpp index a57a564f7..69fd735bd 100644 --- a/src/video_core/renderer_opengl/renderer_opengl.cpp +++ b/src/video_core/renderer_opengl/renderer_opengl.cpp @@ -62,9 +62,7 @@ void main() { } )"; -/** - * Vertex structure that the drawn screen rectangles are composed of. - */ +/// Vertex structure that the drawn screen rectangles are composed of. struct ScreenRectVertex { ScreenRectVertex(GLfloat x, GLfloat y, GLfloat u, GLfloat v) { position[0] = x; @@ -138,9 +136,6 @@ void RendererOpenGL::SwapBuffers(const Tegra::FramebufferConfig* framebuffer) { prev_state.Apply(); } -/** - * Loads framebuffer from emulated memory into the active OpenGL texture. - */ void RendererOpenGL::LoadFBToScreenInfo(const Tegra::FramebufferConfig& framebuffer) { // Framebuffer orientation handling framebuffer_transform_flags = framebuffer.transform_flags; @@ -181,19 +176,12 @@ void RendererOpenGL::LoadFBToScreenInfo(const Tegra::FramebufferConfig& framebuf glPixelStorei(GL_UNPACK_ROW_LENGTH, 0); } -/** - * Fills active OpenGL texture with the given RGB color. Since the color is solid, the texture can - * be 1x1 but will stretch across whatever it's rendered on. - */ void RendererOpenGL::LoadColorToActiveGLTexture(u8 color_r, u8 color_g, u8 color_b, u8 color_a, const TextureInfo& texture) { const u8 framebuffer_data[4] = {color_a, color_b, color_g, color_r}; glClearTexImage(texture.resource.handle, 0, GL_RGBA, GL_UNSIGNED_BYTE, framebuffer_data); } -/** - * Initializes the OpenGL state and creates persistent objects. - */ void RendererOpenGL::InitOpenGLObjects() { glClearColor(Settings::values.bg_red, Settings::values.bg_green, Settings::values.bg_blue, 0.0f); @@ -351,9 +339,6 @@ void RendererOpenGL::DrawScreenTriangles(const ScreenInfo& screen_info, float x, state.Apply(); } -/** - * Draws the emulated screens to the emulator window. - */ void RendererOpenGL::DrawScreen(const Layout::FramebufferLayout& layout) { if (renderer_settings.set_background_color) { // Update background color before drawing @@ -381,7 +366,6 @@ void RendererOpenGL::DrawScreen(const Layout::FramebufferLayout& layout) { m_current_frame++; } -/// Updates the framerate void RendererOpenGL::UpdateFramerate() {} void RendererOpenGL::CaptureScreenshot() { @@ -495,7 +479,6 @@ bool RendererOpenGL::Init() { return true; } -/// Shutdown the renderer void RendererOpenGL::ShutDown() {} } // namespace OpenGL diff --git a/src/video_core/renderer_opengl/renderer_opengl.h b/src/video_core/renderer_opengl/renderer_opengl.h index cf26628ca..6bb620a31 100644 --- a/src/video_core/renderer_opengl/renderer_opengl.h +++ b/src/video_core/renderer_opengl/renderer_opengl.h @@ -59,21 +59,31 @@ public: void ShutDown() override; private: + /// Initializes the OpenGL state and creates persistent objects. void InitOpenGLObjects(); + void AddTelemetryFields(); + void CreateRasterizer(); void ConfigureFramebufferTexture(TextureInfo& texture, const Tegra::FramebufferConfig& framebuffer); + + /// Draws the emulated screens to the emulator window. void DrawScreen(const Layout::FramebufferLayout& layout); + void DrawScreenTriangles(const ScreenInfo& screen_info, float x, float y, float w, float h); + + /// Updates the framerate. void UpdateFramerate(); void CaptureScreenshot(); - // Loads framebuffer from emulated memory into the display information structure + /// Loads framebuffer from emulated memory into the active OpenGL texture. void LoadFBToScreenInfo(const Tegra::FramebufferConfig& framebuffer); - // Fills active OpenGL texture with the given RGBA color. + + /// Fills active OpenGL texture with the given RGB color.Since the color is solid, the texture + /// can be 1x1 but will stretch across whatever it's rendered on. void LoadColorToActiveGLTexture(u8 color_r, u8 color_g, u8 color_b, u8 color_a, const TextureInfo& texture); |