summaryrefslogtreecommitdiff
path: root/Source/Core/VideoCommon/RenderBase.h
AgeCommit message (Collapse)Author
2025-03-12VideoCommon: Rename Renderer to EFBInterface.Jordan Woyak
2025-03-10VideoCommon: Don't merge EFBPoke AsyncRequests.Jordan Woyak
2023-02-09Cleanup headersScott Mansell
2023-02-09Move UseVertexDepthRange() out of RendererScott Mansell
There wasn't really a good place for it, but this will do
2023-02-09Move m_prev_efb_format into FramebufferManagerScott Mansell
2023-02-09Move WidescreenHeuristic to it's own classScott Mansell
It's about the only thing left in renderer
2023-02-09Lint fixesScott Mansell
2023-02-09Move xfb tracking and IR scaling out of RenderBaseScott Mansell
2023-02-09Refactor ClearRegionScott Mansell
And fix bug where opengl was getting the wrong coordinates
2023-01-31Add some descriptions to new classesScott Mansell
2023-01-31Cleanup headersScott Mansell
2023-01-31Expose Renderer's FramecountScott Mansell
We don't want to move it, because we want to complete this refactor without changing savestate version
2023-01-31Renderer still needs to track swaps for savestatesScott Mansell
2023-01-31Split out everying remaining from SwapScott Mansell
2023-01-31Delete unused EFBHasAlphaChannel functionScott Mansell
2023-01-31Move ConfigChanged out of RenderBaseScott Mansell
There is this nice VideoConfig file that's perfect for it
2023-01-31Move GraphicsMod out of RenderBaseScott Mansell
2023-01-31Move utiltily drawing out of RenderBaseScott Mansell
2023-01-31Move BoundingBox out of RenderBaseScott Mansell
They were essentially just pass-though methods
2023-01-31Minimise include polution from RenderStateScott Mansell
2023-01-31Implement AbstractGfx for Software & NullScott Mansell
2023-01-31Split AbstractGfx out of RendererScott Mansell
Almost all the virtual functions in Renderer are part of dolphin's "graphics api abstraction layer", which has slowly formed over the last decade or two. Most of the work was done previously with the introduction of the various "AbstractX" classes, associated with texture cache cleanups and implementation of newer graphics APIs (Direct3D 12, Vulkan, Metal). We are simply taking the last step and yeeting these functions out of Renderer. This "AbstractGfx" class is now completely agnostic of any details from the flipper/hollywood GPU we are emulating, though somewhat specialized. (Will not build, this commit only contains changes outside VideoBackends)
2023-01-31Move Presenting, Dumping and ImGui out of RendererScott Mansell
2022-12-27VideoCommon: De-globalize PixelShaderManager class.Admiral H. Curtiss
2022-12-23New FrameTime/VBlank Analyzer + GraphSam Belliveau
2022-11-23Improve FPS/VPS Counting and Revamp AppearanceSam Belliveau
2022-11-06VideoCommon: Hold ImGui lock while initializing and shutting down ImGui.Admiral H. Curtiss
2022-07-21VideoBackends: Add Metal rendererTellowKrinkle
2022-06-27VideoCommon: trigger mod calls in TextureCacheBase (efb/xfb calls), ↵iwubcode
VertexManagerBase (draw calls), and VertexShaderManager (projection calls)
2021-10-04VideoCommon: Abstract bounding boxTechjar
This moves much of the duplicated bounding box code into VideoCommon, leaving only the specific buffer implementations in each backend.
2021-08-30VideoBackends / VideoCommon: allow the ability to set debug names for ↵iwubcode
shaders / textures. These names are visible in applications like RenderDoc
2021-07-05treewide: convert GPLv2+ license info to SPDX tagsPierre Bourdon
SPDX standardizes how source code conveys its copyright and licensing information. See https://spdx.github.io/spdx-spec/1-rationale/ . SPDX tags are adopted in many large projects, including things like the Linux kernel.
2021-05-31VideoCommon: Add fallback handling for bounding box when disabled or unsupportedTechjar
The SDK seems to write "default" bounding box values before every draw (1023 0 1023 0 are the only values encountered so far, which happen to be the extents allowed by the BP registers) to reset the registers for comparison in the pixel engine, and presumably to detect whether GX has updated the registers with real values. Handling these writes and returning them on read when bounding box emulation is disabled or unsupported, even without computing real values from rendering, seems to prevent games from corrupting memory or crashing. This obviously does not fix any effects that rely on bounding box emulation, but having the game not clobber its own code/data or just outright crash is a definite improvement.
2021-05-31VideoCommon: Restore BBox* forwarding functionsTechjar
2021-05-29VideoCommon: Remove BBox* forwarding functionsTechjar
2021-05-22VideoCommon: Split BBox* functions into common and backend implementation ↵Techjar
variants This will allow for some aspects of bounding box to be handled in VideoCommon instead of individual backends.
2021-03-06Convert BPMemory to BitField and enum classPokechu22
Additional changes: - For TevStageCombiner's ColorCombiner and AlphaCombiner, op/comparison and scale/compare_mode have been split as there are different meanings and enums if bias is set to compare. (Shift has also been renamed to scale) - In TexMode0, min_filter has been split into min_mip and min_filter. - In TexImage1, image_type is now cache_manually_managed. - The unused bit in GenMode is now exposed. - LPSize's lineaspect is now named adjust_for_aspect_ratio.
2020-11-27FrameDump: Start timing at 0 ticks when starting from bootJosJuice
2020-10-22VideoCommon: FrameDump fixes/cleanups.Jordan Woyak
2020-10-03InputCommon: Introducing the "Dynamic Input Texture". Configuration links ↵iwubcode
an emulated input action to an image based on what host key is defined for that emulated input. Specific regions are called out in configuration that mark where to replace an input button with a host key image.
2020-08-06Remove wait_for_completion parameter from Renderer::SaveScreenshotJosJuice
This is now unused. Seems like it was an improper fix (there would be a race if saving the screenshot took longer than 2 seconds) back when it was used too.
2020-02-09VideoCommon: Tweak widescreen heuristic and clean up some related Renderer ↵Jordan Woyak
logic.
2019-10-02Renderer: Draw ImGui interface to both eyesStenzek
2019-08-28Core: Use move semantics for Renderer::SaveScreenshotSilent
2019-08-04VideoCommon/RenderBase: Make functions const where applicableLioncash
2019-07-24TextureCache: Support saving cache entries, including EFB copiesStenzek
2019-07-16VideoCommon: Remove unused MathUtil.h include from VideoCommon.hLioncash
This header doesn't actually make use of MathUtil.h within itself, so this can be removed. Many other source files used VideoCommon.h as an indirect include to include MathUtil.h, so these includes can also be adjusted. While we're at it, we can also migrate valid inclusions of VideoCommon.h into cpp files where it can feasibly be done to minimize propagating it via other headers.
2019-06-30Merge pull request #8128 from altimumdelta/FrameDumpUpgradePrep1Connor McLaughlin
Code: Rename AVIDump to FrameDump
2019-06-30VideoCommon: Rename AVIDump to FrameDumpaltimumdelta
2019-06-08Merge pull request #8049 from stenzek/cropConnor McLaughlin
Renderer: Adjust source rectangle when crop would draw off screen