Trilinear filtering param

update-vulkan-gen
FlightlessMango 1 year ago
parent 5fe07a0ac3
commit de29e057de

@ -380,6 +380,7 @@ Parameters that are enabled by default have to be explicitly disabled. These (cu
| `wine` | Shows current Wine or Proton version in use |
| `picmip` | Mip-map LoD bias. Negative values will increase texture sharpness (and aliasing). Positive values will increase texture blurriness (-16 to 16) |
| `af` | Anisotropic filtering level. Improves sharpness of textures viewed at an angle (0 to 16) |
| `trilinear` | Force trilinear filtering |
Example: `MANGOHUD_CONFIG=cpu_temp,gpu_temp,position=top-right,height=500,font_size=32`
Because comma is also used as option delimiter and needs to be escaped for values with a backslash, you can use `+` like `MANGOHUD_CONFIG=fps_limit=60+30+0` instead.

@ -552,6 +552,7 @@ parse_overlay_env(struct overlay_params *params,
params->enabled[OVERLAY_PARAM_ENABLED_log_versioning] = 0;
params->enabled[OVERLAY_PARAM_ENABLED_hud_compact] = 0;
params->enabled[OVERLAY_PARAM_ENABLED_exec_name] = 0;
params->enabled[OVERLAY_PARAM_ENABLED_trilinear] = 0;
}
#define OVERLAY_PARAM_BOOL(name) \
if (!strcmp(#name, key)) { \
@ -707,6 +708,7 @@ parse_overlay_config(struct overlay_params *params,
params->enabled[OVERLAY_PARAM_ENABLED_log_versioning] = 0;
params->enabled[OVERLAY_PARAM_ENABLED_hud_compact] = 0;
params->enabled[OVERLAY_PARAM_ENABLED_exec_name] = 0;
params->enabled[OVERLAY_PARAM_ENABLED_trilinear] = 0;
params->options.erase("full");
}
for (auto& it : params->options) {

@ -91,6 +91,7 @@ typedef unsigned long KeySym;
OVERLAY_PARAM_BOOL(battery_watt) \
OVERLAY_PARAM_BOOL(battery_time) \
OVERLAY_PARAM_BOOL(exec_name) \
OVERLAY_PARAM_BOOL(trilinear) \
OVERLAY_PARAM_CUSTOM(fps_sampling_period) \
OVERLAY_PARAM_CUSTOM(output_folder) \
OVERLAY_PARAM_CUSTOM(output_file) \

@ -1948,6 +1948,12 @@ static VkResult overlay_CreateSampler(
} else if (params->af == 0)
sampler.anisotropyEnable = VK_FALSE;
if (params->enabled[OVERLAY_PARAM_ENABLED_trilinear]){
sampler.magFilter = VK_FILTER_LINEAR;
sampler.minFilter = VK_FILTER_LINEAR;
sampler.mipmapMode = VK_SAMPLER_MIPMAP_MODE_LINEAR;
}
struct device_data *device_data = FIND(struct device_data, device);
VkResult result = device_data->vtable.CreateSampler(device, &sampler, pAllocator, pSampler);

Loading…
Cancel
Save