aboutsummaryrefslogtreecommitdiff
path: root/src/video_core
AgeCommit message (Collapse)Author
2023-04-11Merge pull request #10008 from vonchenplus/texture_cacheliamwhite
video_core: update imageinfo implement
2023-04-08video_core: Enable ImageGather with subpixel offset on IntelWollnashorn
2023-04-08shader_recompiler: Add subpixel offset for correct rounding at `ImageGather`Wollnashorn
On AMD a subpixel offset of 1/512 of the texel size is applied to the texture coordinates at a ImageGather call to ensure the rounding at the texel centers is done the same way as in Maxwell or other Nvidia architectures. See https://www.reedbeta.com/blog/texture-gathers-and-coordinate-precision/ for more details why this might be necessary. This should fix shadow artifacts at object edges in Zelda: Breath of the Wild (#9957, #6956).
2023-04-03Merge pull request #10004 from Kelebek1/cubemapliamwhite
[texture_cache] Only upload GPU-modified overlaps
2023-04-01externals: update Vulkan-Headers to v1.3.246Jan Beich
2023-03-31video_core: Keep the definition of DimensionControl consistent with nvidia ↵Feng Chen
open doc
2023-03-29Fixes 'Continous' typoMax Dunbar
2023-03-28Only upload GPU-modified overlapsKelebek1
2023-03-27Merge pull request #9984 from liamwhite/global-memoryliamwhite
memory: rename global memory references to application memory
2023-03-25video_core/macro: Make use of Common::HashValueMorph
2023-03-24Merge pull request #9985 from liamwhite/funny-memebunnei
vulkan: fix scheduler chunk reserve
2023-03-25Pass GPU page table by referenceRoss Schlaikjer
2023-03-24vulkan: fix scheduler chunk reserveLiam
2023-03-24Merge pull request #9975 from liamwhite/more-waitingMorph
vulkan: fix more excessive waiting in scheduler
2023-03-23memory: rename global memory references to application memoryLiam
2023-03-23Merge pull request #9971 from Morph1984/qliamwhite
bounded_threadsafe_queue: Use simplified impl of bounded queue
2023-03-23Merge pull request #9962 from Kelebek1/disable_srgbMorph
[video_core] Disable SRGB border color conversion in samplers
2023-03-21bounded_threadsafe_queue: Deduplicate and add PushModesMorph
Adds the PushModes Try and Wait to allow producers to specify how they want to push their data to the queue if the queue is full. If the queue is full: - Try will fail to push to the queue, returning false. Try only returns true if it successfully pushes to the queue. This may result in items not being pushed into the queue. - Wait will wait until a slot is available to push to the queue, resulting in potential for deadlock if a consumer is not running.
2023-03-21bounded_threadsafe_queue: Use simplified impl of bounded queueMorph
Provides a simplified SPSC, MPSC, and MPMC bounded queue implementation using mutexes.
2023-03-19vulkan: fix more excessive waiting in schedulerLiam
2023-03-17Merge pull request #9778 from behunin/my-box-chevybunnei
gpu_thread: Use bounded queue
2023-03-17Disable SRGB border color conversion for now, to fix shadows in Xenoblade.Kelebek1
2023-03-15Merge pull request #9955 from liamwhite/color-blend-equationliamwhite
vulkan: disable extendedDynamicState3ColorBlendEquation on radv
2023-03-15Merge pull request #9931 from liamwhite/schedliamwhite
vk_scheduler: split work queue waits and execution waits
2023-03-15vulkan: disable extendedDynamicState3ColorBlendEquation on radvLiam
2023-03-14Merge pull request #9933 from vonchenplus/texture_formatliamwhite
video_core: Update texture format
2023-03-14video_core: Better defined ImageInfo parametersFengChen
2023-03-13Merge pull request #9943 from vonchenplus/gentlemanliamwhite
video_core: Fix inline_index and draw_texture error
2023-03-12vk_scheduler: split work queue waits and execution waitsLiam
2023-03-12general: fix spelling mistakesLiam
2023-03-12video_core: Fix ogl status error when draw_textureFengChen
2023-03-12video_core: Invalid index_buffer flag when inline_index drawFengChen
2023-03-11Merge pull request #9913 from ameerj/acc-dma-refactorFernando S
AccelerateDMA: Refactor Buffer/Image copy code and implement for OGL
2023-03-10Merge pull request #9925 from ameerj/gl-sync-signalliamwhite
OpenGL: Prefer glClientWaitSync for OGLSync objects
2023-03-10Merge pull request #9917 from Morph1984/the-real-timeliamwhite
native_clock: Re-adjust the RDTSC frequency to its real frequency
2023-03-10video_core: Update texture formatFeng Chen
2023-03-09Merge pull request #9822 from ameerj/buffcache-ssbo-addrliamwhite
buffer_cache: Add logic for non-NVN storage buffer tracking
2023-03-08OpenGL: Prefer glClientWaitSync for OGLSync objectsameerj
At least on Nvidia, glClientWaitSync with a timeout of 0 (non-blocking) is faster than glGetSynciv of GL_SYNC_STATUS.
2023-03-08Merge pull request #9896 from Kelebek1/d24s8liamwhite
Check all swizzle components for red, not just [0]
2023-03-07core: Promote CPU/GPU threads to time criticalMorph
And also demote Audren and CoreTiming to High thread priority.
2023-03-07general: fix type inconsistenciesLiam
2023-03-07Merge pull request #9889 from Morph1984/time-is-tickingliamwhite
core_timing: Reduce CPU usage on Windows
2023-03-06gl_rasterizer: Implement AccelerateDMA DmaBufferImageCopyameerj
2023-03-06Refactor AccelerateDMA codeameerj
2023-03-05Engines: Implement Accelerate DMA Texture.Fernando Sahmkow
2023-03-05core_timing: Use higher precision sleeps on WindowsMorph
The precision of sleep_for and wait_for is limited to 1-1.5ms on Windows. Using SleepForOneTick() allows us to sleep for exactly one interval of the current timer resolution. This allows us to take advantage of systems that have a timer resolution of 0.5ms to reduce CPU overhead in the event loop.
2023-03-03Merge pull request #9884 from liamwhite/service-cleanupMorph
service: miscellaneous cleanups
2023-03-04Check all swizzle components for red, not just [0], pass float border color ↵Kelebek1
rather than int
2023-03-03gpu_thread: Use bounded queueBehunin
2023-03-01vulkan_common: disable vertexInputDynamicState on unsupported driverLiam