diff options
author | ReinUsesLisp <reinuseslisp@airmail.cc> | 2020-03-02 23:31:26 +0100 |
---|---|---|
committer | ReinUsesLisp <reinuseslisp@airmail.cc> | 2020-03-13 22:33:04 +0100 |
commit | 8e9f23f393763a6d76605206eeb20f6f8885d9a9 (patch) | |
tree | 35b28be3f345cd0223732b4803e13de40764d1dc /src/video_core/renderer_opengl/gl_rasterizer.h | |
parent | gl_shader_decompiler: Decorate output attributes with XFB layout (diff) | |
download | yuzu-8e9f23f393763a6d76605206eeb20f6f8885d9a9.tar yuzu-8e9f23f393763a6d76605206eeb20f6f8885d9a9.tar.gz yuzu-8e9f23f393763a6d76605206eeb20f6f8885d9a9.tar.bz2 yuzu-8e9f23f393763a6d76605206eeb20f6f8885d9a9.tar.lz yuzu-8e9f23f393763a6d76605206eeb20f6f8885d9a9.tar.xz yuzu-8e9f23f393763a6d76605206eeb20f6f8885d9a9.tar.zst yuzu-8e9f23f393763a6d76605206eeb20f6f8885d9a9.zip |
Diffstat (limited to '')
-rw-r--r-- | src/video_core/renderer_opengl/gl_rasterizer.h | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/src/video_core/renderer_opengl/gl_rasterizer.h b/src/video_core/renderer_opengl/gl_rasterizer.h index e6424f5d2..2d3be2437 100644 --- a/src/video_core/renderer_opengl/gl_rasterizer.h +++ b/src/video_core/renderer_opengl/gl_rasterizer.h @@ -168,9 +168,6 @@ private: /// Syncs the scissor test state to match the guest state void SyncScissorTest(); - /// Syncs the transform feedback state to match the guest state - void SyncTransformFeedback(); - /// Syncs the point state to match the guest state void SyncPointState(); @@ -192,6 +189,12 @@ private: /// Syncs the framebuffer sRGB state to match the guest state void SyncFramebufferSRGB(); + /// Begin a transform feedback + void BeginTransformFeedback(GLenum primitive_mode); + + /// End a transform feedback + void EndTransformFeedback(); + /// Check for extension that are not strictly required but are needed for correct emulation void CheckExtensions(); @@ -229,6 +232,11 @@ private: BindBuffersRangePushBuffer bind_ubo_pushbuffer{GL_UNIFORM_BUFFER}; BindBuffersRangePushBuffer bind_ssbo_pushbuffer{GL_SHADER_STORAGE_BUFFER}; + std::array<OGLBuffer, Tegra::Engines::Maxwell3D::Regs::NumTransformFeedbackBuffers> + transform_feedback_buffers; + std::bitset<Tegra::Engines::Maxwell3D::Regs::NumTransformFeedbackBuffers> + enabled_transform_feedback_buffers; + /// Number of commands queued to the OpenGL driver. Reseted on flush. std::size_t num_queued_commands = 0; |