summaryrefslogtreecommitdiffstats
path: root/src/video_core/renderer_opengl/gl_rasterizer.h
diff options
context:
space:
mode:
authorSubv <subv2112@gmail.com>2018-06-06 19:58:16 +0200
committerSubv <subv2112@gmail.com>2018-06-06 19:58:16 +0200
commitdbfc39d21492dd1346b0e0d7ab5a2dbd989432bd (patch)
treefa95ce57c5f16a01b766efe2b49ed90888800e3d /src/video_core/renderer_opengl/gl_rasterizer.h
parentnvdrv/devices/nvidia_ctrl_gpu : add IoctlCommands with their params (#524) (diff)
downloadyuzu-dbfc39d21492dd1346b0e0d7ab5a2dbd989432bd.tar
yuzu-dbfc39d21492dd1346b0e0d7ab5a2dbd989432bd.tar.gz
yuzu-dbfc39d21492dd1346b0e0d7ab5a2dbd989432bd.tar.bz2
yuzu-dbfc39d21492dd1346b0e0d7ab5a2dbd989432bd.tar.lz
yuzu-dbfc39d21492dd1346b0e0d7ab5a2dbd989432bd.tar.xz
yuzu-dbfc39d21492dd1346b0e0d7ab5a2dbd989432bd.tar.zst
yuzu-dbfc39d21492dd1346b0e0d7ab5a2dbd989432bd.zip
Diffstat (limited to '')
-rw-r--r--src/video_core/renderer_opengl/gl_rasterizer.h14
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 4b915c76a..d3f0558ed 100644
--- a/src/video_core/renderer_opengl/gl_rasterizer.h
+++ b/src/video_core/renderer_opengl/gl_rasterizer.h
@@ -80,9 +80,6 @@ private:
void BindFramebufferSurfaces(const Surface& color_surface, const Surface& depth_surface,
bool has_stencil);
- /// Binds the required textures to OpenGL before drawing a batch.
- void BindTextures();
-
/*
* Configures the current constbuffers to use for the draw command.
* @param stage The shader stage to configure buffers for.
@@ -95,6 +92,17 @@ private:
u32 current_bindpoint,
const std::vector<GLShader::ConstBufferEntry>& entries);
+ /*
+ * Configures the current textures to use for the draw command.
+ * @param stage The shader stage to configure textures for.
+ * @param program The OpenGL program object that contains the specified stage.
+ * @param current_unit The offset at which to start counting unused texture units.
+ * @param entries Vector describing the textures that are actually used in the guest shader.
+ * @returns The next available bindpoint for use in the next shader stage.
+ */
+ u32 SetupTextures(Tegra::Engines::Maxwell3D::Regs::ShaderStage stage, GLuint program,
+ u32 current_unit, const std::vector<GLShader::SamplerEntry>& entries);
+
/// Syncs the viewport to match the guest state
void SyncViewport(const MathUtil::Rectangle<u32>& surfaces_rect, u16 res_scale);