Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | texture_cache: Style and Corrections | Fernando Sahmkow | 2019-06-21 | 1 | -1/+1 |
| | |||||
* | shader_cache: Correct versioning and size calculation. | Fernando Sahmkow | 2019-06-21 | 1 | -1/+6 |
| | |||||
* | gl_shader_decompiler: Implement image binding settings | ReinUsesLisp | 2019-06-21 | 1 | -0/+4 |
| | |||||
* | gl_rasterizer: Track texture buffer usage | ReinUsesLisp | 2019-06-21 | 1 | -34/+44 |
| | |||||
* | gl_shader_cache: Store a system class and drop global accessors | ReinUsesLisp | 2019-05-30 | 1 | -7/+8 |
| | |||||
* | gl_shader_cache: Add commentaries explaining the intention in shaders creation | ReinUsesLisp | 2019-05-30 | 1 | -0/+2 |
| | |||||
* | gl_shader_cache: Flip if condition in GetStageProgram to reduce indentation | ReinUsesLisp | 2019-05-30 | 1 | -25/+26 |
| | |||||
* | gl_shader_gen: Always declare extensions after the version declaration | ReinUsesLisp | 2019-05-27 | 1 | -1/+2 |
| | | | | | This addresses a bug on geometry shaders where code was being written before all #extension declarations were done. Ref to #2523 | ||||
* | gl_shader_cache: Fix clang strict standard build issues | ReinUsesLisp | 2019-05-21 | 1 | -3/+4 |
| | |||||
* | gl_shader_cache: Use shared contexts to build shaders in parallel | ReinUsesLisp | 2019-05-21 | 1 | -34/+82 |
| | |||||
* | video_core/renderer_opengl/gl_shader_cache: Correct member initialization order | Lioncash | 2019-05-10 | 1 | -1/+1 |
| | | | | Silences a -Wreorder warning. | ||||
* | Re added new lines at the end of files | FreddyFunk | 2019-04-23 | 1 | -1/+1 |
| | |||||
* | gl_shader_disk_cache: Use VectorVfsFile for the virtual precompiled shader cache file | unknown | 2019-04-23 | 1 | -1/+11 |
| | |||||
* | Merge pull request #2383 from ReinUsesLisp/aoffi-test | bunnei | 2019-04-23 | 1 | -27/+27 |
|\ | | | | | gl_shader_decompiler: Disable variable AOFFI on unsupported devices | ||||
| * | gl_shader_decompiler: Use variable AOFFI on supported hardware | ReinUsesLisp | 2019-04-14 | 1 | -27/+27 |
| | | |||||
* | | Document unsafe versions and add BlockCopyUnsafe | Fernando Sahmkow | 2019-04-16 | 1 | -6/+7 |
| | | |||||
* | | Use ReadBlockUnsafe for Shader Cache | Fernando Sahmkow | 2019-04-16 | 1 | -5/+7 |
|/ | |||||
* | Merge pull request #2354 from lioncash/header | bunnei | 2019-04-10 | 1 | -0/+1 |
|\ | | | | | video_core/texures/texture: Remove unnecessary includes | ||||
| * | video_core/texures/texture: Remove unnecessary includes | Lioncash | 2019-04-06 | 1 | -0/+1 |
| | | | | | | | | | | | | Nothing in this header relies on common_funcs or the memory manager. This gets rid of reliance on indirect inclusions in the OpenGL caches. | ||||
* | | Merge pull request #2300 from FernandoS27/null-shader | bunnei | 2019-04-07 | 1 | -0/+4 |
|\ \ | |/ |/| | shader_cache: Permit a Null Shader in case of a bad host_ptr. | ||||
| * | Permit a Null Shader in case of a bad host_ptr. | Fernando Sahmkow | 2019-04-07 | 1 | -0/+4 |
| | | |||||
* | | Merge pull request #2299 from lioncash/maxwell | bunnei | 2019-04-04 | 1 | -2/+0 |
|\ \ | | | | | | | gl_shader_manager: Remove reliance on a global accessor within MaxwellUniformData::SetFromRegs() | ||||
| * | | gl_shader_manager: Remove unnecessary gl_shader_manager inclusion | Lioncash | 2019-03-28 | 1 | -2/+0 |
| |/ | | | | | | | | | | | | | | | | | This isn't used at all in the OpenGL shader cache, so we can remove it's include here, meaning one less file needs to be recompiled if any changes ever occur within that header. core/memory.h is also not used within this file at all, so we can remove it as well. | ||||
* / | video_core: Amend constructor initializer list order where applicable | Lioncash | 2019-03-27 | 1 | -6/+6 |
|/ | | | | | | | Specifies the members in the same order that initialization would take place in. This also silences -Wreorder warnings. | ||||
* | gpu: Move GPUVAddr definition to common_types. | bunnei | 2019-03-21 | 1 | -2/+2 |
| | |||||
* | video_core: Refactor to use MemoryManager interface for all memory access. | bunnei | 2019-03-16 | 1 | -20/+17 |
| | | | | | | | | | | | # Conflicts: # src/video_core/engines/kepler_memory.cpp # src/video_core/engines/maxwell_3d.cpp # src/video_core/morton.cpp # src/video_core/morton.h # src/video_core/renderer_opengl/gl_global_cache.cpp # src/video_core/renderer_opengl/gl_global_cache.h # src/video_core/renderer_opengl/gl_rasterizer_cache.cpp | ||||
* | gpu: Use host address for caching instead of guest address. | bunnei | 2019-03-15 | 1 | -19/+24 |
| | |||||
* | gl_shader_disk_cache: Use unordered containers | ReinUsesLisp | 2019-02-07 | 1 | -3/+3 |
| | |||||
* | gl_shader_cache: Fixup GLSL unique identifiers | ReinUsesLisp | 2019-02-07 | 1 | -2/+2 |
| | |||||
* | gl_shader_cache: Link loading screen with disk shader cache load | ReinUsesLisp | 2019-02-07 | 1 | -3/+26 |
| | |||||
* | gl_shader_cache: Set GL_PROGRAM_SEPARABLE to dumped shaders | ReinUsesLisp | 2019-02-07 | 1 | -0/+1 |
| | | | | | | i965 (and probably all mesa drivers) require GL_PROGRAM_SEPARABLE when using glProgramBinary. This is probably required by the standard but it's ignored by permisive proprietary drivers. | ||||
* | gl_shader_disk_cache: Pass core system as argument and guard against games without title ids | ReinUsesLisp | 2019-02-07 | 1 | -1/+2 |
| | |||||
* | gl_shader_disk_cache: Address miscellaneous feedback | ReinUsesLisp | 2019-02-07 | 1 | -3/+3 |
| | |||||
* | gl_shader_disk_cache: Pass return values returning instead of by parameters | ReinUsesLisp | 2019-02-07 | 1 | -7/+5 |
| | |||||
* | gl_shader_disk_cache: Save GLSL and entries into the precompiled file | ReinUsesLisp | 2019-02-07 | 1 | -32/+39 |
| | |||||
* | gl_shader_cache: Refactor to support disk shader cache | ReinUsesLisp | 2019-02-07 | 1 | -105/+345 |
| | |||||
* | rasterizer_interface: Add disk cache entry for the rasterizer | ReinUsesLisp | 2019-02-07 | 1 | -0/+2 |
| | |||||
* | video_core: Assert on invalid GPU to CPU address queries | ReinUsesLisp | 2019-02-03 | 1 | -2/+4 |
| | |||||
* | gl_shader_cache: Use explicit bindings | ReinUsesLisp | 2019-01-30 | 1 | -63/+83 |
| | |||||
* | gl_rasterizer: Implement global memory management | ReinUsesLisp | 2019-01-30 | 1 | -3/+15 |
| | |||||
* | video_core: Rename glsl_decompiler to gl_shader_decompiler | ReinUsesLisp | 2019-01-15 | 1 | -1/+1 |
| | |||||
* | video_core: Replace gl_shader_decompiler | ReinUsesLisp | 2019-01-15 | 1 | -2/+6 |
| | |||||
* | gl_shader_cache: Use dirty flags for shaders | ReinUsesLisp | 2019-01-07 | 1 | -1/+5 |
| | |||||
* | gl_shader_cache: Dehardcode constant in CalculateProgramSize() | Lioncash | 2018-12-11 | 1 | -2/+2 |
| | | | | This constant is related to the size of the instruction. | ||||
* | gl_shader_cache: Resolve truncation compiler warning | Lioncash | 2018-12-11 | 1 | -1/+1 |
| | | | | | The previous code would cause a warning, as it was truncating size_t (64-bit) to a u32 (32-bit) implicitly. | ||||
* | Implemented a shader unique identifier. | Fernando Sahmkow | 2018-12-09 | 1 | -0/+45 |
| | |||||
* | shader_cache: Only lock covered instructions. | Markus Wick | 2018-11-20 | 1 | -0/+1 |
| | |||||
* | Merge pull request #1669 from ReinUsesLisp/fixup-gs | bunnei | 2018-11-11 | 1 | -2/+6 |
|\ | | | | | gl_shader_decompiler: Guard out of bound geometry shader input reads | ||||
| * | gl_shader_decompiler: Guard out of bound geometry shader input reads | ReinUsesLisp | 2018-11-10 | 1 | -2/+6 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | Geometry shaders follow a pattern that results in out of bound reads. This pattern is: - VSETP to predicate - Use that predicate to conditionally set a register a big number - Use the register to access geometry shaders At the time of writing this commit I don't know what's the intent of this number. Some drivers argue about these out of bound reads. To avoid this issue, input reads are guarded limiting reads to the highest posible vertex input of the current topology (e.g. points to 1 and triangles to 3). | ||||
* | | rasterizer_cache: Remove reliance on the System singleton | Lioncash | 2018-11-08 | 1 | -1/+3 |
|/ | | | | | | Rather than have a transparent dependency, we can make it explicit in the interface. This also gets rid of the need to put the core include in a header. | ||||
* | video_core: Move OpenGL specific utils to its renderer | ReinUsesLisp | 2018-10-29 | 1 | -2/+3 |
| | |||||
* | gl_shader_decompiler: Implement geometry shaders | ReinUsesLisp | 2018-10-07 | 1 | -5/+29 |
| | |||||
* | Added glObjectLabels for renderdoc for textures and shader programs (#1384) | David | 2018-09-23 | 1 | -0/+2 |
| | | | | | | | | * Added glObjectLabels for renderdoc for textures and shader programs * Changed hardcoded "Texture" name to reflect the texture type instead * Removed string initialize | ||||
* | Port #4182 from Citra: "Prefix all size_t with std::" | fearlessTobi | 2018-09-15 | 1 | -3/+3 |
| | |||||
* | video_core: fixed arithmetic overflow warnings & improved code style | Patrick Elsässer | 2018-09-09 | 1 | -4/+4 |
| | | | | | | | | - Fixed all warnings, for renderer_opengl items, which were indicating a possible incorrect behavior from integral promotion rules and types larger than those in which arithmetic is typically performed. - Added const for variables where possible and meaningful. - Added constexpr where possible. | ||||
* | gl_shader_cache: Use an u32 for the binding point cache. | Markus Wick | 2018-09-04 | 1 | -8/+8 |
| | | | | | | | The std::string generation with its malloc and free requirement was a noticeable overhead. Also switch to an ordered_map to avoid the std::hash call. As those maps usually have a size of two elements, the lookup time shall not matter. | ||||
* | gl_renderer: Cache textures, framebuffers, and shaders based on CPU address. | bunnei | 2018-08-31 | 1 | -11/+7 |
| | |||||
* | gl_shader_cache: Remove unused program_code vector in GetShaderAddress() | Lioncash | 2018-08-28 | 1 | -2/+1 |
| | | | | | | | | Given std::vector is a type with a non-trivial destructor, this variable cannot be optimized away by the compiler, even if unused. Because of that, something that was intended to be fairly lightweight, was actually allocating 32KB and deallocating it at the end of the function. | ||||
* | renderer_opengl: Implement a new shader cache. | bunnei | 2018-08-28 | 1 | -0/+131 |