aboutsummaryrefslogtreecommitdiff
path: root/src/video_core
AgeCommit message (Collapse)Author
2020-04-22BufferCache: Refactor async managing.Fernando Sahmkow
2020-04-22FenceManager: Implement async buffer cache flushes on High settingsFernando Sahmkow
2020-04-22Rasterizer: Document SignalFence & ReleaseFences and setup skeletons on Vulkan.Fernando Sahmkow
2020-04-22GPU: Fix rebase errors.Fernando Sahmkow
2020-04-22Rasterizer: Disable fence managing in synchronous gpu.Fernando Sahmkow
2020-04-22ThreadManager: Sync async reads on accurate gpu.Fernando Sahmkow
2020-04-22FenceManager: Implement should wait.Fernando Sahmkow
2020-04-22GPU: Implement a Fence Manager.Fernando Sahmkow
2020-04-22OpenGL: Implement Fencing backend.Fernando Sahmkow
2020-04-22TextureCache: Flush linear textures after finishing rendering.Fernando Sahmkow
2020-04-22GPU: Delay Fences.Fernando Sahmkow
2020-04-22BufferCache: Implement OnCPUWrite and SyncGuestHostFernando Sahmkow
2020-04-22GPU: Refactor synchronization on Async GPUFernando Sahmkow
2020-04-22Texture Cache: Implement OnCPUWrite and SyncGuestHostFernando Sahmkow
2020-04-22UI: Replasce accurate GPU option for GPU Accuracy LevelFernando Sahmkow
2020-04-21Merge pull request #3714 from lioncash/copiesbunnei
gl_shader_decompiler: Avoid copies where applicable
2020-04-21Merge pull request #3718 from ReinUsesLisp/better-pipeline-stateRodrigo Locatti
fixed_pipeline_state: Pack structure, use memcmp and CityHash on it
2020-04-21Merge pull request #3698 from lioncash/warningbunnei
General: Resolve minor assorted warnings
2020-04-20Merge pull request #3695 from ReinUsesLisp/default-attributesbunnei
maxwell_3d: Initialize format attributes constant as one
2020-04-20Merge pull request #3733 from ambasta/patch-2Mat M
Initialize quad_indexed_pass before uint8_pass
2020-04-20Merge pull request #3700 from ReinUsesLisp/stream-buffer-sizesFernando Sahmkow
vk_stream_buffer: Fix out of memory on boot on recent Nvidia drivers
2020-04-20Initialize quad_indexed_pass before uint8_passAmit Prakash Ambasta
Fixes Werror=reorder in gcc
2020-04-19Merge pull request #3729 from lioncash/globalsRodrigo Locatti
dma_pusher: Remove reliance on the global system instance
2020-04-19Merge pull request #3694 from ReinUsesLisp/indexed-quadsbunnei
vk_compute_pass: Implement indexed quads
2020-04-19dma_pusher: Remove reliance on the global system instanceLioncash
With this, the video core is now has no calls to the global system instance at all.
2020-04-19Merge pull request #3686 from lioncash/tablebunnei
texture_cache/format_lookup_table: Fix incorrect green, blue, and alpha indices
2020-04-19Merge pull request #3679 from lioncash/trackbunnei
track: Eliminate redundant copies
2020-04-19renderer_vulkan: assume X11 if not Windows/macOS after bf1d66b7c074Jan Beich
Render.Vulkan <Error> video_core/renderer_vulkan/renderer_vulkan.cpp:CreateInstance:131: Presentation not supported on this platform Render.Vulkan <Error> video_core/renderer_vulkan/renderer_vulkan.cpp:CreateSurface:378: Presentation not supported on this platform Core <Critical> core/core.cpp:Load:199: Failed to initialize system (Error 5)!
2020-04-18fixed_pipeline_state: Hash and compare the whole structureReinUsesLisp
Pad FixedPipelineState's size to 384 bytes to be a multiple of 16. Compare the whole struct with std::memcmp and hash with CityHash. Using CityHash instead of a naive hash should reduce the number of collisions. Improve used type traits to ensure this operation is safe. With these changes the improvements to the hashable pipeline state are: Optimized structure Hash: 89 ns Comparison: 103 ns Construction*: 164 ns Struct size: 384 bytes Original structure Hash: 148 ns Equal: 174 ns Construction*: 281 ns Size: 1384 bytes * Attribute state initialization is not measured These measures are averages taken with std::chrono::high_accuracy_clock on MSVC shipped on Visual Studio 16.6.0 Preview 2.1.
2020-04-18fixed_pipeline_state: Pack blending stateReinUsesLisp
Reduce FixedPipelineState's size to 364 bytes.
2020-04-18fixed_pipeline_state: Pack rasterizer stateReinUsesLisp
Reduce FixedPipelineState's size to 600 bytes.
2020-04-18fixed_pipeline_state: Pack depth stencil stateReinUsesLisp
Reduce FixedPipelineState's size to 632 bytes.
2020-04-18fixed_pipeline_state: Pack attribute stateReinUsesLisp
Reduce FixedPipelineState's size from 1384 to 664 bytes
2020-04-18Merge pull request #3716 from bunnei/fix-another-impl-fallthroughMat M
video_core: gl_shader_decompiler: Fix implicit fallthrough errors.
2020-04-18video_core: gl_shader_decompiler: Fix implicit fallthrough errors.bunnei
2020-04-17gl_shader_decompiler: Avoid copies where applicableLioncash
Avoids unnecessary reference count increments where applicable and also avoids reallocating a vector. Unlikely to make a huge difference, but given how trivial of an amendment it is, why not?
2020-04-17video_code: Fix implicit switch fallthrough.Markus Wick
Since yesterday, this breaks the build on linux. So let's fix it.
2020-04-17vk_stream_buffer: Fix out of memory on boot on recent Nvidia driversReinUsesLisp
Nvidia recently introduced a new memory type for data streaming (awesome!), but yuzu was assuming that all heaps had enough memory for the assumed stream buffer size (256 MiB). This worked fine on AMD but Nvidia's new memory heap was smaller than 256 MiB. This commit changes this assumption and allocates a bit less than the size of the preferred heap, with a maximum of 256 MiB (to avoid allocating all system memory on integrated devices). - Fixes a crash on NVIDIA 450.82.0.0
2020-04-17Revert "gl_shader_cache: Use CompileDepth::FullDecompile on GLSL"Rodrigo Locatti
2020-04-17Merge pull request #3666 from bunnei/new-vmmbunnei
Implement a new virtual memory manager
2020-04-17Merge pull request #3682 from lioncash/uambunnei
gl_query_cache: Resolve use-after-move in CachedQuery move assignment operator
2020-04-17video_core: memory_manager: Updates for Common::PageTable changes.bunnei
2020-04-17core: memory: Move to Core::Memory namespace.bunnei
- helpful to disambiguate Kernel::Memory namespace.
2020-04-16decode/memory: Resolve unused variable warningLioncash
Only the first element of the returned pair is ever used.
2020-04-16decode/texture: Resolve unused variable warnings.Lioncash
Some variables aren't used, so we can remove these. Unfortunately, diagnostics are still reported on structured bindings even when annotated with [[maybe_unused]], so we need to unpack the elements that we want to use manually.
2020-04-16decode/texture: Collapse loop down into std::generateLioncash
Same behavior, less code.
2020-04-16decode/texture: Eliminate trivial missing field initializer warningsLioncash
We can just specify the initializers.
2020-04-16Merge pull request #3673 from lioncash/extrabunnei
CMakeLists: Specify -Wextra on linux builds
2020-04-16maxwell_3d: Initialize format attributes constant as oneReinUsesLisp
nouveau expects this to be true but it doesn't set it.
2020-04-16vk_compute_pass: Implement indexed quadsReinUsesLisp
Implement indexed quads (GL_QUADS used with glDrawElements*) with a compute pass conversion. The compute shader converts from uint8/uint16/uint32 indices to uint32. The format is passed through push constants to avoid having different variants of the same shader. - Used by Fast RMX - Used by Xenoblade Chronicles 2 (it still has graphical due to synchronization issues on Vulkan)