aboutsummaryrefslogtreecommitdiff
path: root/src/video_core
AgeCommit message (Collapse)Author
2019-06-20texture_cache: Implement L1_Inner_cacheFernando Sahmkow
2019-06-20video_core: Use un-shifted block sizes to avoid integer divisionsReinUsesLisp
Instead of storing all block width, height and depths in their shifted form: block_width = 1U << block_shift; Store them like they are provided by the emulated hardware (their block_shift form). This way we can avoid doing the costly Common::AlignUp operation to align texture sizes and drop CPU integer divisions with bitwise logic (defined in Common::AlignBits).
2019-06-20texture_cache: Change internal cache from lists to vectorsReinUsesLisp
2019-06-20Reduce amount of size calculations.Fernando Sahmkow
2019-06-20texture_cache: Correct premature texceptionsFernando Sahmkow
Due to our current infrastructure, it is possible for a mipmap to be set on as a render target before a texception of that mipmap's superset be set afterwards. This is problematic as we rely on texture views to set up texceptions and protecting render targets targets for 3D texture rendering. One simple solution is to configure framebuffers after texture setup but this brings other problems. This solution, forces a reconfiguration of the framebuffers after such event happens.
2019-06-20texture_cache: Implement guest flushingFernando Sahmkow
2019-06-20Fixes to mipmap's process and reconstruct processFernando Sahmkow
2019-06-20surface_base: Add parenthesis to EmplaceOverview's predicateReinUsesLisp
2019-06-20Texture Cache: Implement Blitting and Fermi CopiesFernando Sahmkow
2019-06-20surface_view: Add constructor for ViewParamsReinUsesLisp
2019-06-20surface_base: Split BreakDown into layered and non-layered variantsReinUsesLisp
2019-06-20surface_base: Silence truncation warnings and minor renames and reorderingReinUsesLisp
2019-06-20copy_params: Use constructor instead of C-like initializationReinUsesLisp
2019-06-20Correct Mipmaps View method in Texture CacheFernando Sahmkow
2019-06-20Change texture_cache chaching from GPUAddr to CacheAddrFernando Sahmkow
This also reverses the changes to make invalidation and flushing through the GPU address.
2019-06-20Corrections to Structural MatchingFernando Sahmkow
The texture will now be reconstructed if the width only matches on GoB alignment.
2019-06-20Implement Texture Cache V2Fernando Sahmkow
2019-06-20Correct Surface Base and Views for new Texture CacheFernando Sahmkow
2019-06-20Add OGLTextureViewFernando Sahmkow
2019-06-20Deglobalize Memory Manager on texture cahe and Implement Invalidation and ↵Fernando Sahmkow
Flushing using GPUVAddr
2019-06-20texture_cache: Remove execution context copies from the texture cacheReinUsesLisp
This is done to simplify the OpenGL implementation, it is needed for Vulkan.
2019-06-20gl_texture_cache: Implement fermi copiesReinUsesLisp
2019-06-20texture_cache: Split texture cache into different filesReinUsesLisp
2019-06-20texture_cache: Move staging buffer into a generic implementationReinUsesLisp
2019-06-20texture_cache: Flush 3D textures in the order they are drawnReinUsesLisp
2019-06-20gl_texture_cache: Minor changesReinUsesLisp
2019-06-20gl_texture_cache: Add copy from multiple overlaps into a single surfaceReinUsesLisp
2019-06-20gl_texture_cache: Attach surface textures instead of viewsReinUsesLisp
2019-06-20gl_texture_cache: Add fast copy pathReinUsesLisp
2019-06-20gl_texture_cache: Initial implementationReinUsesLisp
2019-06-19Merge pull request #2591 from lioncash/recordbunnei
core: Remove unused CiTrace source files
2019-06-18core: Remove unused CiTrace source filesLioncash
These source files have been unused for the entire lifecycle of the project. They're a hold-over from Citra and only add to the build time of the project, so they can be removed. There's also likely no way this would ever work in yuzu in its current form without revamping quite a bit of it, given how different the GPU on the Switch is compared to the 3DS.
2019-06-17Merge pull request #2562 from ReinUsesLisp/split-cbuf-uploadbunnei
video_core/engines: Move ConstBufferInfo out of Maxwell3D
2019-06-15Merge pull request #2538 from ReinUsesLisp/ssy-pbkZach Hilman
shader: Split SSY and PBK stack
2019-06-11Merge pull request #2572 from FernandoS27/gpu-membunnei
GPUVM: Correct GPU VM virtual address space
2019-06-09GPUVM: Correct GPU VM virtual address spaceFernando Sahmkow
2019-06-07kepler_compute: Use std::array for cbuf infoReinUsesLisp
2019-06-07kepler_compute: Fix block_dim_x encodingReinUsesLisp
2019-06-07gl_rasterizer: Remove unused parameters in descriptor uploadsReinUsesLisp
2019-06-07video_core/engines: Move ConstBufferInfo out of Maxwell3DReinUsesLisp
2019-06-07Merge pull request #2514 from ReinUsesLisp/opengl-compatZach Hilman
video_core: Drop OpenGL core in favor of OpenGL compatibility
2019-06-07shader: Split SSY and PBK stackReinUsesLisp
Hardware testing revealed that SSY and PBK push to a different stack, allowing code like this: SSY label1; PBK label2; SYNC; label1: PBK; label2: EXIT;
2019-06-06shader/node: Minor changesReinUsesLisp
Reflect std::shared_ptr nature of Node on initializers and remove constant members in nodes. Add some commentaries.
2019-06-06shader: Move Node declarations out of the shader IR headerReinUsesLisp
Analysis passes do not have a good reason to depend on shader_ir.h to work on top of nodes. This splits node-related declarations to their own file and leaves the IR in shader_ir.h
2019-06-05shader: Use shared_ptr to store nodes and move initialization to fileReinUsesLisp
Instead of having a vector of unique_ptr stored in a vector and returning star pointers to this, use shared_ptr. While changing initialization code, move it to a separate file when possible. This is a first step to allow code analysis and node generation beyond the ShaderIR class.
2019-06-05Merge pull request #2520 from ReinUsesLisp/vulkan-refreshbunnei
vk_device,vk_shader_decompiler: Miscellaneous changes
2019-06-05Merge pull request #2540 from ReinUsesLisp/remove-guest-positionbunnei
gl_shader_decompiler: Remove guest "position" varying
2019-06-05Merge pull request #2512 from ReinUsesLisp/comp-indexingbunnei
gl_shader_decompiler: Pessimize uniform buffer access on AMD's prorpietary driver
2019-06-05Merge pull request #2545 from lioncash/timingZach Hilman
core/core_timing_util: Use std::chrono types for specifying time units
2019-06-05Merge pull request #2534 from ReinUsesLisp/shader-cleanupZach Hilman
gl_shader_cache: Minor style changes