mirror of
https://github.com/InstanceBrick/nightcap.git
synced 2026-10-19 19:01:31 +02:00
vr.anti_aliasing now takes fxaa, smaa or off. SMAA runs the reference implementation (third_party/smaa, MIT) at its High preset: luma edge detection and blending weights into per-eye images, then neighborhood blending into the runtime's swapchain through FXAA's final pass. Its area and search lookup textures are uploaded once per device. If SMAA cannot be set up, the eyes fall back to FXAA. Also export vr.anti_aliasing from config.yaml: the VR backend reads the process environment, so the setting only worked as an environment variable. On a Quest 2 through SteamVR at 120 Hz (2136x2236 per eye), SMAA ran at 118.6 fps against 118.8 for FXAA, with p99 frame times of 10.1 and 9.5 ms.
196 lines
8.7 KiB
YAML
196 lines
8.7 KiB
YAML
# Modified by vii from komaruworld/mocktail. See README "About this fork".
|
|
# Mocktail configuration.
|
|
# The file is created once with mode 0600. Mocktail never replaces your edits.
|
|
|
|
# Integer: configuration schema version. Only version 1 is supported.
|
|
version: 1
|
|
|
|
# One-line device preset. Short aliases pc, mobile, and console are accepted.
|
|
# Presets: pc-windows-11, mobile-pixel-7, console-ps5.
|
|
# Use the mapping below for a custom profile.
|
|
device: pc-windows-11
|
|
|
|
# Detailed alternative (replace the scalar device line above):
|
|
# device:
|
|
# type: mobile
|
|
# platform: Android
|
|
# name: Google Pixel 9 Pro
|
|
# manufacturer: Google
|
|
# model: Pixel 9 Pro
|
|
# brand: google
|
|
# code: komodo
|
|
# sku: pixel-9-pro
|
|
# soc_model: Google Tensor G4
|
|
# touch: true
|
|
# mouse: false
|
|
# keyboard: false
|
|
|
|
runtime:
|
|
# Boolean (default: false): start without a visible SDL window.
|
|
headless: false
|
|
# String (optional): use a specific x86_64 libroblox.so instead of the
|
|
# active verified payload.
|
|
# roblox_library: /absolute/path/to/libroblox.so
|
|
|
|
appearance:
|
|
# String (default: roblox): use Roblox's saved account theme. Supported
|
|
# overrides: dark, light, or system (follow the desktop color scheme).
|
|
theme: roblox
|
|
|
|
graphics:
|
|
# String (default: direct-vulkan): graphics backend. Use opengl on hardware
|
|
# without a working Vulkan driver; OpenGL ES 3.0 or newer is required.
|
|
# Recommended values: direct-vulkan, opengl, system, angle-vulkan.
|
|
backend: direct-vulkan
|
|
# Optional string or integer: Mocktail frame-rate override. Leave commented
|
|
# (or use -1) to let Roblox Basic Settings own the cap. Supported overrides:
|
|
# display, unlimited, or any positive integer; fixed values are forwarded to
|
|
# DFIntTaskSchedulerTargetFps without a whitelist.
|
|
# frame_rate_limit: -1
|
|
# Optional presentation synchronization override: auto, on, or off. auto
|
|
# presents through the lowest-latency synchronized mode the driver offers
|
|
# unless frame_rate_limit is unlimited.
|
|
# vsync: off
|
|
|
|
# vr:
|
|
# String (default: off): experimental VR through OpenXR on supported Roblox
|
|
# builds. off always starts on the desktop. on always starts in VR, like
|
|
# --vr. auto starts in VR when SteamVR is already running with a connected
|
|
# headset (ALVR included), and on the desktop otherwise. auto never starts
|
|
# SteamVR. --vr and --no-vr override this for one launch. The older
|
|
# enabled: true/false still works as on/off; set one or the other.
|
|
# Standalone OpenXR test scene: mocktail-vr-probe --scene.
|
|
# mode: off
|
|
# String (default: fxaa): smooth jagged edges in the headset. Roblox draws
|
|
# the VR eyes without anti-aliasing, so each eye is filtered on its way to
|
|
# the headset. fxaa is the cheapest. smaa finds edges more precisely and
|
|
# keeps text and fine detail sharper, at a little more GPU time. off sends
|
|
# the eyes as rendered.
|
|
# anti_aliasing: fxaa
|
|
# Optional string or integer: frame-rate limit used instead of
|
|
# graphics.frame_rate_limit while VR is active. Same values: -1 (Roblox's
|
|
# own cap, usually 60), display, unlimited, or any positive integer. The
|
|
# default, unlimited, lets the OpenXR runtime pace frames at the headset's
|
|
# refresh rate.
|
|
# frame_rate_limit: unlimited
|
|
|
|
performance:
|
|
# Boolean (default: false): size Roblox scheduler/render queues from every
|
|
# physical CPU core. A place's Lua/main thread can still remain serial.
|
|
multithreaded_rendering: false
|
|
# String (default: throughput): `throughput` makes every physical core
|
|
# available to Roblox worker pools; `latency` preserves Roblox-managed pool
|
|
# sizes and coalesces midphase work. Supported: auto, latency, throughput.
|
|
physics_worker_mode: throughput
|
|
# Integer MiB (default: 0): hard RAM cap for the Mocktail process tree.
|
|
# 0 disables the cap. cgroup v2 also disables swap; other Linux systems use
|
|
# an RSS+swap watchdog. 6144 is a conservative starting point for 32 GiB RAM.
|
|
memory_limit_mb: 0
|
|
# String (default: auto): request Feral GameMode when its host daemon and
|
|
# client library are available. Supported values: auto, on, off.
|
|
gamemode: auto
|
|
|
|
audio:
|
|
# String (default: default): `default` follows the host system output.
|
|
# To pin output, copy an exact SDL device name printed during startup.
|
|
output_device: default
|
|
# String (default: default): input device name, `id:<number>` printed during
|
|
# startup, or `disabled`. IDs disambiguate duplicate names but may change
|
|
# between boots; prefer the exact device name when it is unique.
|
|
input_device: default
|
|
|
|
input:
|
|
# Boolean (default: false): send mouse look deltas in the host's own units.
|
|
# They are otherwise scaled by the window's pixel density divided by the
|
|
# desktop display scale, which cancels to 1.0 unless fractional scaling makes
|
|
# the two disagree. Turn this on when first-person aiming feels too slow or
|
|
# too fast under fractional scaling. The pointer position is unaffected.
|
|
raw_mouse: false
|
|
|
|
integrations:
|
|
fleasion:
|
|
# Boolean (default: false): trust Fleasion's CA without editing Roblox files.
|
|
enabled: false
|
|
# String: match Fleasion's routing mode: env or hosts.
|
|
proxy_mode: env
|
|
# Integer: Fleasion's local HTTP proxy port in env mode.
|
|
proxy_port: 58443
|
|
# Optional absolute public CA path. Default: $XDG_CONFIG_HOME/Fleasion/proxy_ca/ca.crt
|
|
# or ~/.config/Fleasion/proxy_ca/ca.crt. Never select ca.key.
|
|
# ca_certificate: /home/user/.config/Fleasion/proxy_ca/ca.crt
|
|
discord_rpc:
|
|
# Boolean (default: true): publish Nightcap activity to Discord Desktop.
|
|
# This never signs in to Discord and never reads an account token.
|
|
enabled: true
|
|
# Boolean (default: true): show the current Roblox experience name.
|
|
show_place_name: true
|
|
# Boolean (default: true): show how long the current session has run.
|
|
show_elapsed_time: true
|
|
join:
|
|
# Boolean (default: true): let friends open the current experience. When
|
|
# Roblox provides a public server ID, the button targets that server.
|
|
enabled: true
|
|
# Boolean (default: true): never expose private or reserved joins.
|
|
public_servers_only: true
|
|
# button_label: Join Server
|
|
# English defaults. Uncomment only the lines you want to customize.
|
|
# Text and image fields accept {place_name}, {place_icon}, and
|
|
# {creator_name}. A field that expands an empty placeholder is left out,
|
|
# and a "" title shows the app name.
|
|
# title, state, and the images fields may be "" to hide them.
|
|
# text:
|
|
# browsing: Browsing experiences
|
|
# joining: Joining an experience
|
|
# playing: "Playing {place_name}"
|
|
# state: "by {creator_name}"
|
|
# unknown_place: Unknown experience
|
|
# title: Roblox
|
|
# Images take an https:// URL, or an asset key uploaded to application_id.
|
|
# large: "" hides both images; the small image needs a large one.
|
|
# images:
|
|
# large: "{place_icon}"
|
|
# large_text: "{place_name}"
|
|
# small: roblox_small
|
|
# small_text: Roblox
|
|
# Advanced: overrides the application bundled by the package maintainer.
|
|
# application_id: 123456789012345678
|
|
|
|
window:
|
|
# Integer (default: 1280): initial window width in logical desktop units.
|
|
width: 1280
|
|
# Integer (default: 720): initial window height in logical desktop units.
|
|
height: 720
|
|
# String (default: Roblox): window title.
|
|
title: Roblox
|
|
# Boolean (default: false): render at physical display-pixel density instead
|
|
# of the logical desktop resolution. Enable only for sharper high-DPI output.
|
|
high_dpi: false
|
|
|
|
network:
|
|
# Boolean (default: false): follow the host HTTP/SOCKS5 proxy and
|
|
# automatically use its current port. Do not combine with a fixed proxy.
|
|
use_system_proxy: false
|
|
# Optional fixed HTTP proxy. Uncomment both values together. The host must
|
|
# not contain a scheme such as http://.
|
|
# String (optional, default: disabled): proxy host name or IP address.
|
|
# proxy_host: 127.0.0.1
|
|
# Integer (optional, default: disabled): proxy TCP port from 1 to 65535.
|
|
# proxy_port: 8080
|
|
# Absolute path (optional): custom PEM CA bundle. Mocktail reads this file
|
|
# directly and does not replace it during Roblox payload updates.
|
|
# ca_bundle: /home/user/.config/mocktail/cacert.pem
|
|
|
|
updates:
|
|
# Boolean (default: true): check the latest Roblox version, derive an exact
|
|
# HostAbi profile, run two isolated canaries with the selected graphics
|
|
# backend, and promote only on success. An existing current payload is
|
|
# preserved when probation fails.
|
|
automatic: true
|
|
# String (default: apk-pure): direct x86_64 APK provider selection. Both
|
|
# accepted values resolve the provider chain, which currently starts with
|
|
# APKPure. Supported values: auto, apk-pure.
|
|
source: apk-pure
|
|
# Reserved for desktop update integrations. `mocktail_updater` itself never
|
|
# launches another process after changing the active payload.
|
|
launch_after_update: false
|