mirror of
https://github.com/doitsujin/dxvk.git
synced 2025-02-20 10:54:16 +01:00
[d3d9] implement 'samplerLodBias' as a conf option
This commit is contained in:
parent
c75ed86909
commit
5d134b877a
@ -189,7 +189,7 @@
|
||||
# Supported values: Any number between -2.0 and 1.0
|
||||
|
||||
# d3d11.samplerLodBias = 0.0
|
||||
|
||||
# d3d9.samplerLodBias = 0.0
|
||||
|
||||
# Declares vertex positions as invariant in order to solve
|
||||
# potential Z-fighting issues at a small performance cost.
|
||||
|
@ -6243,7 +6243,7 @@ namespace dxvk {
|
||||
info.mipmapMode = mipFilter.MipFilter;
|
||||
info.maxAnisotropy = float(cKey.MaxAnisotropy);
|
||||
info.useAnisotropy = cKey.MaxAnisotropy > 1;
|
||||
info.mipmapLodBias = cKey.MipmapLodBias;
|
||||
info.mipmapLodBias = cKey.MipmapLodBias + m_d3d9Options.samplerLodBias;
|
||||
info.mipmapLodMin = mipFilter.MipsEnabled ? float(cKey.MaxMipLevel) : 0;
|
||||
info.mipmapLodMax = mipFilter.MipsEnabled ? FLT_MAX : 0;
|
||||
info.reductionMode = VK_SAMPLER_REDUCTION_MODE_WEIGHTED_AVERAGE;
|
||||
|
@ -1,3 +1,5 @@
|
||||
#include "../util/util_math.h"
|
||||
|
||||
#include "d3d9_options.h"
|
||||
|
||||
#include "d3d9_caps.h"
|
||||
@ -72,6 +74,10 @@ namespace dxvk {
|
||||
this->seamlessCubes = config.getOption<bool> ("d3d9.seamlessCubes", false);
|
||||
this->textureMemory = config.getOption<int32_t> ("d3d9.textureMemory", 100) << 20;
|
||||
this->deviceLossOnFocusLoss = config.getOption<bool> ("d3d9.deviceLossOnFocusLoss", false);
|
||||
this->samplerLodBias = config.getOption<float> ("d3d9.samplerLodBias", 0.0f);
|
||||
|
||||
// Clamp LOD bias so that people don't abuse this in unintended ways
|
||||
this->samplerLodBias = dxvk::fclamp(this->samplerLodBias, -2.0f, 1.0f);
|
||||
|
||||
std::string floatEmulation = Config::toLower(config.getOption<std::string>("d3d9.floatEmulation", "auto"));
|
||||
if (floatEmulation == "strict") {
|
||||
|
@ -136,6 +136,11 @@ namespace dxvk {
|
||||
/// Don't use non seamless cube maps
|
||||
bool seamlessCubes;
|
||||
|
||||
/// Mipmap LOD bias
|
||||
///
|
||||
/// Enforces the given LOD bias for all samplers.
|
||||
float samplerLodBias;
|
||||
|
||||
/// How much virtual memory will be used for textures (in MB).
|
||||
int32_t textureMemory;
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user