summaryrefslogtreecommitdiffstats
path: root/src/video_core/renderer_opengl/gl_rasterizer.h (unfollow)
Commit message (Collapse)AuthorFilesLines
2019-04-14gl_shader_decompiler: Use variable AOFFI on supported hardwareReinUsesLisp1-3/+1
2019-04-14shader_ir: Implement STG, keep track of global memory usage and flushReinUsesLisp1-4/+0
2019-04-10gl_device: Implement interface and add uniform offset alignmentReinUsesLisp1-1/+3
2019-04-08Simplify ConstBufferAccessorFernando Sahmkow1-3/+0
2019-04-08Implement Const Buffer AccessorFernando Sahmkow1-0/+3
2019-04-06gl_rasterizer: Use ARB_multi_bind to update SSBOsReinUsesLisp1-0/+1
2019-04-06gl_rasterizer: Use ARB_multi_bind to update UBOs across stagesReinUsesLisp1-0/+3
2019-04-04video_core/renderer_opengl: Remove unnecessary includesLioncash1-5/+0
Quite a few unused includes have built up over time, particularly on core/memory.h. Removing these includes means the source files including those files will no longer need to be rebuilt if they're changed, making compilation slightly faster in this scenario.
2019-04-02gl_sampler_cache: Port sampler cache to OpenGLReinUsesLisp1-30/+2
2019-03-27gl_rasterizer: Remove unused reference member variable from RasterizerOpenGLLioncash1-3/+1
This member variable is no longer being used, so it can be removed, removing a dependency on EmuWindow from the rasterizer's interface"
2019-03-15gpu: Use host address for caching instead of guest address.bunnei1-4/+4
2019-03-11gl_rasterizer: Use system instance passed from argumentReinUsesLisp1-0/+1
2019-03-09gl_rasterizer: Encapsulate sampler queries into methodsReinUsesLisp1-2/+3
2019-02-27common/math_util: Move contents into the Common namespaceLioncash1-2/+2
These types are within the common library, so they should be within the Common namespace.
2019-02-07gl_rasterizer: Implement a more accurate fermi 2D copy.bunnei1-1/+3
- This is a blit, use the blit registers.
2019-02-07gl_shader_cache: Link loading screen with disk shader cache loadReinUsesLisp1-1/+3
2019-02-07gl_shader_disk_cache: Pass core system as argument and guard against games without title idsReinUsesLisp1-1/+6
2019-02-07rasterizer_interface: Add disk cache entry for the rasterizerReinUsesLisp1-0/+1
2019-02-01rasterizer_interface: Remove unused AccelerateFill operationReinUsesLisp1-1/+0
2019-01-30gl_shader_cache: Use explicit bindingsReinUsesLisp1-29/+12
2019-01-30gl_rasterizer: Implement global memory managementReinUsesLisp1-0/+10
2019-01-30gl_rasterizer: Workaround invalid zeta clearsReinUsesLisp1-3/+6
Some games (like Xenoblade Chronicles 2) clear both depth and stencil buffers while there's a depth-only texture attached (e.g. D16 Unorm). This commit reads the zeta format of the bound surface on ConfigureFramebuffers and returns if depth and/or stencil attachments were set. This is ignored on DrawArrays but on Clear it's used to just clear those attachments, bypassing an OpenGL error.
2019-01-08gl_global_cache: Add dummy global cache managerReinUsesLisp1-2/+8
2019-01-07gl_rasterizer: Skip framebuffer configuration if rendertargets have not been changedReinUsesLisp1-0/+18
2019-01-06gl_rasterizer: Use DSA for vertex array objectsReinUsesLisp1-2/+4
2018-11-29gl_rasterizer: Enable clip distances when set in register and in shaderReinUsesLisp1-1/+2
2018-11-29gl_rasterizer: Implement a framebuffer cacheReinUsesLisp1-1/+5
2018-11-29gl_rasterizer: Remove unused struct declarationsReinUsesLisp1-14/+0
2018-11-29gl_rasterizer: Remove extension booleansReinUsesLisp1-3/+0
2018-11-27Implement depth clampRodolfo Bogado1-0/+4
2018-11-27GPU States: Implement Polygon Offset. This is used in SMO all the time. (#1784)Marcos1-0/+3
* 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-14/+15
2018-11-21Removed pre 4.3 ARB extensionsFernandoS271-2/+0
2018-11-17fix sampler configuration, thanks to Marcos for his investigationRodolfo Bogado1-1/+5
2018-11-17add AlphaToCoverage and AlphaToOneRodolfo Bogado1-0/+3
2018-11-17add support for fragment_color_clampRodolfo Bogado1-0/+3
2018-11-11Improve state management by splitting some of the states id separated function to avoid a full apply overheadRodolfo Bogado1-3/+3
2018-11-11set sampler max lod, min lod, lod bias and max anisotropyRodolfo Bogado1-1/+1
2018-11-06gl_rasterizer: Split VAO and VB setup functions.Markus Wick1-1/+2
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-0/+3
2018-11-05Implement multi-target viewports and blendingRodolfo Bogado1-4/+1
2018-10-30global: Use std::optional instead of boost::optional (#1578)Frederic L1-2/+2
* get rid of boost::optional * Remove optional references * Use std::reference_wrapper for optional references * Fix clang format * Fix clang format part 2 * Adressed feedback * Fix clang format and MacOS build
2018-10-29Implement Mip FilterFernandoS271-0/+1
2018-10-26gl_rasterizer: Implement primitive restart.bunnei1-0/+3
2018-10-26gl_rasterizer: Implement depth range.bunnei1-5/+2
2018-10-22Assert that multiple render targets are not set while alpha testingFernandoS271-0/+3
2018-10-22Use standard UBO and fix/stylize the codeFernandoS271-3/+0
2018-10-22Remove SyncAlphaTest and clang formatFernandoS271-3/+1
2018-10-22Implemented Alpha TestingFernandoS271-0/+2
2018-10-09Assert Scissor testsFernandoS271-0/+3
2018-10-07gl_shader_decompiler: Implement geometry shadersReinUsesLisp1-3/+3
2018-10-06Implemented Depth Compare and Shadow SamplersFernandoS271-0/+2
2018-10-06gl_rasterizer: Add rasterizer cache code to handle accerated fermi copies.bunnei1-2/+2
2018-10-04gl_rasterizer: Implement quads topologyReinUsesLisp1-0/+7
2018-09-28video_core: Implement point_size and add point state syncReinUsesLisp1-0/+3
2018-09-28gl_state: Pack sampler bindings into a single ARB_multi_bindReinUsesLisp1-1/+1
2018-09-26video_core: Add asserts for CS, TFB and alpha testingReinUsesLisp1-0/+6
Add asserts for compute shader dispatching, transform feedback being enabled and alpha testing. These have in common that they'll probably break rendering without logging.
2018-09-15Port #4182 from Citra: "Prefix all size_t with std::"fearlessTobi1-4/+4
2018-09-13Use ARB_multi_bind for uniform buffers (#1287)ReinUsesLisp1-0/+1
* gl_rasterizer: use ARB_multi_bind for uniform buffers * address feedback
2018-09-10rasterizer: Drop unused handler.Markus Wick1-1/+0
This virtual function is called in a very hot spot, and it does nothing. If this kind of feature is required, please be more specific and add callbacks in the switch statement within Maxwell3D::WriteReg. There is no point in having another switch statement within the rasterizer.
2018-09-10gl_rasterizer: Implement clear for non-zero render targets.bunnei1-2/+11
- Several misc. changes to ConfigureFramebuffers in support of this.
2018-09-10gl_rasterizer: Implement multiple color attachments.bunnei1-9/+3
2018-09-08gl_rasterizer: Implement texture wrap mode p.bunnei1-0/+1
2018-09-05gl_rasterizer: Implement a VAO cache.Markus Wick1-3/+5
This patch caches VAO objects instead of re-emiting all pointers per draw call. Configuring this pointers is known as a fast task, but it yields too many GL calls. So for better performance, just bind the VAO instead of 16 pointers.
2018-09-05renderer_opengl: Implement a buffer cache.Markus Wick1-12/+7
The idea of this cache is to avoid redundant uploads. So we are going to cache the uploaded buffers within the stream_buffer and just reuse the old pointers. The next step is to implement a VBO cache on GPU memory, but for now, I want to check the overhead of the cache management. Fetching the buffer over PCI-E should be quite fast.
2018-08-31gl_renderer: Cache textures, framebuffers, and shaders based on CPU address.bunnei1-3/+3
2018-08-31gl_rasterizer: Fix issues with the rasterizer cache.bunnei1-0/+8
- Use a single cached page map. - Fix calculation of ending page.
2018-08-28renderer_opengl: Implement a new shader cache.bunnei1-8/+7
2018-08-23gl_rasterizer: Implement stencil test.bunnei1-0/+3
- Used by Splatoon 2.
2018-08-22renderer_opengl: Namespace OpenGL codeLioncash1-2/+6
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-21GPU: Implemented the logic op functionality of the GPU.Subv1-0/+3
This will ASSERT if blending is enabled at the same time as logic ops.
2018-08-21rasterizer_interface: Remove ScreenInfo from AccelerateDraw()'s signatureLioncash1-3/+5
This is an OpenGL renderer-specific data type. Given that, this type shouldn't be used within the base interface for the rasterizer. Instead, we can pass this information to the rasterizer via reference.
2018-08-20Rasterizer: Don't attempt to copy over the old texture's data when doing a format reinterpretation if we're only going to clear the framebuffer.Subv1-1/+2
2018-08-12gl_rasterizer: Use a shared helper to upload from CPU memory.Markus Wick1-0/+4
2018-08-12gl_rasterizer: Use the stream buffer for constant buffers.Markus Wick1-6/+5
2018-08-12gl_rasterizer: Use the streaming buffer itself for the constant buffer.Markus Wick1-2/+1
Don't emut copies, especially not for data, which is used once. They just end in a huge GPU overhead.
2018-08-12gl_rasterizer: Use a helper for aligning the buffer.Markus Wick1-1/+3
2018-08-12Update the stream_buffer helper from Citra.Markus Wick1-2/+1
Please see https://github.com/citra-emu/citra/pull/3666 for more details.
2018-08-12core: Namespace EmuWindowLioncash1-3/+6
Gets the class out of the global namespace.
2018-08-02video_core: Make global EmuWindow instance part of the base renderer classLioncash1-1/+4
Makes the global a member of the RendererBase class. We also change this to be a reference. Passing any form of null pointer to these functions is incorrect entirely, especially given the code itself assumes that the pointer would always be in a valid state. This also makes it easier to follow the lifecycle of instances being used, as we explicitly interact the renderer with the rasterizer, rather than it just operating on a global pointer.
2018-07-24gl_rasterizer: Use in-class member initializers where applicableLioncash1-5/+5
We can just assign to the members directly in these cases.
2018-07-24gl_rasterizer: Implement texture border color.bunnei1-4/+1
2018-07-04GPU: Only configure the used framebuffers during clear.Subv1-1/+1
Don't try to configure the color buffer if it is not being cleared, it may not be completely valid at this point.
2018-07-03GPU: Factor out the framebuffer configuration code for both Clear and Draw commands.Subv1-0/+5
2018-07-03GPU: Bind and clear the render target when the CLEAR_BUFFERS register is written to.Subv1-0/+1
2018-07-02GPU: Set up the depth test state on every draw.Subv1-0/+3
2018-06-27gl_rasterizer_cache: Remove Citra's rasterizer cache, always load/flush surfaces.bunnei1-1/+1
2018-06-27gl_rasterizer: Workaround for when exceeding max UBO size.bunnei1-1/+1
2018-06-10Rasterizer: Use UBOs instead of SSBOs for uploading const buffers.Subv1-0/+5
This should help a bit with GPU performance once we're GPU-bound.
2018-06-09GPU: Synchronize the blend state on every draw call.Subv1-8/+2
Only independent blending on render target 0 is implemented for now. This fixes the elongated squids in Splatoon 2's boot screen.
2018-06-06GPU: Implement sampling multiple textures in the generated glsl shaders.Subv1-3/+11
All tested games that use a single texture show no regression. Only Texture2D textures are supported right now, each shader gets its own "tex_fs/vs/gs" sampler array to maintain independent textures between shader stages, the textures themselves are reused if possible.
2018-05-19GLRenderer: Remove unused hw_vao_enabled_attributes variable.Subv1-1/+0
2018-05-19GLRenderer: Remove unused vertex buffer and increase the size of the stream buffer to 128 MB.Subv1-5/+2
The stream buffer is where all the vertex data is copied, some games require this to be much bigger than the 4 MB we used to have.
2018-04-25gl_rasterizer_cache: Update to be based on GPU addresses, not CPU addresses.bunnei1-3/+4
2018-04-23GPU: Support multiple enabled vertex arrays.Subv1-3/+3
The vertex arrays will be copied to the stream buffer one after the other, and the attributes will be set using the ARB_vertex_attrib_binding extension. yuzu now thus requires OpenGL 4.3 or the ARB_vertex_attrib_binding extension.
2018-04-21opengl: Remove unnecessary header inclusionsLioncash1-5/+0
2018-04-18renderer_opengl: Implement BlendEquation and BlendFunc.bunnei1-1/+1
2018-04-17gl_rasterizer: Implement indexed vertex mode.bunnei1-1/+0
2018-04-15GPU: Use the same buffer names in the generated GLSL and the buffer uploading code.Subv1-3/+2
2018-04-15GPU: Don't use explicit binding points when uploading the constbuffers to opengl.Subv1-2/+11
The bindpoints will now be dynamically calculated based on the number of buffers used by the previous shader stage.
2018-04-15GPU: Use the buffer hints from the shader decompiler to upload only the necessary const buffers for each shader stage.Subv1-1/+2
2018-04-15GPU: Upload the entirety of each constbuffer for each shader stage as SSBOs.Subv1-1/+6
We're going to need the shader generator to give us a mapping of the actual used const buffers to properly bind them to the shader.
2018-04-15GPU: Allow configuring ssbos in the opengl state manager.Subv1-0/+2
2018-04-15shaders: Add NumTextureSamplers const, remove unused #pragma.bunnei1-1/+1
2018-04-14gl_rasterizer: Generate shaders and upload uniforms.bunnei1-4/+3
2018-04-14gl_rasterizer: Use shader program manager, remove test shader.bunnei1-53/+4
2018-04-14renderer_opengl: Use OGLProgram instead of OGLShader.bunnei1-1/+1
2018-04-07GL: Set up the textures used for each draw call.Subv1-0/+3
Each Maxwell shader stage can have an arbitrary number of textures, but we're limited to a certain number in OpenGL. We try to only use the minimum amount of host textures by not keeping a 1:1 relation between guest texture ids and host texture ids, ie, guest texture id 8 can be host texture id 0 if it's the only texture used in the guest shader program. This mapping will have to be passed to the shader decompiler so it can rewrite the texture accesses.
2018-04-07GL: Ported the SamplerInfo struct from citra.Subv1-1/+20
2018-03-27gl_rasterizer: Move code to bind framebuffer surfaces before draw to its own function.bunnei1-0/+4
2018-03-27gl_rasterizer: Add a SyncViewport method.bunnei1-0/+3
2018-03-27rasterizer: Rename DrawTriangles to DrawArrays.bunnei1-1/+1
2018-03-27gl_rasterizer: Use 32 texture units instead of 3.bunnei1-1/+1
2018-03-23rasterizer: Flush and invalidate regions should be 64-bit.bunnei1-3/+3
2018-03-23video_core: Remove usage of PAddr and replace with VAddr.bunnei1-4/+4
2018-03-23video_core: Move FramebufferInfo to FramebufferConfig in GPU.bunnei1-2/+2
2018-03-23gl_rasterizer: Add a simple passthrough shader in lieu of shader generation.bunnei1-2/+12
2018-03-20renderer_gl: Port boilerplate rasterizer code over from Citra.bunnei1-0/+162
2018-01-13Remove references to PICA and rasterizers in video_coreJames Rowe1-316/+0
2018-01-01core/video_core: Fix a bunch of u64 -> u32 warnings.bunnei1-2/+2
2017-08-25gl_rasterizer: implement custom clip planewwylele1-1/+8
2017-07-01gl_rasterizer: use texture buffer for proctex LUTwwylele1-0/+5
2017-06-22gl_rasterizer: use texture buffer for fog LUTwwylele1-1/+2
2017-06-21gl_rasterizer/lighting: fix LUT interpolationwwylele1-3/+4
2017-05-30gl_rasterizer: sync spot light statuswwylele1-1/+5
2017-05-20gl_rasterizer: implement procedural texturewwylele1-1/+34
2017-04-17OpenGL: Move PicaShaderConfig to gl_shader_gen.hYuri Kunde Schlesner1-199/+2
Also move the implementation of CurrentConfig to the cpp file.
2017-02-09VideoCore: Split regs.h inclusionsYuri Kunde Schlesner1-1/+4
2017-02-04VideoCore: Move Regs to its own fileYuri Kunde Schlesner1-1/+1
2017-02-04VideoCore: Split lighting regs from Regs structYuri Kunde Schlesner1-4/+4
2017-02-04VideoCore: Split framebuffer regs from Regs structYuri Kunde Schlesner1-4/+4
2017-02-04VideoCore: Split texturing regs from Regs structYuri Kunde Schlesner1-12/+13
2017-02-04VideoCore: Split rasterizer regs from Regs structYuri Kunde Schlesner1-4/+4
2017-01-30VideoCore: Change misleading register namesYuri Kunde Schlesner1-1/+1
A few registers had names such as "count" or "number" when they actually contained the maximum (that is, count - 1). This can easily lead to hard to notice off by one errors.
2017-01-23video_core: fix gl_rasterizer warning on MSVCKloen1-1/+1
2016-09-30OpenGL: Take cached viewport sub-rect into account for scissorYuri Kunde Schlesner1-3/+0
Fixes #1938
2016-09-29rasterizer: separate TextureCopy from DisplayTransferwwylele1-0/+1
2016-09-21Remove empty newlines in #include blocks.Emmanuel Gil Peyrot1-4/+0
This makes clang-format useful on those. Also add a bunch of forgotten transitive includes, which otherwise prevented compilation.
2016-09-19Manually tweak source formatting and then re-run clang-formatYuri Kunde Schlesner1-6/+3
2016-09-18Sources: Run clang-format on everything.Emmanuel Gil Peyrot1-21/+29
2016-06-28OpenGL: Add scaled resolution support to scissorYuri Kunde Schlesner1-1/+2
2016-06-28PICA: Scissor fixes and cleanupsYuri Kunde Schlesner1-4/+4
2016-06-28PICA: Implement scissor testSubv1-1/+11
2016-06-07OpenGL: Implement fogJannik Vogel1-2/+15
2016-06-07OpenGL: Avoid undefined behaviour for UNIFORM_BLOCK_DATA_SIZEJannik Vogel1-4/+6
2016-05-23Pica: Name LightSrc.config registerJannik Vogel1-2/+2
2016-05-23Pica: Name lighting.config0 and .config1 registersJannik Vogel1-12/+12
2016-05-23OpenGL: Use uniforms for dist_atten_bias and dist_atten_scaleJannik Vogel1-5/+9
2016-05-14OpenGL: Only update depth uniforms if the depth changedJannik Vogel1-2/+5
2016-05-14OpenGL: value-initialize variables which cause uninitialised access otherwiseJannik Vogel1-2/+2
2016-05-11OpenGL: Implement texture type 3Jannik Vogel1-0/+5
2016-05-10gl_rasterizer: Fix compilation for debug buildsLioncash1-1/+1
2016-05-10OpenGL: Implement W-Buffers and fix depth-mappingJannik Vogel1-0/+5
2016-05-03Pica: Use a union for PicaShaderConfigJannik Vogel1-87/+97
2016-05-03Pica: Add TevStageConfigRaw to PicaShaderConfig (MSVC workaround)Jannik Vogel1-1/+22
2016-05-03Pica: Make PicaShaderConfig trivially_copyable and clear it before useJannik Vogel1-21/+28
2016-05-03OpenGL: Don't copy const_color (Reverts #1745)Jannik Vogel1-2/+3
2016-05-01OpenGL: Copy TevStageConfig using a loop. Fixes bug: const_color not copiedJannik Vogel1-30/+11
2016-04-30VideoCore: Run include-what-you-use and fix most includes.Emmanuel Gil Peyrot1-2/+12
2016-04-22HWRasterizer: reorder declarations to match defstfarley1-9/+9
2016-04-21HWRasterizer: Texture forwardingtfarley1-66/+10
2016-04-08OpenGL: Split buffer-write mask sync into seperate functionsJannik Vogel1-0/+9
2016-03-03Add immediate mode vertex submissionDwayne Slater1-0/+1
2016-02-05pica: Cleanup lighting register definitions and documentation.bunnei1-15/+15
2016-02-05gl_rasterizer: Use alignas(16) instead of explicit padding.bunnei1-13/+6
2016-02-05renderer_opengl: Use GLvec3/GLvec4 aliases for commonly used types.bunnei1-9/+10
2016-02-05gl_rasterizer: Fix issue with interpolation of opposite quaternions.bunnei1-1/+7
2016-02-05pica_types: Replace float24/20/16 with a template class.bunnei1-2/+2
2016-02-05gl_rasterizer: Remove unnecessary casts.bunnei1-6/+6
2016-02-05gl_rasterizer: Fix PicaShaderConfig on GCC.bunnei1-29/+27
2016-02-05gl_rasterizer: Initial implementation of bump mapping.bunnei1-0/+6
2016-02-05gl_shader_gen: Implement lighting red, green, and blue reflection.bunnei1-1/+17
2016-02-05gl_shader_gen: Implement fragment lighting fresnel effect.bunnei1-0/+7
2016-02-05gl_shader_gen: Implement fragment lighting specular 1 component.bunnei1-0/+8
2016-02-05gl_shader_gen: Add support for D0 LUT scaling.bunnei1-1/+3
2016-02-05gl_shader_gen: Refactor lighting config to match Pica register naming.bunnei1-28/+32
- Also implement D0 LUT enable.
2016-02-05pica: Cleanup and add some comments to lighting registers.bunnei1-1/+1
2016-02-05gl_rasterizer: Minor naming refactor on Pica register naming.bunnei1-5/+5
2016-02-05renderer_opengl: Use textures for fragment shader LUTs instead of UBOs.bunnei1-4/+6
- Gets us LUT interpolation for free. - Some older Intel GPU drivers did not support the big UBOs needed to store the LUTs.
2016-02-05renderer_opengl: Initial implementation of basic specular lighting.bunnei1-0/+20
2016-02-05renderer_opengl: Implement HW fragment lighting distance attenuation.bunnei1-14/+22
2016-02-05renderer_opengl: Implement HW fragment lighting LUTs within our default UBO.bunnei1-2/+7
2016-02-05renderer_opengl: Implement diffuse component of HW fragment lighting.bunnei1-3/+58
2016-02-03hwrasterizer: Use proper cached fb addr/sizetfarley1-2/+2
2016-01-21hwrasterizer: Use depth offsettfarley1-1/+5
2015-12-08VideoCore: Unify interface to OpenGL and SW rasterizersYuri Kunde Schlesner1-17/+2
This removes explicit checks sprinkled all over the codebase to instead just have the SW rasterizer expose an implementation with no-ops for most operations.
2015-12-07VideoCore: Rename HWRasterizer methods to be less confusingYuri Kunde Schlesner1-3/+3
2015-11-25Use regular uniform locationPierre de La Morinerie1-7/+0
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-19FragShader: Use an UBO instead of several individual uniformsSubv1-6/+21
2015-10-22gl_shader_gen: Various cleanups to shader generation.bunnei1-1/+1
2015-10-22gl_rasterizer: Use MMH3 hash for shader cache hey.bunnei1-76/+57
- Includes a check to confirm no hash collisions.
2015-10-22gl_shader_gen: Require explicit uniform locations.bunnei1-26/+14
- Fixes uniform issue on AMD.
2015-10-22gl_rasterizer: Add documentation to ShaderCacheKey.bunnei1-0/+16
2015-10-22renderer_opengl: Refactor shader generation/caching to be more organized + various cleanups.bunnei1-23/+18
2015-10-22gl_rasterizer: Move logic for creating ShaderCacheKey to a static function.bunnei1-1/+44
2015-10-22Initial implementation of fragment shader generation with caching.Subv1-31/+79
2015-09-11video_core: Reorganize headersLioncash1-3/+2
2015-09-03OpenGL: Use Sampler Objects to decouple sampler config from texturesYuri Kunde Schlesner1-0/+19
Fixes #978
2015-08-15Shader: Move shader code to its own subdirectory, "shader".bunnei1-1/+1
2015-08-15GPU: Refactor "VertexShader" namespace to "Shader".bunnei1-5/+5
- Also renames "vertex_shader.*" to "shader_interpreter.*"
2015-06-28Core: Cleanup hw includes.Emmanuel Gil Peyrot1-0/+1
2015-06-28Common: Cleanup key_map includes.Emmanuel Gil Peyrot1-0/+4
2015-05-31Pica: Implement LogicOp function.bunnei1-0/+3
2015-05-23OpenGL renderertfarley1-0/+207