aboutsummaryrefslogtreecommitdiff
path: root/src/video_core/renderer_opengl
AgeCommit message (Collapse)Author
2015-11-30PICA: Properly emulate 1-stage delay in the combiner bufferYuri Kunde Schlesner
This was discovered and verified by @fincs. The tev combiner buffer actually lags behind by one stage, meaning stage 1 reads the initial color, stage 2 reads stage 0's output, and so on. Fixes character portraits in Fire Emblem: Awakening and world textures in Zelda: ALBW. Closes #1140.
2015-11-25renderer_opengl: Fix uniform issues introduced with ↵bunnei
kemenaran/avoid-explicit-uniform-location.
2015-11-25Use regular uniform locationPierre de La Morinerie
The support for GL_ARB_explicit_uniform_location is not that good (53% according to http://feedback.wildfiregames.com/report/opengl/feature/GL_ARB_explicit_uniform_location). This fix the shader compilation on Intel HD 4000 (#1222).
2015-11-18FragShader: Use an UBO instead of several individual uniformsSubv
2015-10-21gl_shader_gen: Use explicit locations for vertex shader attributes.bunnei
2015-10-21gl_shader_gen: Optimize code for AppendAlphaTestCondition.bunnei
- Also add a comment to AppendColorCombiner.
2015-10-21gl_rasterizer: Define enum types for each vertex texcoord attribute.bunnei
2015-10-21gl_shader_gen: Various cleanups to shader generation.bunnei
2015-10-21gl_rasterizer: Use MMH3 hash for shader cache hey.bunnei
- Includes a check to confirm no hash collisions.
2015-10-21gl_shader_gen: Require explicit uniform locations.bunnei
- Fixes uniform issue on AMD.
2015-10-21gl_shader_gen: Rename 'o' to 'attr' in vertex/fragment shaders.bunnei
2015-10-21gl_shader_gen: AppendAlphaModifier default should be 0.0, not vec4(0.0).bunnei
2015-10-21gl_shader_gen: Fix bug where TEV stage outputs should be clamped.bunnei
2015-10-21gl_rasterizer: Add documentation to ShaderCacheKey.bunnei
2015-10-21gl_shader_gen: Add additional function documentation.bunnei
2015-10-21gl_shader_util: Cleanup header file + add docstring.bunnei
2015-10-21gl_shader_gen: Various cleanups + moved TEV stage generation to its own ↵bunnei
function.
2015-10-21renderer_opengl: Refactor shader generation/caching to be more organized + ↵bunnei
various cleanups.
2015-10-21gl_rasterizer: Move logic for creating ShaderCacheKey to a static function.bunnei
2015-10-21gl_shader_util: Use vec3 constants for AppendColorCombiner.bunnei
2015-10-21gl_rasterizer: Fix typo in uploading TEV const color uniforms.bunnei
2015-10-21gl_shader_util: Fix precision bug with alpha testing.bunnei
- Alpha testing is not done with float32 precision, this makes the HW renderer match the SW renderer.
2015-10-21Initial implementation of fragment shader generation with caching.Subv
2015-10-06Silence -Wsign-compare warnings.Rohit Nirmal
2015-09-29fix some xcode 7.0 warningsMartin Lindhe
2015-09-16general: Silence some warnings when using clangLioncash
2015-09-11video_core: Reorganize headersLioncash
2015-09-11video_core: Remove unnecessary includes from headersLioncash
2015-09-10Merge pull request #1133 from lioncash/emplace-backbunnei
gl_rasterizer: Replace push_back calls with emplace_back in AddTriangle
2015-09-10renderer_opengl: Remove unimplemented function declarationLioncash
2015-09-10gl_rasterizer: Replace push_back calls with emplace_back in AddTriangleLioncash
2015-09-03OpenGL: Use Sampler Objects to decouple sampler config from texturesYuri Kunde Schlesner
Fixes #978
2015-09-03OpenGL: Remove ugly and endian-unsafe color pointer castsYuri Kunde Schlesner
2015-09-03OpenGL: Add support for Sampler Objects to state trackerYuri Kunde Schlesner
2015-08-30Replace the previous OpenGL loader with a glad-generated 3.3 oneYuri Kunde Schlesner
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-29Merge pull request #1049 from Subv/stencilbunnei
Rasterizer: Corrected the stencil implementation.
2015-08-27gl_rasterizer_cache: Detect and ignore unnecessary texture flushes.bunnei
2015-08-24Integrate the MicroProfile profiling libraryYuri Kunde Schlesner
This brings goodies such as a configurable user interface and multi-threaded timeline view.
2015-08-24HWRenderer: Added a workaround for the Intel Windows driver bug that causes ↵Subv
glTexSubImage2D to not change the stencil buffer. Reported here https://communities.intel.com/message/324464
2015-08-21HWRasterizer: Implemented stencil ops 6 and 7.Subv
2015-08-21HWRasterizer: Implemented stencil op 1 (GL_ZERO)Subv
2015-08-20GLRasterizer: Implemented stencil testing in the hw renderer.Subv
2015-08-15Shader: Move shader code to its own subdirectory, "shader".bunnei
2015-08-15GPU: Refactor "VertexShader" namespace to "Shader".bunnei
- Also renames "vertex_shader.*" to "shader_interpreter.*"
2015-08-06OpenGL: Fix state tracking in situations with reused object handlesYuri Kunde Schlesner
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-05OpenGL: Remove redundant texture.enable_2d field from OpenGLStateYuri Kunde Schlesner
All uses of this field where it's false can just set the texture id to 0 instead.
2015-07-28OpenGL: Add a profiler category measuring framebuffer readbackYuri Kunde Schlesner
2015-07-26OpenGL: Make OpenGL object resource wrappers fully inlineYuri Kunde Schlesner
The functions are so simple that having them separate only bloats the code and hinders optimization.
2015-07-23Merge pull request #977 from yuriks/glenable-tex2dbunnei
GL Renderer: Remove erroneous glEnable(GL_TEXTURE_2D) calls
2015-07-22Rasterizer/GL: Set the border color when binding a texture.Subv