summaryrefslogtreecommitdiff
path: root/Source/Core/VideoBackends/OGL/StreamBuffer.cpp
AgeCommit message (Collapse)Author
2015-05-25Update license headers to GPLv2+Tillmann Karras
2015-01-12Minor consistency changesStevoisiak
Mostly small changes, like capitalization and spelling
2014-09-08Rename Log2 and add IsPow2 to MathUtils for future useFiora
Also remove unused pow2/pow2f functions.
2014-09-04Work around Intel's failings with with buffer_storageSonicadvance1
2014-08-15OGL: Fix brace and body placementsLioncash
Also got rid of void argument specifiers. These are a carryover from C.
2014-07-04Change the comments to be more detailed.Justin Chadwick
2014-07-03Place pinned memory as top priorityJustin Chadwick
2014-06-05OGL-StreamBuffer: replace size_t with u32degasus
Yes, this matters. We align our buffer all the the time which needs a division. u64 divisions are just so slow.
2014-06-05OGL-StreamBuffer: move alignment to callerdegasus
Only the caller know if alignment is needed at all, so it can be skipped now.
2014-06-05OGL-StreamBuffer: make the SLOT calculation much easierdegasus
The size of the buffer is now power of 2, so we can use a shift instead of a division. This was at about 2% of the global CPU usage.
2014-06-05OGL-StreamBuffer: allocate fences in StreamBuffer directlydegasus
2014-06-05OGL-StreamBuffer: don't use coherent mappingdegasus
Coherent mapping seems to be much slower on fermi gpus.
2014-04-12OpenGL backend: remove useless header Globals.h.magumagu
The header has no content, so it can can just be deleted.
2014-03-29Remove all trailing whitespaces from our codebase.Pierre Bourdon
2014-03-11Fixes spacing for "for", "while", "switch" and "if"Matthew Parlane
Also moved && and || to ends of lines instead of start. Fixed misc vertical alignments and some { needed newlining.
2014-03-09clang-modernize -use-nullptrTillmann Karras
and s/\bNULL\b/nullptr/g for *.cpp/h/mm files not compiled on my machine
2014-03-09clang-modernize -add-overrideTillmann Karras
2014-02-28Various changes suggested by cppcheckTillmann Karras
- remove unused variables - reduce the scope where it makes sense - correct limits (did you know that strcat()'s last parameter does not include the \0 that is always added?) - set some free()'d pointers to NULL
2014-02-18Convert all includes to relative paths.Lioncash
2014-01-26OSX: don't avoid unsync mapping on nvida gpus just because the windows ↵degasus
driver doesn't like it OSX has their own driver, so performance issues aren't shared with the nvidia driver (unlike the closed source linux and windows nvidia driver). So now they'll also use the MapAndSync backend like all other osx drivers. fixes issue 6596 I've also cleaned up the if/else block selecting the best backend a bit.
2014-01-23OpenGL: refactor all of our StreamBuffersdegasus
The old way was to use big switch/case statements based on a type of buffer. The new one is to use inheritance. This change prohibits us to change the buffer type while running, but I doubt we'll ever do so. Performance should also be a bit better. Also a nice cleanup. Added some comments about this different kind of buffers.
2014-01-23OpenGL: change StreamBuffer in a streaming waydegasus
This is a bit slower on map_and_* because of flushing and _very_ much slower on buffer(sub)?data because of a new memcpy. But this design allow us to decode directly into a gpu buffer, eg vertexloader will profit :)
2014-01-16Remove vertex streaming hack.Tony Wasserka
NV has buffer_storage, AMD has pinned memory. Both are better than that hack which shouldn't ever have been introduced in the first place.
2014-01-09OGL: remove masking from streambufferdegasus
We used this to disable pinned memory for index buffer, but as the detection was reworked completely, it's just unused code.
2013-12-31Merge branch 'master' into buffer_storageRyan Houdek
2013-12-31Remove unnecessary Src/ foldersJasper St. Pierre