summaryrefslogtreecommitdiffstats
path: root/src/video_core/renderer_opengl/gl_state.h (unfollow)
Commit message (Collapse)AuthorFilesLines
2019-05-30gl_rasterizer: Move alpha testing to the OpenGL pipelineReinUsesLisp1-0/+7
Removes the alpha testing code from each fragment shader invocation.
2019-04-04gl_state: Rework to enable individual appliesReinUsesLisp1-22/+30
2019-01-30gl_state: Remove texture target trackingReinUsesLisp1-2/+0
2019-01-30gl_rasterizer_cache: Move swizzling to textures instead of stateReinUsesLisp1-10/+0
2019-01-09gl_rasterizer: Workaround Intel VAO DSA bugReinUsesLisp1-1/+3
There is a bug on Intel's blob driver where it fails to properly build a vertex array object if it's not bound even after creating it with glCreateVertexArrays. This workaround binds it after creating it to bypass the issue.
2019-01-06gl_rasterizer: Use DSA for vertex array objectsReinUsesLisp1-4/+0
2019-01-06gl_state: Drop uniform buffer state trackingReinUsesLisp1-1/+0
2018-11-27Implement depth clampRodolfo Bogado1-0/+6
2018-11-27Add support for Clip Distance enabled registerRodolfo Bogado1-1/+1
2018-11-27GPU States: Implement Polygon Offset. This is used in SMO all the time. (#1784)Marcos1-0/+10
* GPU States: Implement Polygon Offset. This is used in SMO all the time. * Clang Format fixes. * Initialize polygon_offset in the constructor.
2018-11-24Add support for clear_flags registerRodolfo Bogado1-4/+5
2018-11-18drop support for non separate alpha as it seems to cause issues in some gamesRodolfo Bogado1-1/+0
2018-11-17add AlphaToCoverage and AlphaToOneRodolfo Bogado1-0/+5
2018-11-17add support for fragment_color_clampRodolfo Bogado1-0/+4
2018-11-17fix viewport and scissor behaviorRodolfo Bogado1-10/+12
2018-11-13gl_state: Amend compilation warningsLioncash1-1/+1
Makes float -> integral conversions explicit via casts and also silences a sign conversion warning.
2018-11-11Improve state management by splitting some of the states id separated function to avoid a full apply overheadRodolfo Bogado1-0/+4
2018-11-05Add support to color mask to avoid issues in blending caused by wrong values in the alpha channel in some render targets.Rodolfo Bogado1-3/+5
2018-11-05Implement multi-target viewports and blendingRodolfo Bogado1-21/+31
2018-10-31Improve OpenGL state handlingRodolfo Bogado1-1/+12
2018-10-28Implement sRGB Support, including workarounds for nvidia driver issues and QT sRGB supportRodolfo Bogado1-1/+13
2018-10-26gl_rasterizer: Implement primitive restart.bunnei1-0/+5
2018-10-26gl_rasterizer: Implement depth range.bunnei1-3/+5
2018-09-28video_core: Implement point_size and add point state syncReinUsesLisp1-0/+4
2018-09-28gl_state: Pack sampler bindings into a single ARB_multi_bindReinUsesLisp1-1/+2
2018-09-22gl_state: Remove unused type aliasLioncash1-4/+0
This isn't used anywhere within the header, so we can remove it, along with the include that was previously necessary. This also uncovers an indirect include in the cpp file for the assertion macros.
2018-09-08gl_state: Keep track of texture target.bunnei1-3/+5
2018-08-23gl_state: Update to handle stencil front/back face separately.bunnei1-8/+10
2018-08-22renderer_opengl: Namespace OpenGL codeLioncash1-0/+4
Namespaces all OpenGL code under the OpenGL namespace. Prevents polluting the global namespace and allows clear distinction between other renderers' code in the future.
2018-08-21GLState: Allow enabling/disabling GL_COLOR_LOGIC_OP independently from blending.Subv1-1/+4
2018-08-12gl_state: Don't track constant buffer mappings.Markus Wick1-8/+0
2018-08-12gl_rasterizer: Use the stream buffer for constant buffers.Markus Wick1-0/+2
2018-08-08maxwell_3d: Use correct const buffer size and check bounds.bunnei1-1/+5
- Fixes mem corruption with Super Mario Odyssey and Pokkén Tournament DX.
2018-08-02gl_state: Make texture_units a std::arrayLioncash1-2/+3
Gets rid of the use of a raw C array.
2018-06-26gl_state: Fix state management for texture swizzle.bunnei1-1/+14
2018-06-26gl_state: Remove unused state management from 3DS.bunnei1-28/+0
2018-06-07GLState: Support changing the GL_TEXTURE_SWIZZLE parameter of each texture unit.Subv1-0/+6
2018-04-15GPU: Use the buffer hints from the shader decompiler to upload only the necessary const buffers for each shader stage.Subv1-1/+1
2018-04-15GPU: Allow configuring ssbos in the opengl state manager.Subv1-0/+6
2018-04-07GL: Rename PicaTexture to MaxwellTexture.Subv1-1/+1
2018-03-27gl_rasterizer: Use 32 texture units instead of 3.bunnei1-1/+1
2018-03-20gl_state: Sync latest version with Citra.bunnei1-8/+25
2017-08-21gl_rasterizer: add clipping plane z<=0 defined in PICAwwylele1-0/+3
2017-07-01gl_rasterizer: use texture buffer for proctex LUTwwylele1-5/+5
2017-06-22gl_rasterizer: use texture buffer for fog LUTwwylele1-1/+1
2017-06-21gl_rasterizer: manage texture ids in one placewwylele1-0/+23
2017-06-21gl_rasterizer/lighting: fix LUT interpolationwwylele1-2/+2
2017-05-20gl_rasterizer: implement procedural texturewwylele1-0/+20
2016-12-07OpenGL: Drop framebuffer completeness check.Markus Wick1-3/+0
This OpenGL call synchronize the worker thread of the nvidia blob. It can be verified on linux with the __GL_THREADED_OPTIMIZATIONS=1 environment variable. Those errors should not happen on tested drivers. It was used as a workaround for https://bugs.freedesktop.org/show_bug.cgi?id=94148
2016-09-18Sources: Run clang-format on everything.Emmanuel Gil Peyrot1-20/+20
2016-06-07OpenGL: Implement fogJannik Vogel1-0/+4
2016-05-12OpenGL: Support blend equationJannik Vogel1-0/+2
2016-04-30VideoCore: Run include-what-you-use and fix most includes.Emmanuel Gil Peyrot1-1/+0
2016-04-21HWRasterizer: Texture forwardingtfarley1-11/+16
2016-02-05renderer_opengl: Use textures for fragment shader LUTs instead of UBOs.bunnei1-0/+4
- Gets us LUT interpolation for free. - Some older Intel GPU drivers did not support the big UBOs needed to store the LUTs.
2015-12-05OpenGL: Add support for glFrontFace in the state trackerYuri Kunde Schlesner1-0/+1
2015-11-19FragShader: Use an UBO instead of several individual uniformsSubv1-0/+1
2015-10-22Initial implementation of fragment shader generation with caching.Subv1-0/+1
2015-09-03OpenGL: Add support for Sampler Objects to state trackerYuri Kunde Schlesner1-0/+2
2015-08-30Replace the previous OpenGL loader with a glad-generated 3.3 oneYuri Kunde Schlesner1-1/+1
The main advantage of switching to glad from glLoadGen is that, apart from being actively maintained, it supports a customizable entrypoint loader function, which makes it possible to also support OpenGL ES.
2015-08-20GLRasterizer: Implemented stencil testing in the hw renderer.Subv1-0/+3
2015-08-06OpenGL: Fix state tracking in situations with reused object handlesYuri Kunde Schlesner1-0/+6
If an OpenGL object is created, bound to a binding using the state tracker, and then destroyed, a newly created object can be assigned the same numeric handle by OpenGL. However, even though it is a new object, and thus needs to be bound to the binding again, the state tracker compared the current and previous handles and concluded that no change needed to be made, leading to failure to bind objects in certain cases. This manifested as broken text in VVVVVV, which this commit fixes along with similar texturing problems in other games.
2015-08-06OpenGL: Remove redundant texture.enable_2d field from OpenGLStateYuri Kunde Schlesner1-1/+0
All uses of this field where it's false can just set the texture id to 0 instead.
2015-06-09Implemented glColorMasktfarley1-0/+7
2015-05-31Pica: Implement LogicOp function.bunnei1-0/+2
2015-05-29Remove every trailing whitespace from the project (but externals).Emmanuel Gil Peyrot1-1/+1
2015-05-23gl_state: Remove unnecessary const specifier on ApplyLioncash1-1/+1
2015-05-23OpenGL renderertfarley1-0/+70