summaryrefslogtreecommitdiff
path: root/Source/Core/VideoBackends/D3D/D3DState.cpp
AgeCommit message (Collapse)Author
2025-11-22AudioCommon / VideoBackends / WinUpdater - cleanup WRL codeoltolm
2025-08-23VideoBackends / VideoCommon: rename member variables in RenderState to be ↵iwubcode
consistent
2025-08-17VideoBackends: allow custom pixel uniforms to be passed to the vertex shader ↵iwubcode
as well
2025-03-17Enable anisotropic filtering when the game requests itPokechu22
2025-03-09VideoCommon: Move backend_info out of VideoConfig struct.Jordan Woyak
2023-10-06VideoBackends / VideoCommon: add new uniform buffer object for custom shader ↵iwubcode
materials (slot 3, geometry shader buffer moves to slot 4 if available)
2023-06-28VideoBackends: support multiple compute images for some backends (D3D, OGL, ↵iwubcode
Vulkan)
2023-06-03VideoBackends: add support to allow rendering to multiple output texturesiwubcode
2023-02-24VideoBackends: rework d3d11 to specify samplers/bound textures using a ↵iwubcode
bitset with a constant size, instead of hardcoding each individual enumeration value
2023-02-10VideoCommon: add constant value to set the allowed maximum number of pixel ↵iwubcode
samplers
2022-12-18Common: Use C++20 <bit> header in BitSet.hJosJuice
2022-06-24D3D / VideoCommon: generate HLSL from SPIRViwubcode
2022-01-09VideoBackends/D3D11: Include HRESULT in error messagesPokechu22
2022-01-09VideoBackends/D3D: Eliminate CHECK in favor of ASSERT_MSGPokechu22
2021-12-10Treewide: Adjust order of includesPokechu22
2021-11-17VideoCommon: Expose SamplerState to shadersPokechu22
The benefit to exposing this over the raw BP state is that adjustments Dolphin makes, such as LOD biases from arbitrary mipmap detection, will work properly.
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-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.
2021-01-27rename D3DCommon/Common to D3DCommon/D3DCommonShawn Hoffman
2020-11-09D3D: Migrate logging over to fmtLioncash
Migrates the logging over to the fmt-capable logger.
2019-07-29D3D11: Add extra logging to StateCache::GetSilent
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 D3DStateSilent
2019-03-29D3D11: Make stateman a unique_ptrStenzek
2019-03-29D3D11: Use ComPtr smart pointer where possibleStenzek
2019-03-29D3D11: Use D3DCommon where appropriateStenzek
2019-02-19Move most backend functionality to VideoCommonStenzek
2018-04-23Common: Move BitSet helper functions into the Common namespaceLioncash
2018-03-10D3D: Make StateCache thread safeStenzek
2018-02-22D3D: Remove state stack from tracker, set explicitly insteadStenzek
2017-11-22D3D: Make state cache part of Renderer and not staticStenzek
2017-10-27Fixed fog, lava, water in Mario Galaxy (and possibly other games) in higher ↵Tommaso Checchi
IRs by detecting & fixing the mipmaps that aren't just used for downscaling, but are handmade to create a gradient.
2017-09-11VideoBackends: Move SamplerState to commonStenzek
2017-09-11Renderer: Move cull mode to a rasterization state objectStenzek
Also moves logic for primitive handling to VideoCommon.
2017-09-11Renderer: Move depth state to VideoCommon and seperate from bpmemStenzek
2017-09-05D3D: Properly handle dual source blendingiwubcode
2017-09-04D3D: Support logic op through integer render target viewStenzek
This brings D3D to parity with OpenGL and Vulkan.
2017-09-03D3D11: Use blending state from VideoCommonStenzek
2017-09-02D3D: Eliminate redundant ID3D11DeviceChild* castsLioncash
2017-07-30D3D: Uber shader supportStenzek
2016-10-10VideoBackends: Always enable dual-source blending if supported.Jules Blok
2016-08-15VideoBackends: Enable depth clamping.Jules Blok
2016-06-24Reformat all the things. Have fun with merge conflicts.Pierre Bourdon
2016-03-24VideoCommon: Refactor TexMode0 mipmaps disabled test into a helper functionEmptyChaos
2016-03-24VideoBackends: Do not use Anisotropy on Point filtered textures.EmptyChaos
The D3D backend was always forcing Anisotropic filtering when that is enabled regardless of how the game chose to configure the texture filtering registers; this causes the same issues as "Force Filtering" without Anisotropy, such as causing game UI elements to no longer line up adjacent correctly. Historically, OpenGL's Anisotropy support has always worked "better" than D3D's due to seeming to not have this problem; unfortunately, OpenGL's Anisotropy specification only gives GL_LINEAR based filtering modes defined behavior, with only the mipmap setting being required to be considered. Some OpenGL implementations were implicitly disabling Anisotropy when the min/mag filters were set to GL_NEAREST, but this behavior is not required by the spec so cannot be relied on.
2015-09-26Common: Remove other Common prefixed headers from Common.hLioncash
2015-06-28Use emplace() instead of insert() where applicable for maps.Lioncash
2015-06-19Fix aniso filtering on d3d to not set aniso filter when using 1xMatthew Parlane
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-25Set copyright year to when a file was createdTillmann Karras