summaryrefslogtreecommitdiff
path: root/Source/Core/VideoCommon
AgeCommit message (Collapse)Author
2015-12-02Merge pull request #2687 from AdmiralCurtiss/temp-settings-ini-hotfixstableMarkus Wick
Config Hotfix: Prevent per-game settings (ie. GameINI) being stored to the global user configuration.
2015-09-23Merge pull request #3025 from Tilka/fixfixRyan Houdek
VertexLoaderX64: fix 2GB warnings
2015-09-01Merge pull request #2894 from Sonicadvance1/no_more_eaten_canaryMarkus Wick
Fix the shader overrunning our max shader size.
2015-08-13Merge pull request #2024 from RisingFog/irguiMarkus Wick
Add UI Support for up to 8x Internal Resolutions
2015-07-11Fix FreeBSD buildJeffrey Pfau
2015-07-02Config: Hotfix to prevent per-game settings from ie. GameINIs being stored ↵Admiral H. Curtiss
to the global user configuration.
2015-06-24D3D: Cosmetics.Jules Blok
Merge two cases which should've already been merged.
2015-06-24Quick fix for an invalid iteratormimimi085181
2015-06-22Revert "GeometryShaderGen: Don't use `centroid in` for input variables."degasus
This reverts commit 4cbaddb7ad1e84946a6fb1af1d853af15be90615.
2015-06-10GeometryShaderGen: Consistently use xfmem just as the vertex shader.Jules Blok
There are very rare conditions in which xfmem can actually desync from bpmem.
2015-06-10GeometryShaderGen: Don't use `centroid in` for input variables.Jules Blok
2015-06-09Merge pull request #2097 from mimimi085181/find-textures-by-hashMarkus Wick
Search the texture cache for small textures by address and hash
2015-06-09Merge pull request #2533 from degasus/syncgpuJules Blok
Fifo: Rewrite SyncGPU
2015-06-08VideoSW: rewrite lighting attenuationNanoByte011
- Fixes remaining lighting issues (Mario Tennis, etc) - Apply same fixes to Software Renderer - Corrected zero length light direction vector to resolve with normal direction (essentially becomes LIGHTDIF_NONE which was what I was after)
2015-06-08Fifo: Rewrite SyncGpudegasus
The new implementation has 3 options: SyncGpuMaxDistance SyncGpuMinDistance SyncGpuOverclock The MaxDistance controlls how many CPU cycles the CPU is allowed to be in front of the GPU. Too low values will slow down extremly, too high values are as unsynchronized and half of the games will crash. The -MinDistance (negative) set how many cycles the GPU is allowed to be in front of the CPU. As we are used to emulate an infinitiv fast GPU, this may be set to any high (negative) number. The last parameter is to hack a faster (>1.0) or slower(<1.0) GPU. As we don't emulate GPU timing very well (eg skip the timings of the pixel stage completely), an overclock factor of ~0.5 is often much more accurate than 1.0
2015-06-07Merge pull request #2517 from comex/netplay-timebase-rbcomex
[rebased] Compare timebase of netplay users to detect desyncs.
2015-06-07[AArch64] Implement ZFreeze cacheRyan Houdek
2015-06-07zfreeze: cache vertex positionsTillmann Karras
Suggested by degasus.
2015-06-07VertexLoaderX64: revert 9da86092aeb1fda7470a661a36Tillmann Karras
I can't reproduce that it's actually faster and it will definitely be slower with position caching for zfreeze.
2015-06-06Fix indeterminism in GPU thread mode.comex
2015-06-06VideoBackends: Allow the viewport to use the full depth range.Jules Blok
2015-06-05Search the texture cache for small textures by address and hashmimimi085181
This fixes issue 6563: https://code.google.com/p/dolphin-emu/issues/detail?id=6563 This PR adds a 2nd map to texture cache, which uses the hash as key. Cache entries from this new map are used only if the address matches or if the texture was fully hashed. This restriction avoids false positive cache hits. This results in a possible situation where safe texture cache accuracy could be faster than the fast one. Small textures means up to 1KB for fast texture cache accuracy, 4KB for medium, and all textures for safe accuracy. Since this adds a small overhead to all texture cache handling, some regression testing would be nice. Games, which use a lot of textures the same time, should be affected the most.
2015-06-04Merge pull request #2516 from comex/hires-oopscomex
Undo accidental screwup of some HiresTextures code from project-moration
2015-06-04Use PanicAlertT instead of PanicAlert when appropriateJosJuice
I tried to change messages that contained instructions for users, while avoiding messages that are so technical that most users wouldn't understand them even if they were in the right language.
2015-06-04Undo accidental screwup of some HiresTextures code from project-moration.comex
This is why I should wait for people to review, even if I get annoyed that nobody seems to care. :duncecap:
2015-06-03VertexLoaderX64: generate PICTillmann Karras
Address static memory relative to a base register, analog to what we're doing with PPCSTATE in the CPU JIT. This allows executable memory for the vertex loader JIT to be allocated anywhere, not just within 2 GiB of static data. Fixes issue 8180.
2015-06-02Merge pull request #2470 from degasus/syncgpucomex
Common: Blocking Loop (extracted from Fifo.cpp)
2015-06-02Merge pull request #1556 from comex/project-morationcomex
Rudimentary version of Wii IPC determinism. Ported from my old udpnet branch.
2015-05-31Merge pull request #2480 from phire/GamesDoWeirdShitMarkus Wick
Fix invalid pointer errors in Burnout 2.
2015-05-31Merge pull request #2474 from Tilka/zfreezeflacs
zfreeze: fix 2-component positions
2015-05-30Common: Update BlockingLoop to only use one atomic.degasus
This merges two atomic<bool> into one atomic<int>. We did move the bit from one bool to another, now we can use operator--.
2015-05-30Fifo: Extract syncing loopdegasus
It's now a new helper function within common.
2015-05-30Add a dirty flag for arraybases.Scott Mansell
Only loop through and call getPointers when something has actually changed. Worth about 2-4% speedup un SMG over the previous commit.
2015-05-30Clean up cached_arraybases. Update VideoSW to new scheme.Scott Mansell
Move ownership of cached_arraybases from CPMemory to VertexLoaderManager to better match it usage.
2015-05-29zfreeze: fix 2-component positionsTillmann Karras
2015-05-29Fix invalid pointer errors in Burnout 2.Scott Mansell
Yet another story of games loading weird shit into registers. For some reason, Burnout 2 would (in rare situations) load invalid addresses into cp_state.array_bases. What would the real hardware do in this situation? Who knows, Burnout 2 doesn't actually enable the vertex array with the invalid address so nothing kinky happens. But dolphin tries to optimise things and starts using the address as soon as it is loaded into memory. This causes GetPointer (which is now much more vocal) to throw an error. The Fix: We don't call GetPointer until we are sure the vertex array has been enabled.
2015-05-29Merge pull request #2478 from degasus/fix_prefetchingRyan Houdek
HiresTexture: Fix prefetching with broken textures
2015-05-29HiresTexture: Fix prefetching with broken texturesdegasus
2015-05-28Pass strings by const reference where possibleLioncash
2015-05-28Rewrite FileSearch and improve ScanDirectoryTree.comex
- FileSearch is now just one function, and it converts the original glob into a regex on all platforms rather than relying on native Windows pattern matching on there and a complete hack elsewhere. It now supports recursion out of the box rather than manually expanding into a full list of directories in multiple call sites. - This adds a GCC >= 4.9 dependency due to older versions having outright broken <regex>. MSVC is fine with it. - ScanDirectoryTree returns the parent entry rather than filling parts of it in via reference. The count is now stored in the entry like it was for subdirectories. - .glsl file search is now done with DoFileSearch. - IOCTLV_READ_DIR now uses ScanDirectoryTree directly and sorts the results after replacements for better determinism.
2015-05-27CommandProcessor: Replace volatile usages with atomicsLioncash
Also remove said variables from being globals.
2015-05-27PixelEngine: Replace volatile usages with atomicsLioncash
Also removes two unused volatile variables.
2015-05-27Merge pull request #2463 from lioncash/fifoMarkus Wick
Fifo: Replace usages of volatile with atomics
2015-05-27Fifo: Replace usages of volatile with atomicsLioncash
2015-05-27Merge pull request #2461 from lioncash/barrierMatthew Parlane
Thread: Remove unused Barrier class
2015-05-26Thread: Remove unused Barrier classLioncash
2015-05-26D3D: Depth range inversion.galop1n
Credits go to Galop1n for designing this technique and to BhaaLseN for cleaning up the commit.
2015-05-26Merge pull request #2162 from degasus/prefetch_texMarkus Wick
CustomTexture: prefetch all available textures
2015-05-25Merge pull request #2382 from RisingFog/vfwfixRyan Houdek
Fix video dumping incorrect lengths for some games in Windows
2015-05-25Merge pull request #2357 from degasus/ogl_efb_poke_mergeRyan Houdek
ogl: efb poke merge