Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Merge pull request #1460 from FernandoS27/scissor_test | bunnei | 2018-10-10 | 1 | -0/+3 |
|\ | | | | | Implemented Scissor Testing | ||||
| * | Assert Scissor tests | FernandoS27 | 2018-10-09 | 1 | -0/+3 |
| | | |||||
* | | gl_shader_decompiler: Implement geometry shaders | ReinUsesLisp | 2018-10-07 | 1 | -3/+3 |
|/ | |||||
* | Merge pull request #1446 from bunnei/fast_fermi_copy | bunnei | 2018-10-07 | 1 | -2/+2 |
|\ | | | | | gl_rasterizer: Implement accelerated Fermi2D copies. | ||||
| * | gl_rasterizer: Add rasterizer cache code to handle accerated fermi copies. | bunnei | 2018-10-06 | 1 | -2/+2 |
| | | |||||
* | | Merge pull request #1437 from FernandoS27/tex-mode2 | bunnei | 2018-10-07 | 1 | -0/+2 |
|\ \ | |/ |/| | Implemented Depth Compare, Shadow Samplers and Texture Processing Modes for TEXS and TLDS | ||||
| * | Implemented Depth Compare and Shadow Samplers | FernandoS27 | 2018-10-06 | 1 | -0/+2 |
| | | |||||
* | | gl_rasterizer: Implement quads topology | ReinUsesLisp | 2018-10-04 | 1 | -0/+7 |
|/ | |||||
* | Merge pull request #1411 from ReinUsesLisp/point-size | bunnei | 2018-09-29 | 1 | -0/+3 |
|\ | | | | | video_core: Implement point_size and add point state sync | ||||
| * | video_core: Implement point_size and add point state sync | ReinUsesLisp | 2018-09-28 | 1 | -0/+3 |
| | | |||||
* | | gl_state: Pack sampler bindings into a single ARB_multi_bind | ReinUsesLisp | 2018-09-28 | 1 | -1/+1 |
|/ | |||||
* | video_core: Add asserts for CS, TFB and alpha testing | ReinUsesLisp | 2018-09-26 | 1 | -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. | ||||
* | Port #4182 from Citra: "Prefix all size_t with std::" | fearlessTobi | 2018-09-15 | 1 | -4/+4 |
| | |||||
* | Use ARB_multi_bind for uniform buffers (#1287) | ReinUsesLisp | 2018-09-13 | 1 | -0/+1 |
| | | | | | | * gl_rasterizer: use ARB_multi_bind for uniform buffers * address feedback | ||||
* | Merge pull request #1286 from bunnei/multi-clear | bunnei | 2018-09-11 | 1 | -2/+11 |
|\ | | | | | gl_rasterizer: Implement clear for non-zero render targets. | ||||
| * | gl_rasterizer: Implement clear for non-zero render targets. | bunnei | 2018-09-10 | 1 | -2/+11 |
| | | | | | | | | - Several misc. changes to ConfigureFramebuffers in support of this. | ||||
* | | rasterizer: Drop unused handler. | Markus Wick | 2018-09-10 | 1 | -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. | ||||
* | gl_rasterizer: Implement multiple color attachments. | bunnei | 2018-09-10 | 1 | -9/+3 |
| | |||||
* | gl_rasterizer: Implement texture wrap mode p. | bunnei | 2018-09-08 | 1 | -0/+1 |
| | |||||
* | gl_rasterizer: Implement a VAO cache. | Markus Wick | 2018-09-05 | 1 | -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. | ||||
* | renderer_opengl: Implement a buffer cache. | Markus Wick | 2018-09-05 | 1 | -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. | ||||
* | gl_renderer: Cache textures, framebuffers, and shaders based on CPU address. | bunnei | 2018-08-31 | 1 | -3/+3 |
| | |||||
* | gl_rasterizer: Fix issues with the rasterizer cache. | bunnei | 2018-08-31 | 1 | -0/+8 |
| | | | | | - Use a single cached page map. - Fix calculation of ending page. | ||||
* | renderer_opengl: Implement a new shader cache. | bunnei | 2018-08-28 | 1 | -8/+7 |
| | |||||
* | gl_rasterizer: Implement stencil test. | bunnei | 2018-08-23 | 1 | -0/+3 |
| | | | | - Used by Splatoon 2. | ||||
* | renderer_opengl: Namespace OpenGL code | Lioncash | 2018-08-22 | 1 | -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. | ||||
* | Merge pull request #1124 from Subv/logic_ops | bunnei | 2018-08-22 | 1 | -0/+3 |
|\ | | | | | GPU: Implemented logic ops. | ||||
| * | GPU: Implemented the logic op functionality of the GPU. | Subv | 2018-08-21 | 1 | -0/+3 |
| | | | | | | | | This will ASSERT if blending is enabled at the same time as logic ops. | ||||
* | | Merge pull request #1123 from lioncash/screen | bunnei | 2018-08-21 | 1 | -3/+5 |
|\ \ | | | | | | | rasterizer_interface: Remove renderer-specific ScreenInfo type from AccelerateDraw() in RasterizerInterface | ||||
| * | | rasterizer_interface: Remove ScreenInfo from AccelerateDraw()'s signature | Lioncash | 2018-08-21 | 1 | -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. | ||||
* / | Rasterizer: 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. | Subv | 2018-08-20 | 1 | -1/+2 |
|/ | |||||
* | gl_rasterizer: Use a shared helper to upload from CPU memory. | Markus Wick | 2018-08-12 | 1 | -0/+4 |
| | |||||
* | gl_rasterizer: Use the stream buffer for constant buffers. | Markus Wick | 2018-08-12 | 1 | -6/+5 |
| | |||||
* | gl_rasterizer: Use the streaming buffer itself for the constant buffer. | Markus Wick | 2018-08-12 | 1 | -2/+1 |
| | | | | Don't emut copies, especially not for data, which is used once. They just end in a huge GPU overhead. | ||||
* | gl_rasterizer: Use a helper for aligning the buffer. | Markus Wick | 2018-08-12 | 1 | -1/+3 |
| | |||||
* | Update the stream_buffer helper from Citra. | Markus Wick | 2018-08-12 | 1 | -2/+1 |
| | | | | Please see https://github.com/citra-emu/citra/pull/3666 for more details. | ||||
* | core: Namespace EmuWindow | Lioncash | 2018-08-12 | 1 | -3/+6 |
| | | | | Gets the class out of the global namespace. | ||||
* | video_core: Make global EmuWindow instance part of the base renderer class | Lioncash | 2018-08-02 | 1 | -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. | ||||
* | gl_rasterizer: Use in-class member initializers where applicable | Lioncash | 2018-07-24 | 1 | -5/+5 |
| | | | | We can just assign to the members directly in these cases. | ||||
* | gl_rasterizer: Implement texture border color. | bunnei | 2018-07-24 | 1 | -4/+1 |
| | |||||
* | GPU: Only configure the used framebuffers during clear. | Subv | 2018-07-04 | 1 | -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. | ||||
* | GPU: Factor out the framebuffer configuration code for both Clear and Draw commands. | Subv | 2018-07-03 | 1 | -0/+5 |
| | |||||
* | GPU: Bind and clear the render target when the CLEAR_BUFFERS register is written to. | Subv | 2018-07-03 | 1 | -0/+1 |
| | |||||
* | GPU: Set up the depth test state on every draw. | Subv | 2018-07-02 | 1 | -0/+3 |
| | |||||
* | gl_rasterizer_cache: Remove Citra's rasterizer cache, always load/flush surfaces. | bunnei | 2018-06-27 | 1 | -1/+1 |
| | |||||
* | gl_rasterizer: Workaround for when exceeding max UBO size. | bunnei | 2018-06-27 | 1 | -1/+1 |
| | |||||
* | Rasterizer: Use UBOs instead of SSBOs for uploading const buffers. | Subv | 2018-06-10 | 1 | -0/+5 |
| | | | | This should help a bit with GPU performance once we're GPU-bound. | ||||
* | GPU: Synchronize the blend state on every draw call. | Subv | 2018-06-09 | 1 | -8/+2 |
| | | | | | | Only independent blending on render target 0 is implemented for now. This fixes the elongated squids in Splatoon 2's boot screen. | ||||
* | GPU: Implement sampling multiple textures in the generated glsl shaders. | Subv | 2018-06-06 | 1 | -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. | ||||
* | GLRenderer: Remove unused hw_vao_enabled_attributes variable. | Subv | 2018-05-19 | 1 | -1/+0 |
| | |||||
* | GLRenderer: Remove unused vertex buffer and increase the size of the stream buffer to 128 MB. | Subv | 2018-05-19 | 1 | -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. | ||||
* | gl_rasterizer_cache: Update to be based on GPU addresses, not CPU addresses. | bunnei | 2018-04-25 | 1 | -3/+4 |
| | |||||
* | GPU: Support multiple enabled vertex arrays. | Subv | 2018-04-23 | 1 | -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. | ||||
* | opengl: Remove unnecessary header inclusions | Lioncash | 2018-04-21 | 1 | -5/+0 |
| | |||||
* | renderer_opengl: Implement BlendEquation and BlendFunc. | bunnei | 2018-04-18 | 1 | -1/+1 |
| | |||||
* | gl_rasterizer: Implement indexed vertex mode. | bunnei | 2018-04-17 | 1 | -1/+0 |
| | |||||
* | GPU: Use the same buffer names in the generated GLSL and the buffer uploading code. | Subv | 2018-04-15 | 1 | -3/+2 |
| | |||||
* | GPU: Don't use explicit binding points when uploading the constbuffers to opengl. | Subv | 2018-04-15 | 1 | -2/+11 |
| | | | | The bindpoints will now be dynamically calculated based on the number of buffers used by the previous shader stage. | ||||
* | GPU: Use the buffer hints from the shader decompiler to upload only the necessary const buffers for each shader stage. | Subv | 2018-04-15 | 1 | -1/+2 |
| | |||||
* | GPU: Upload the entirety of each constbuffer for each shader stage as SSBOs. | Subv | 2018-04-15 | 1 | -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. | ||||
* | GPU: Allow configuring ssbos in the opengl state manager. | Subv | 2018-04-15 | 1 | -0/+2 |
| | |||||
* | shaders: Add NumTextureSamplers const, remove unused #pragma. | bunnei | 2018-04-15 | 1 | -1/+1 |
| | |||||
* | gl_rasterizer: Generate shaders and upload uniforms. | bunnei | 2018-04-14 | 1 | -4/+3 |
| | |||||
* | gl_rasterizer: Use shader program manager, remove test shader. | bunnei | 2018-04-14 | 1 | -53/+4 |
| | |||||
* | renderer_opengl: Use OGLProgram instead of OGLShader. | bunnei | 2018-04-14 | 1 | -1/+1 |
| | |||||
* | GL: Set up the textures used for each draw call. | Subv | 2018-04-07 | 1 | -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. | ||||
* | GL: Ported the SamplerInfo struct from citra. | Subv | 2018-04-07 | 1 | -1/+20 |
| | |||||
* | gl_rasterizer: Move code to bind framebuffer surfaces before draw to its own function. | bunnei | 2018-03-27 | 1 | -0/+4 |
| | |||||
* | gl_rasterizer: Add a SyncViewport method. | bunnei | 2018-03-27 | 1 | -0/+3 |
| | |||||
* | rasterizer: Rename DrawTriangles to DrawArrays. | bunnei | 2018-03-27 | 1 | -1/+1 |
| | |||||
* | gl_rasterizer: Use 32 texture units instead of 3. | bunnei | 2018-03-27 | 1 | -1/+1 |
| | |||||
* | rasterizer: Flush and invalidate regions should be 64-bit. | bunnei | 2018-03-23 | 1 | -3/+3 |
| | |||||
* | video_core: Remove usage of PAddr and replace with VAddr. | bunnei | 2018-03-23 | 1 | -4/+4 |
| | |||||
* | video_core: Move FramebufferInfo to FramebufferConfig in GPU. | bunnei | 2018-03-23 | 1 | -2/+2 |
| | |||||
* | gl_rasterizer: Add a simple passthrough shader in lieu of shader generation. | bunnei | 2018-03-23 | 1 | -2/+12 |
| | |||||
* | renderer_gl: Port boilerplate rasterizer code over from Citra. | bunnei | 2018-03-20 | 1 | -0/+162 |
| | |||||
* | Remove references to PICA and rasterizers in video_core | James Rowe | 2018-01-13 | 1 | -316/+0 |
| | |||||
* | core/video_core: Fix a bunch of u64 -> u32 warnings. | bunnei | 2018-01-01 | 1 | -2/+2 |
| | |||||
* | gl_rasterizer: implement custom clip plane | wwylele | 2017-08-25 | 1 | -1/+8 |
| | |||||
* | gl_rasterizer: use texture buffer for proctex LUT | wwylele | 2017-07-01 | 1 | -0/+5 |
| | |||||
* | gl_rasterizer: use texture buffer for fog LUT | wwylele | 2017-06-22 | 1 | -1/+2 |
| | |||||
* | gl_rasterizer/lighting: fix LUT interpolation | wwylele | 2017-06-21 | 1 | -3/+4 |
| | |||||
* | gl_rasterizer: sync spot light status | wwylele | 2017-05-30 | 1 | -1/+5 |
| | |||||
* | gl_rasterizer: implement procedural texture | wwylele | 2017-05-20 | 1 | -1/+34 |
| | |||||
* | OpenGL: Move PicaShaderConfig to gl_shader_gen.h | Yuri Kunde Schlesner | 2017-04-17 | 1 | -199/+2 |
| | | | | Also move the implementation of CurrentConfig to the cpp file. | ||||
* | VideoCore: Split regs.h inclusions | Yuri Kunde Schlesner | 2017-02-09 | 1 | -1/+4 |
| | |||||
* | VideoCore: Move Regs to its own file | Yuri Kunde Schlesner | 2017-02-04 | 1 | -1/+1 |
| | |||||
* | VideoCore: Split lighting regs from Regs struct | Yuri Kunde Schlesner | 2017-02-04 | 1 | -4/+4 |
| | |||||
* | VideoCore: Split framebuffer regs from Regs struct | Yuri Kunde Schlesner | 2017-02-04 | 1 | -4/+4 |
| | |||||
* | VideoCore: Split texturing regs from Regs struct | Yuri Kunde Schlesner | 2017-02-04 | 1 | -12/+13 |
| | |||||
* | VideoCore: Split rasterizer regs from Regs struct | Yuri Kunde Schlesner | 2017-02-04 | 1 | -4/+4 |
| | |||||
* | VideoCore: Change misleading register names | Yuri Kunde Schlesner | 2017-01-30 | 1 | -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. | ||||
* | video_core: fix gl_rasterizer warning on MSVC | Kloen | 2017-01-23 | 1 | -1/+1 |
| | |||||
* | Merge pull request #2103 from wwylele/gpu-reg-cleanup | bunnei | 2016-10-04 | 1 | -0/+1 |
|\ | | | | | GPU: DisplayTransfer & MemoryFill cleanup and param check | ||||
| * | rasterizer: separate TextureCopy from DisplayTransfer | wwylele | 2016-09-29 | 1 | -0/+1 |
| | | |||||
* | | OpenGL: Take cached viewport sub-rect into account for scissor | Yuri Kunde Schlesner | 2016-09-30 | 1 | -3/+0 |
|/ | | | | Fixes #1938 | ||||
* | Remove empty newlines in #include blocks. | Emmanuel Gil Peyrot | 2016-09-21 | 1 | -4/+0 |
| | | | | | | | This makes clang-format useful on those. Also add a bunch of forgotten transitive includes, which otherwise prevented compilation. | ||||
* | Manually tweak source formatting and then re-run clang-format | Yuri Kunde Schlesner | 2016-09-19 | 1 | -6/+3 |
| | |||||
* | Sources: Run clang-format on everything. | Emmanuel Gil Peyrot | 2016-09-18 | 1 | -21/+29 |
| | |||||
* | OpenGL: Add scaled resolution support to scissor | Yuri Kunde Schlesner | 2016-06-28 | 1 | -1/+2 |
| | |||||
* | PICA: Scissor fixes and cleanups | Yuri Kunde Schlesner | 2016-06-28 | 1 | -4/+4 |
| | |||||
* | PICA: Implement scissor test | Subv | 2016-06-28 | 1 | -1/+11 |
| | |||||
* | OpenGL: Implement fog | Jannik Vogel | 2016-06-07 | 1 | -2/+15 |
| | |||||
* | OpenGL: Avoid undefined behaviour for UNIFORM_BLOCK_DATA_SIZE | Jannik Vogel | 2016-06-07 | 1 | -4/+6 |
| | |||||
* | Pica: Name LightSrc.config register | Jannik Vogel | 2016-05-23 | 1 | -2/+2 |
| | |||||
* | Pica: Name lighting.config0 and .config1 registers | Jannik Vogel | 2016-05-23 | 1 | -12/+12 |
| | |||||
* | OpenGL: Use uniforms for dist_atten_bias and dist_atten_scale | Jannik Vogel | 2016-05-23 | 1 | -5/+9 |
| | |||||
* | OpenGL: Only update depth uniforms if the depth changed | Jannik Vogel | 2016-05-14 | 1 | -2/+5 |
| | |||||
* | OpenGL: value-initialize variables which cause uninitialised access otherwise | Jannik Vogel | 2016-05-14 | 1 | -2/+2 |
| | |||||
* | OpenGL: Implement texture type 3 | Jannik Vogel | 2016-05-11 | 1 | -0/+5 |
| | |||||
* | Merge pull request #1621 from JayFoxRox/w-buffer | bunnei | 2016-05-11 | 1 | -0/+5 |
|\ | | | | | Implement W-buffer and fix depth-mapping | ||||
| * | OpenGL: Implement W-Buffers and fix depth-mapping | Jannik Vogel | 2016-05-10 | 1 | -0/+5 |
| | | |||||
* | | gl_rasterizer: Fix compilation for debug builds | Lioncash | 2016-05-10 | 1 | -1/+1 |
|/ | |||||
* | Pica: Use a union for PicaShaderConfig | Jannik Vogel | 2016-05-03 | 1 | -87/+97 |
| | |||||
* | Pica: Add TevStageConfigRaw to PicaShaderConfig (MSVC workaround) | Jannik Vogel | 2016-05-03 | 1 | -1/+22 |
| | |||||
* | Pica: Make PicaShaderConfig trivially_copyable and clear it before use | Jannik Vogel | 2016-05-03 | 1 | -21/+28 |
| | |||||
* | OpenGL: Don't copy const_color (Reverts #1745) | Jannik Vogel | 2016-05-03 | 1 | -2/+3 |
| | |||||
* | Merge pull request #1741 from linkmauve/iwyu-video_core | bunnei | 2016-05-01 | 1 | -2/+12 |
|\ | | | | | Fix video_core includes (and dependencies) using include-what-you-use | ||||
| * | VideoCore: Run include-what-you-use and fix most includes. | Emmanuel Gil Peyrot | 2016-04-30 | 1 | -2/+12 |
| | | |||||
* | | OpenGL: Copy TevStageConfig using a loop. Fixes bug: const_color not copied | Jannik Vogel | 2016-05-01 | 1 | -30/+11 |
|/ | |||||
* | HWRasterizer: reorder declarations to match defs | tfarley | 2016-04-22 | 1 | -9/+9 |
| | |||||
* | HWRasterizer: Texture forwarding | tfarley | 2016-04-21 | 1 | -66/+10 |
| | |||||
* | OpenGL: Split buffer-write mask sync into seperate functions | Jannik Vogel | 2016-04-08 | 1 | -0/+9 |
| | |||||
* | Add immediate mode vertex submission | Dwayne Slater | 2016-03-03 | 1 | -0/+1 |
| | |||||
* | pica: Cleanup lighting register definitions and documentation. | bunnei | 2016-02-05 | 1 | -15/+15 |
| | |||||
* | gl_rasterizer: Use alignas(16) instead of explicit padding. | bunnei | 2016-02-05 | 1 | -13/+6 |
| | |||||
* | renderer_opengl: Use GLvec3/GLvec4 aliases for commonly used types. | bunnei | 2016-02-05 | 1 | -9/+10 |
| | |||||
* | gl_rasterizer: Fix issue with interpolation of opposite quaternions. | bunnei | 2016-02-05 | 1 | -1/+7 |
| | |||||
* | pica_types: Replace float24/20/16 with a template class. | bunnei | 2016-02-05 | 1 | -2/+2 |
| | |||||
* | gl_rasterizer: Remove unnecessary casts. | bunnei | 2016-02-05 | 1 | -6/+6 |
| | |||||
* | gl_rasterizer: Fix PicaShaderConfig on GCC. | bunnei | 2016-02-05 | 1 | -29/+27 |
| | |||||
* | gl_rasterizer: Initial implementation of bump mapping. | bunnei | 2016-02-05 | 1 | -0/+6 |
| | |||||
* | gl_shader_gen: Implement lighting red, green, and blue reflection. | bunnei | 2016-02-05 | 1 | -1/+17 |
| | |||||
* | gl_shader_gen: Implement fragment lighting fresnel effect. | bunnei | 2016-02-05 | 1 | -0/+7 |
| | |||||
* | gl_shader_gen: Implement fragment lighting specular 1 component. | bunnei | 2016-02-05 | 1 | -0/+8 |
| | |||||
* | gl_shader_gen: Add support for D0 LUT scaling. | bunnei | 2016-02-05 | 1 | -1/+3 |
| | |||||
* | gl_shader_gen: Refactor lighting config to match Pica register naming. | bunnei | 2016-02-05 | 1 | -28/+32 |
| | | | | - Also implement D0 LUT enable. | ||||
* | pica: Cleanup and add some comments to lighting registers. | bunnei | 2016-02-05 | 1 | -1/+1 |
| | |||||
* | gl_rasterizer: Minor naming refactor on Pica register naming. | bunnei | 2016-02-05 | 1 | -5/+5 |
| | |||||
* | renderer_opengl: Use textures for fragment shader LUTs instead of UBOs. | bunnei | 2016-02-05 | 1 | -4/+6 |
| | | | | | - Gets us LUT interpolation for free. - Some older Intel GPU drivers did not support the big UBOs needed to store the LUTs. | ||||
* | renderer_opengl: Initial implementation of basic specular lighting. | bunnei | 2016-02-05 | 1 | -0/+20 |
| | |||||
* | renderer_opengl: Implement HW fragment lighting distance attenuation. | bunnei | 2016-02-05 | 1 | -14/+22 |
| | |||||
* | renderer_opengl: Implement HW fragment lighting LUTs within our default UBO. | bunnei | 2016-02-05 | 1 | -2/+7 |
| | |||||
* | renderer_opengl: Implement diffuse component of HW fragment lighting. | bunnei | 2016-02-05 | 1 | -3/+58 |
| | |||||
* | hwrasterizer: Use proper cached fb addr/size | tfarley | 2016-02-03 | 1 | -2/+2 |
| | |||||
* | hwrasterizer: Use depth offset | tfarley | 2016-01-21 | 1 | -1/+5 |
| | |||||
* | VideoCore: Unify interface to OpenGL and SW rasterizers | Yuri Kunde Schlesner | 2015-12-08 | 1 | -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. | ||||
* | VideoCore: Rename HWRasterizer methods to be less confusing | Yuri Kunde Schlesner | 2015-12-07 | 1 | -3/+3 |
| | |||||
* | Use regular uniform location | Pierre de La Morinerie | 2015-11-25 | 1 | -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). | ||||
* | FragShader: Use an UBO instead of several individual uniforms | Subv | 2015-11-19 | 1 | -6/+21 |
| | |||||
* | gl_shader_gen: Various cleanups to shader generation. | bunnei | 2015-10-22 | 1 | -1/+1 |
| | |||||
* | gl_rasterizer: Use MMH3 hash for shader cache hey. | bunnei | 2015-10-22 | 1 | -76/+57 |
| | | | | - Includes a check to confirm no hash collisions. | ||||
* | gl_shader_gen: Require explicit uniform locations. | bunnei | 2015-10-22 | 1 | -26/+14 |
| | | | | - Fixes uniform issue on AMD. | ||||
* | gl_rasterizer: Add documentation to ShaderCacheKey. | bunnei | 2015-10-22 | 1 | -0/+16 |
| | |||||
* | renderer_opengl: Refactor shader generation/caching to be more organized + various cleanups. | bunnei | 2015-10-22 | 1 | -23/+18 |
| | |||||
* | gl_rasterizer: Move logic for creating ShaderCacheKey to a static function. | bunnei | 2015-10-22 | 1 | -1/+44 |
| | |||||
* | Initial implementation of fragment shader generation with caching. | Subv | 2015-10-22 | 1 | -31/+79 |
| | |||||
* | video_core: Reorganize headers | Lioncash | 2015-09-11 | 1 | -3/+2 |
| | |||||
* | OpenGL: Use Sampler Objects to decouple sampler config from textures | Yuri Kunde Schlesner | 2015-09-03 | 1 | -0/+19 |
| | | | | Fixes #978 | ||||
* | Shader: Move shader code to its own subdirectory, "shader". | bunnei | 2015-08-15 | 1 | -1/+1 |
| | |||||
* | GPU: Refactor "VertexShader" namespace to "Shader". | bunnei | 2015-08-15 | 1 | -5/+5 |
| | | | | - Also renames "vertex_shader.*" to "shader_interpreter.*" | ||||
* | Core: Cleanup hw includes. | Emmanuel Gil Peyrot | 2015-06-28 | 1 | -0/+1 |
| | |||||
* | Common: Cleanup key_map includes. | Emmanuel Gil Peyrot | 2015-06-28 | 1 | -0/+4 |
| | |||||
* | Pica: Implement LogicOp function. | bunnei | 2015-05-31 | 1 | -0/+3 |
| | |||||
* | OpenGL renderer | tfarley | 2015-05-23 | 1 | -0/+207 |