• v1.4.0-beta.1 2885660522

    Slipstream Beta 1.4.0.1
    All checks were successful
    release / build (push) Successful in 16m18s
    release / flatpak (push) Successful in 6m36s
    release / windows (push) Successful in 13m6s
    release / arch-package (push) Successful in 14s
    release / deb-package (push) Successful in 35s
    release / update-manifest (push) Successful in 0s
    release / pacman-repo (push) Successful in 9s
    release / apt-repo (push) Successful in 4s
    release / sign-release (push) Successful in 2s
    Pre-release

    sky_line released this 2026-10-19 11:20:29 +00:00 | 784 commits to main since this release

    Slipstream Beta 1.4.0.1 -- v1.4.0-beta.1 (2885660522).

    Linux x86_64 (glibc >= 2.38, x86-64-v2 CPU): *_x86_64.tar.xz
    Ubuntu 24.04+ / Debian 13+ / Mint 22+: *_amd64.deb (sudo apt install ./)
    Windows x64 (unsigned; SmartScreen: More info > Run anyway): *_Setup.exe installer, or *_win64.zip to unpack anywhere

    Changes since v1.3.0-beta.13.

    New features

    • Mesh TE entries survive LOD face-count changes (stash on shrink, restore on grow) (56249ce52b)
    • Preferences > Move & View: add 'Reset the camera when the avatar moves' (b5ca90f2bf)
    • #715: store Stats -- this run's writes by class (new / compaction / meta) (0d224aafb2)

    Fixes

    • #715: review fixes -- chunked .clod page verify, read-only cluster drop hides the key, placement follows late region ids (cb7ae7a063)
    • #715 J2C store backend: review fixes (1a74f01733)
    • Regenerate world SPIR-V after the SSR hit-test fix (4518ae8e46)
    • Fixes #729: Build > Texture shows read-only face values for objects you cannot modify (b0c036f693)
    • Fixes #781: show "..." instead of land impact 0 while the cost is pending (1bf33e20e0)
    • Fix About Land opening and refresh behavior (8990d01fcb)

    Other changes

    • Version 1.4.0 (2885660522)
    • GPU-ready chain lookup without heap allocations (#865) (1e50e7376e)
    • GPU-ready textures as per-level store records (#865) (ae7386988a)
    • Cache store index: hold the pending pointer in noteUse; drained-index test tolerates allocator slack (#866) (6897c57689)
    • Cache metrics: store index RAM (index_bytes, index_records) in the store KV line and JSON (#866) (33589b3c2a)
    • Cache store: flat in-memory index, ~153 -> ~67 B per record (#866) (8ed2c0c626)
    • Advanced Graphics: Volumetric fog and Volumetric clouds checkboxes (off by default) (8e0cfed5e2)
    • Windows build: unambiguous ifstream(path) in the cache migrations; 'far' is a Windows macro in the fog setup (9ab3188000)
    • GPU-ready reads: reserve in-flight slots for more urgent reads (41eeea9e8e)
    • Cache store read threads settings + GPU-ready read priority (6d9c69db4b)
    • Cache store: split async reads into I/O readers + a priority decode pool (4872e75d9e)
    • #715 metrics: J2C decode / BC encode stages and GPU-ready read use (e2c7fb6611)
    • LLCacheMetrics: read-use and decode-stage blocks (#715, additive) (219689b7b9)
    • VK texture residency: pressure-aware idle hold (RenderVKTexHoldIdleSec) (685ded10e4)
    • Advanced Graphics: 'Ray-traced reflection fallback' checkbox under Screen Space Reflections (RenderVKRTReflections) (0350c1dc91)
    • #715 read diagnostics: count uploads that did not grow the image after a no-drop reread (ff8cb898b5)
    • #715 GPU-ready rereads: read diagnostics (SlipstreamGpuTexReadDiag) + RenderVKTexHoldSec (e729fb598b)
    • #715 migrations: byte-bounded in-flight window + a files/s cap (no 2 s run-timer waits) (513b7d04f8)
    • Regenerate world SPIR-V after the #859 follow-up (58c9f1c721)
    • Regenerate world SPIR-V after the blend cull cutoff change (be522afc5a)
    • RT reflections (#859): resolve hit-distance weight; forward pass timed apart (3cd8e06ffd)
    • Acoustics: foliage muffles a little (kOccFoliage 0.3); RT blend cull only drops invisible faces (alpha <= 1/255) (78f3d02a3f)
    • Regenerate world SPIR-V after #718 fog, #719 clouds and acoustics alpha blocking (c0a0cea089)
    • RT reflections (#859) round 2: renderer -- tile list, trace/resolve/forward/uber kernels, targets, settings (a0e6b658a8)
    • #719 volumetric clouds: UBO update WAR barrier names the CLEAR stage; shadow map generator renamed clean_vol_cloud_shadowmap.comp (no stem clash with #718's stub include) (8eb797d983)
    • Acoustics: visible alpha blocks and reflects sound (AudioAcousticsAlphaBlocks) (11abc769ee)
    • Volumetric fog (#718): cloud interface includes only where they run (f5f4d38180)
    • RT reflections (#859) round 2: shaders -- smooth rigged hits, blend layers, glossy resolve, tile list, uber + forward/water (906f864a1d)
    • Volumetric fog (#718): settings (de9fe1b425)
    • Volumetric fog (#718): transparent consumers -- alpha-blend FS, water, particles (ff963d5fad)
    • Volumetric fog (#718): renderer plumbing -- frame info, binding 45, async placement, apply (d4d0c2aa09)
    • Volumetric fog (#718): LLCleanVolFogVK module (68e15c2a1c)
    • Volumetric fog (#718): froxel shaders -- inject, light, temporal, integrate, apply (0402ac79d2)
    • #719 cloud shadow lookup: CLOUD_SHADOW_SET / CLOUD_SHADOW_BINDING overrides for passes off draw set 0 (froxel hand-off) (dda260fcc0)
    • #719 volumetric clouds: LLCleanVolCloudsVK module + renderer integration (1dbbe6f6f8)
    • #715: LLFileSystemStore unit test (download + per-packet APPEND flows, rename commit, seek/read, remove, idle-grace and WRITE-close commits, old-file read-through, detach commit) (05cc2f05c1)
    • #715: wire assets + cluster LOD onto the cache store (CacheStoreAssets / CacheStoreCluster, default on) (1a26a2705a)
    • #715: cluster LOD cache on the segment store (Kind::CLUSTER, range reads), legacy metrics (7bbb23dd50)
    • #719 volumetric clouds: shaders (noise, EEP weather map, shadow map, panorama, march, temporal, composite) (5bd5991004)
    • #715: mesh disk cache helper -- old sparse files or per-part MESH records in the store (2518aab9e3)
    • #715 #705: J2C texture cache on the segment store (CacheStoreJ2C), texture tiers, migration wiring (c7e9ff401c)
    • #714: legacy J2C texture cache -> segment store migration (slj2cmigrate) (89cb2d5abf)
    • #714/#715: resumable folder->store converter + asset folder converter with the mesh part split (b1144c2527)
    • Revert "llcachestore: eviction listeners (additive, #715 metrics)" (5df99927c2)
    • #719 volumetric clouds plumbing: frame-info block, draw set 0 bindings 45/46, cloud-shadow consumers (d7029060aa)
    • #715: LLFileSystem segment-store backend (injected), staged asset writes, LLCacheMetrics on both paths (92415ca1eb)
    • #715: scripts/cache/compare_cache_metrics.py -- side-by-side legacy vs store sessions (995ad2bc64)
    • #715: SLCacheMetrics -- store sampling, periodic CacheMetrics log, session JSON, Develop menu (8cf99f8161)
    • llcachestore: eviction listeners (additive, #715 metrics) (6ac6d017ca)
    • #715: LLCacheMetrics on the legacy J2C texture cache (6a3cfa8e27)
    • #715: GPU-ready texture cache metrics on both backends (.gtx files and the store) (ccfcf610ae)
    • #715: store Stats -- per-kind disk/raw/segments/evictions, codec + append cost, index load time (03bb19cf65)
    • #715: LLCacheMetrics -- hit-only latency, fine percentiles, per-cache startup, reportKV (64c52199fe)
    • Regenerate world SPIR-V after #859 RT reflections (19873171eb)
    • RT reflections (#859): hold the mark 10 s past the last wanting frame (04363761f1)
    • RT reflections (#859): renderer -- mark target, RT reflect pass, consumer + stand-down, settings (fd4727f35e)
    • #715: LLCacheMetrics -- consumer-level cache counters shared by the legacy caches and the segment store (f5d078b2df)
    • RT reflections (#859): shader side -- reflect-pass mark + RT reflect kernel (d5da75bd37)
    • SSR: hit colour from the depth texel's centre; origin-texel samples stateless (53dfd98c83)
    • SSR: thickness-verified hits, no behind-occluder smear (avatar reflection) (65315f92b3)
    • Regenerate world SPIR-V after the acoustics cost reductions (88852127c4)
    • #714: migration follows "finer version wins" for keys the store already has (74b2ce0b92)
    • Acoustics: cut GPU cost (room rays every Nth frame, 30 m room range, far-foliage alpha test skipped) (17d36d9125)
    • #714: Develop > Cache > Cache Store entries (stats, verify, list, extract) (05ce54073a)
    • #715 #714: open the viewer's cache store; GPU-ready textures on it; .gtx migration (d788485f94)
    • #715: LLGpuTexCache segment-store backend behind the existing API (0938d54ce4)
    • Acoustics: stand down (soft, auto-resume) under VRAM ladder / RT budget pressure (#683) (283f60b7ed)
    • Preferences > Sound & Media: Room acoustics checkbox + reverb level slider (#683) (8b501a7743)
    • Acoustics: low-pass the reverb send by occlusion (AudioAcousticsSendOcclusion) (4cf493d5ce)
    • llcachestore: no re-entrant budget pass; compaction may use the reserve (#708, #709, #711) (ada8d6c781)
    • Regenerate world SPIR-V after the #683 acoustics merges (1281d0970d)
    • #845: async compute off by default on AMD's proprietary driver with RDNA2 (RX 6000) (cf499b252b)
    • llcachestore: segment store core with SSD wear policy and region placement (#708, #709, #715) (4c26bd0138)
    • Acoustics (#683): foliage counts 0.25 of a wall (hedge arch beside a building near-dry) (6dc436ee1c)
    • Acoustics (#683): open area counts as absorption; size / clutter only when enclosed; foliage soft (800d5f3e9f)
    • Cache codec: explicit-policy encodeWith/decodeWith (#708, #715) (f217675154)
    • Acoustics (#683): room rays see alpha-mask foliage (alpha-tested), flagged per hit (abd9c36f9a)
    • Build > Object: physical Material applies to the whole selected linkset, tentative when prims differ (f2d7e8418a)
    • Build > Texture: tint swatches show a plain disabled colour (not the lock) on modifiable objects (3dbfd8251b)
    • Build > Texture: lock image only for no-modify objects, ordinary empty swatch for unset maps/tints on modifiable ones (#729 follow-up) (092b34eb1c)
    • Asset disk cache: no periodic purge in a second viewer instance (#715, #708) (e8afebc8a5)
    • Report tracker: fewer notifications (#853) (555fc4177e)
    • CrossedRegion: treat a dead destination circuit as not pre-connected (#850) (a90f544366)
    • #683: material + clutter aware room absorption, acoustics retune (c15a677aec)
    • CrossingKeep: own vehicle kill from the agent region near an edge (#850) (b4fa41aa5e)
    • CrossingKeep: adaptive near-edge grace (#850) (b809df975b)
    • Region ring: core exemption before the ring test; keep live core neighbours (#850) (b24d07009d)
    • CrossedRegion: connect the destination first if it is not pre-connected (#850) (84416976b1)
    • Fast movement Far: lead-time based, lowered gradually (#850) (060a04bb1e)
    • Crossing568: log the handoff's starting conditions and settle time (#850) (d231656991)
    • Client AO: drop kept-off built-ins that left the avatar's lists (#668) (5c45c82958)
    • Client AO: seamless state changes (#668) (80cd1e0cd4)
    • #683: keep HUD-attachment sounds dry; no acoustics module on offscreen renderers (80b6d305da)
    • Cache codec: per-kind allow_legacy policy (98247a2ad7)
    • #683 phase 0: acoustics prototype -- GPU room / occlusion rays drive EFX (d543a623d5)
    • #683: EFX acoustics plumbing in the OpenAL engine (inert until driven) (dd0c3a6400)
    • Cache codec shim: zstd records behind a versioned header (#713, #715) (3dbb3611a8)
    • Vendor Zstandard 1.5.7 (single-file amalgamation) under llcommon/third_party (a92038ae52)
    • Script Info: keep holding the helper for a minute after a failure (#425) (07168164fe)
    • Area Search: Script Info through the Slipstream Helper bridge (#425) (9cff3ea88d)
    • Pipeline compiles: cap in-flight compile memory at 25% of RAM; trim after each batch (3df839bf30)
    • Regenerate world SPIR-V after the #843 GTAO term-scale / IGN change (484544fef8)
    • Output dither at the tonemap, the first 8-bit quantization (#843) (f5108e3d31)
    • #843: GTAO keeps its >1 headroom to blur V (XeGTAO term scale); IGN slice noise by default (8b07553933)
    • Regenerate world SPIR-V after the #843 AO merge (0740fb4a15)
    • #843: AO temporal accumulator -- reprojected history, the AO's own denoiser (e746aeffa0)
    • #843: GTAO slice / step noise -- Hilbert-curve R2 (XeGTAO), AO-owned frame counter (4ec82c8283)
    • #840: mask cutoff ceiling for J2C alpha noise (cutoff 255 corner damage) (c2c14ff0e1)
    • RT mask: decode mode/flag bits with round(), not +0.5 (#841) (7434f07789)
    • Regenerate world SPIR-V after the #841 follow-up cherry-pick (3caa3e2ed2)
    • #841: RT sun mask footprint jitter without TAA / FSR; full static history there (567d4bf205)
    • Regenerate world SPIR-V after the #843 / #841 cherry-picks (20447d650a)
    • #840: legacy mask cutoff keeps LL's half-level slack (cutoff 255 edges) (4b2c48015c)
    • #841: RT shadow mask noise advances every frame, independent of TAA / FSR (ad71515fbe)
    • #843: GTAO temporal noise -- hashed per-frame offset, no constant-step drift (17246dc88f)
    • Regenerate world SPIR-V after the #842 cherry-pick (30d4151210)
    • #842: cut only the toward-sun excess of the near haze glow (cd80074d84)
    • #842: no haze sun-glow disc on near geometry (RenderVKHazeSunGlowNear) (103705fd5f)
    • Regenerate world SPIR-V after the #840 cherry-pick (61fd0d4ff5)
    • #840: block encoder keeps alpha-mask texels on their side of the cutoff (38ff3a5be9)
    • #631: VKAnimState also covers avatars that leave updateCharacter early (b79a397f14)
    • #631: recover avatars stuck in their rest pose; VKAnimState diagnostic (f034f609ee)
    • #781: retry object costs that fail to arrive, with backoff (9f28709a55)
    • Advanced Graphics prefs: fit small windows, scroll settings, keep OK/Cancel visible (#728) (c9e67634cd)
    • Regenerate world SPIR-V after the #835 cherry-pick (d40337410a)
    • #835: rigged alpha sort -- nested layers keep one order (LL's quarter-extent distance) (7c1d79f71a)
    • #838: modifier-only gesture triggers match with or without their own modifier bit (8083faf899)
    • Revert "#838: bare modifier gestures (Shift, Ctrl, Alt) trigger again on the SDL keyboard" (3ee0a17b66)
    • #838: bare modifier gestures (Shift, Ctrl, Alt) trigger again on the SDL keyboard (648cedd6e3)
    • Regenerate world SPIR-V after #836 merge (5bf3ced00c)
    • #836: motion blur -- no tile blocks around still silhouettes, no HDR bleed (fd6a31452d)
    • #837: held-grab touch data frozen ~0.5 s by the pick's self-served surface cache (cde414bcf2)
    • particle rig: DROP test gets accel; ribbon / flame descriptions match LL (checked against Alchemy) (a34be74777)
    • particle rig: accept commands / touch from anyone nearby (test-control alt drives it) (46183d3ae1)
    • VK particles: attachment sources from the live attachment point; audit vs LL (#693) (8e7cc69794)
    • testctl: particle test rig LSL (#693) -- 22 emitter configurations with expected behaviour (8abd0ad87d)
    • Prevent stale parcel data from affecting About Land edits (3dd9d9b68e)
    • Keep alpha-coverage mips separate from blended textures (ae29fe63aa)
    • Keep IM messages visible after offer notifications (1a07fba003)

    Tickets

    SHA-256 of each file is listed in its job log and below as uploads land.

    52855b989be42cac588644a5882fa97e2910cc5a776d0ae97e79728fe7f6b856 Slipstream_1.4.0-beta.1_x86_64.tar.xz

    02bea38ad4bbda2a638fb19f940ac69cdbf0ddba4eae698d879db6c83c37b164 Slipstream_1.4.0-beta.1.flatpak

    d8f50cd794988f81bb15c8eb2e9cbae80488b9751affeb9dff44db675a811e5a Slipstream_1.4.0-beta.1_win64.zip

    59ecc0c2549632b4c35777f5d69509aa8dc2ae52fb70775fe053e39757dc9fbd Slipstream_1.4.0-beta.1_Setup.exe

    392c546ffb11ae5dc61ba253e3b7a3b4e988bc21ebadb5349cfe71031af4666a Slipstream_1.4.0-beta.1_x86_64.tar.xz.sig

    9f6194543a243bd327ec9e6a24c8d013f44c572ccae92c1563f8889871a919f9 PKGBUILD

    d5ca951827286c737fb75ae9ebb9b493b805a8603bdde025888fb6914fe8c2d3 slipstream-bin-1.4.0beta1-1-x86_64.pkg.tar.zst

    18f7fb991696ee2b959e28a1750c6a28ab5a9fefa011d1fbb300fd0a0d67d8ca Slipstream_1.4.0-beta.1_amd64.deb

    5772eac3afac9a9198395994928aeddee46b10967563fd7974f53b30d7f5db79 update-manifest.json

    Signed checksums: SHA256SUMS + SHA256SUMS.asc (key C28FDB4A40AA8360D8DF0470AD8E61526C06E929). Verify: https://slipstreamviewer.org/wiki/verify/

    Downloads