diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/video_core/renderer_opengl/gl_graphics_program.cpp | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/src/video_core/renderer_opengl/gl_graphics_program.cpp b/src/video_core/renderer_opengl/gl_graphics_program.cpp index 7c0bf7bc8..4ac026502 100644 --- a/src/video_core/renderer_opengl/gl_graphics_program.cpp +++ b/src/video_core/renderer_opengl/gl_graphics_program.cpp | |||
| @@ -240,6 +240,17 @@ void GraphicsProgram::Configure(bool is_indexed) { | |||
| 240 | buffer_cache.UpdateGraphicsBuffers(is_indexed); | 240 | buffer_cache.UpdateGraphicsBuffers(is_indexed); |
| 241 | buffer_cache.BindHostGeometryBuffers(is_indexed); | 241 | buffer_cache.BindHostGeometryBuffers(is_indexed); |
| 242 | 242 | ||
| 243 | // FIXME: Unhack this | ||
| 244 | if (assembly_programs[0].handle != 0) { | ||
| 245 | // TODO: State track this | ||
| 246 | glEnable(GL_VERTEX_PROGRAM_NV); | ||
| 247 | glEnable(GL_FRAGMENT_PROGRAM_NV); | ||
| 248 | glBindProgramARB(GL_VERTEX_PROGRAM_NV, assembly_programs[0].handle); | ||
| 249 | glBindProgramARB(GL_FRAGMENT_PROGRAM_NV, assembly_programs[4].handle); | ||
| 250 | program_manager.BindProgram(0); | ||
| 251 | } else { | ||
| 252 | program_manager.BindProgram(program.handle); | ||
| 253 | } | ||
| 243 | const ImageId* views_it{image_view_ids.data()}; | 254 | const ImageId* views_it{image_view_ids.data()}; |
| 244 | GLsizei texture_binding = 0; | 255 | GLsizei texture_binding = 0; |
| 245 | GLsizei image_binding = 0; | 256 | GLsizei image_binding = 0; |