summaryrefslogtreecommitdiff
path: root/Source/Core/VideoBackends
AgeCommit message (Collapse)Author
2020-04-28Merge pull request #8689 from howard0su/cleanup_signLéo Lam
Remove warnings of -Wsign-compare
2020-04-27Merge pull request #8696 from howard0su/cleanup_shadowLéo Lam
Cleanup warnings of -Wmissing-declarations
2020-04-07Vulkan: Switch from vkCreateMacOSSurfaceMVK() to vkCreateMetalSurfaceEXT()Stenzek
Since we are calling this off the UI thread, we can't use anything which accesses the underlying NSView object. We create and set the Metal layer on the UI thread before the video backend is initialized. This extension is both compatible with MoltenVK and gfx-portability for accepting a layer at surface creation.
2020-03-25Remove warnings of -Wsign-compareJun Su
Cast the variable to the coresponding type.
2020-03-24Cleanup warnings of -Wmissing-declarationsJun Su
Add static to the functions which is not intentionally export to big scope.
2020-03-11Vulkan: Pass CAMetalLayer to MoltenVK instead of NSViewStenzek
Gets rid of the warning for calling [NSView layer] off the main thread.
2020-03-11VideoBackends: Make it possible for PrepareWindow to change the surfaceStenzek
Again, needed for MoltenVK.
2020-01-31Vulkan: Treat VK_SUBOPTIMAL_KHR as VK_SUCCESS on AndroidStenzek
Android 10 seems to expect a prerotated/transformed swap chain for optimal presentation. For now, until we implement that, just ignore the hint.
2020-01-31Vulkan: Log when a swap chain resize is occurringStenzek
This may help us debug performance problems in the future.
2020-01-24Add Dolphin version and current video backend to shader compilation logsRyan Meredith
2019-12-29Use pre-increment for iterators instead of post-increment.David Korth
Pre-increment is more efficient, since it doesn't have to return the old iterator.
2019-12-29OGL/Render.cpp, InitDriverInfo(): Use std::string_view to eliminate string ↵David Korth
copies. Consolidate the NVIDIA Tegra and non-Tegra checks into one branch.
2019-12-28Add an ARM64 target to Visual Studio projectsStenzek
2019-12-19Include <memory> for std::unique_ptr in DXContext.hCasey Carter
2019-12-09Vulkan: Call VertexManagerBase initializeStenzek
2019-12-09D3D12: Call VertexManagerBase initializeStenzek
2019-12-07Merge pull request #8513 from lioncash/bounding-boxAnthony
VideoCommon/BoundingBox: Make interface for querying bounding box data
2019-12-05VideoCommon/BoundingBox: Make interface for querying bounding box dataLioncash
Rather than expose the bounding box members directly, we can instead provide an interface for code to use. This makes it nicer to transition from global data, as the interface function names are already in place.
2019-12-05VideoCommon/IndexGenerator: Eliminate static stateLioncash
Now that we've extracted all of the stateless functions that can be hidden, it's time to make the index generator a regular class with active data members. This can just be a member that sits within the vertex manager base class. By deglobalizing the state of the index generator we also get rid of the wonky dual-initializing that was going on within the OpenGL backend. Since the renderer is always initialized before the vertex manager, we now only call Init() once throughout the execution lifecycle.
2019-11-30Update VS projects/solutions to VS2019Stenzek
2019-11-28Common: Unify logging namespace with CommonLioncash
Previously the logging was a in a little bit of a disarray. Some things were in namespaces, and other things were not. Given this code will feature a bit of restructuring during the transition over to fmt, this is a good time to unify it under a single namespace and also remove functions and types from the global namespace. Now, all functions and types are under the Common::Log namespace. The only outliers being, of course, the preprocessor macros.
2019-11-10D3DCommon: Remove unused GetDebugObjectName and tidy up SetDebugObjectNameSilent
2019-11-10D3DCommon: Migrate few remaining raw pointers to WRL::ComPtrSilent
2019-11-08Merge pull request #8378 from stenzek/quad-buffer-stereoConnor McLaughlin
Various quad-buffered ("HDMI 3D") stereo fixes
2019-10-31Vulkan: Exclusive fullscreen support via VK_EXT_full_screen_exclusiveStenzek
2019-10-31Vulkan: Explicitly enable VK_KHR_get_physical_device_properties2Stenzek
This was missing from the subgroup PR way back.
2019-10-31Vulkan: Allow runtime querying of enabled extensionsStenzek
2019-10-31Merge pull request #8379 from stenzek/maliConnor McLaughlin
Vulkan: Optimizations for Mali with EFB2RAM on
2019-10-04Drop 3D Vision SupportStenzek
2019-10-02Vulkan: Add a DriverDetails bug for "slow cached readback memory"Stenzek
Using the cached memory type appears to be slower on Mali drivers, with ~10-15% CPU spent in the __pi___inval_cache_range kernel function.
2019-10-02Vulkan: Add strict flag to memory type selectionStenzek
2019-10-02D3D11: Initialize shader cache before rendererStenzek
Otherwise the shaders we need for e.g. postprocessing are null.
2019-08-08Merge pull request #8276 from stenzek/adreno-efb-accessConnor McLaughlin
Fix CPU EFB access on Adreno with Vulkan backend
2019-08-02D3D11: Only use integer RTV when logic op is supported+enabledStenzek
2019-07-31Vulkan: Use correct aspect for D24S8 texturesStenzek
2019-07-30Merge pull request #8258 from CookiePLMonster/dx11.1-detection-fixesConnor McLaughlin
D3D11 resources refactor and DX11.1 feature detection fixes
2019-07-29D3D11: Add extra logging to StateCache::GetSilent
2019-07-29D3D11: Show a warning message about unsupported features when switching to ↵Silent
D3D11 backend on Windows 7
2019-07-29D3D11: Query for output merger logic op support and use logic op code only ↵Silent
if supported Previously code assumed that if DX11.1 runtime is supported, logic ops will, but Windows 7 SP1 with a Platform Update supports DX11.1 runtime without logic ops. This created pretty jarring visual artifacts, which now should be gone OR replaced with much less jarring errors.
2019-07-29D3D11: Ownership fixes for objects in DXTextureSilent
2019-07-29D3D11: Ownership fixes for objects in D3DStateSilent
2019-07-29D3D11: Correctly poll ALL possible AA levels.Silent
2019-07-28Merge pull request #8266 from lioncash/shadowingConnor McLaughlin
D3DCommon/Shader: Use std::optional where applicable
2019-07-28Merge pull request #8265 from lioncash/viewConnor McLaughlin
OGL/ProgramShaderCache: Use std::string_view where applicable
2019-07-27VideoBackends/Null: Add missing override specifiersLioncash
Applies a missing override specifier to VertexManager's destructor.
2019-07-27VideoBackends/Null: Apply final to classes where applicableLioncash
These aren't intended to be further specialized, so we can make this obvious with final.
2019-07-27VideoBackends/Null: Remove unnecessary constructors and destructorsLioncash
Removes constructors and destructors that don't actually provide any behavior (i.e. doesn't constain generated code related to non-trivial members in a cpp file, etc). Lessens the amount of code present.
2019-07-27VideoBackends/Null: Remove unnecessary includesLioncash
2019-07-26D3DCommon/Shader: Use std::optional with CompileShader()Lioncash
Allows removing the use of an out parameter, making it nicer to use.
2019-07-26D3DCommon/Shader: Create vector via iterators in CreateByteCode()Lioncash
Same behavior, but without unnecessary zeroing of data contents. Instead, we supply the dataset to use directly.