• v1.0.0-beta.1 ef3a3630a4

    Slipstream Beta 1.0.0.1
    All checks were successful
    release / build (push) Successful in 17m32s
    release / windows (push) Successful in 13m35s
    release / arch-package (push) Successful in 1s
    Pre-release

    sky_line released this 2026-10-03 04:56:25 +00:00 | 2574 commits to main since this release

    Superseded by v1.0.0-beta.2 — use that build instead (fixes clicking scripted attachments on avatars).

    Slipstream Beta 1.0.0.1 -- v1.0.0-beta.1 (ef3a3630a4).

    Linux x86_64 (glibc >= 2.38, x86-64-v2 CPU): *_x86_64.tar.xz
    Windows x64 (unsigned; SmartScreen: More info > Run anyway): *_Setup.exe installer, or *_win64.zip to unpack anywhere

    Changes since v0.14.0-beta.1.

    New features

    • GLTF overrides: bound texture count and face indices (port of fff6e55054) (53c14739ed)
    • Viewer importer: follow the chat port (keyword alerts, FSShowTimestampsIM, FSLastOpenIMs) (42133c8ffe)
    • Conversations: restore open IMs at login; optional Conversations window for offline messages (0dbe328bbd)
    • Chat: keyword alerts (port of Firestorm's FSKeywords) (e79be8be34)
    • Lightbox shadows: rebind dead GL bias rows to VK settings, add RT shadow bias, drop dead SSR glossy samples (39a1be4099)
    • Lightbox Shadows & AO: add the RT shadow controls from Advanced Graphics (b1867c5428)
    • Lightbox: add a Cam tab, ported from Firestorm's Photo Tools (4ced63937f)
    • Camera: port Firestorm's camera behaviour switches (7ba4a2ae72)
    • GL removal (flag lane): feature manager GL probe, GL benchmark, avatar GL paths (0148af6b8c)
    • People port: even column sizing and Alchemy styling for radar, sets, titles (1bca5fbab4)
    • People port: wire radar, contact sets and group titles into the viewer (f77c9a9b35)
    • Contact sets core: port LGGContactSets as the single avatar colour lookup (473769216f)
    • People: port the Firestorm radar into the Nearby tab (+ standalone floater) (f17dcc97b7)

    Fixes

    • Object cache: header slot fixes and file-size caps (port of fff6e55054) (419ed5fe77)
    • Fix LLWeb callback binds after loadURL/loadURLExternal gained from_web_content (60ceeec572)
    • Links tab face thumbs: fix const poll() compile error (a54578a721)
    • TAA RCAS: clamp the sharpened centre to the cross's range before decompress (same firefly bug as FSR patch 3) (44122dad7e)
    • VK snapshot crash / bloom wash-out: generation-keyed descriptor rewrites + post-offscreen reset (877417a230)
    • Textures: restore mNeedsCreateTexture after preCreateTexture (GL removal regression) (cdc5fb7f59)
    • GL removal merge: link fixes (LLHeavenBody::sInterpVal, LLVOSurfacePatch::updateLOD) (8a438eb5c9)
    • Avatars: off-screen avatars hold their frame (fixes reduced-tier held-frame rate) (db575bcfa7)
    • Report Bug: read the session's actual log file (second instances log elsewhere) (c7872057b4)
    • Help > Report Bug: account-free in-viewer bug reports via the report relay (33937357a4)
    • VK reduced avatars: skin cache build fix + descriptor writers never grow it (91405e870f)
    • Merge fix: #39 rigged alpha-blend shadow draws use the #31 caster counts (no-shadow avatars excluded) (2be484a158)
    • Merge fix: particle shadows draw the #35 blend-pair segments (both water sides), not the old bucket offsets (d14748bb1c)
    • Merge fix: run particle compute once, before the shadows (shadows39 + particles both moved it) (9c65c34ea2)
    • TAA / water review fixes: one previous-depth search, demote on exclusion (08ee330b62)

    Other changes

    • Version 1.0.0 (ef3a3630a4)
    • Windows build: missing includes hidden by the Linux PCH; rename 'far' local (windows.h macro) (964aaab5d5)
    • Mesh: retire resized-flexi geometry, smooth-terrain off heal, own VKMem line (e667aceda4)
    • Force a full material resolve when ids were recycled; clear emitter free list on shutdown (a6cfe429bf)
    • VK renderer: incremental LOD-group rows + mesh-store memory stats (3dbe939ea6)
    • Mesh store: bound LOD groups, raw mesh bytes, slot ids and ingest caches (920d222055)
    • VKMem store occupancy log + RenderVKMemStatsLog detailed dump (309d0ba48e)
    • Bound other grow-only GPU-side caches found in the store survey (83d59e13b0)
    • Particle emitters: reuse lowest free slot, trim the dispatched range (1490e5b60c)
    • Bound material, terrain-record and skin stores: refcount holders, sweep, recycle ids (4251db181c)
    • VK anim (#257): incremental pose export for GPU-evaluated avatars (b8505513c1)
    • openfloater SLapp: allowlist for untrusted navigation (8e27b7ed3a)
    • Prim/parcel media: refuse file: and local-path urls (U-12) (81f169f209)
    • dyemenu SLapp: null-check the bars and block untrusted sources (U-13) (ce9baf5d4d)
    • LSL preprocessor: only cache scripts whose names are plain file names (U-7) (2129ddc5fb)
    • IM auto-replies: respect mute, friends-only and RLVa; once per sender (U-8) (85730fe57d)
    • Security: check physics decomposition hull point counts (3daa63f9a8)
    • External browser: exact scheme allowlist, show the url, always ask for web content (U-5) (7462020871)
    • Security: check sizes in ExtraParams, ScratchPad, IM bucket, parcel and coarse location messages (86f6df5ebf)
    • VK G-2: back off after a failed soft rigged-buffer grow; clamp pre-skin skin count (8462fb117f)
    • Avatar idle CPU (#257): cache occupied attachment points; skip dead-list hash when empty (768faf4d17)
    • agentself SLapp: apply the agent untrusted-verb filter; honest labels (U-3) (07d54fad99)
    • HTTP: omit the query string when logging an oversized response URL (f42a78b9c0)
    • Security: validate GLTF scene assets before use (c7a3b2c133)
    • Anim CPU (#257): addMotion find-before-emplace; animation data by string_view (5e556f6279)
    • URL detection: linear-time link regexes and bounded linkify work (U-2) (ff9b47e829)
    • VK G-2: bound rigged skinned-vertex demand (policy-hidden avatars, budget, soft grow) (98837a8308)
    • Settings/XUI: load trusted web content over https; HelpURLFormat session-only (U-10) (83bda1015d)
    • Security: validate mesh header blocks and per-vertex blobs (d1616f7143)
    • HTTP: restrict libcurl to http/https and cap response bodies (P-H7) (a79d3c3ae3)
    • HTTP: stop disabling peer verification on requests that carry secrets (U-9) (9d9de2865a)
    • Security: bound LLSD parsing depth, lengths and decompression (803b586e92)
    • HTTP: verify the server hostname whenever peer verification is on (U-6) (0a8e3a8430)
    • TLS: verify server chains with X509_verify_cert; identify certs by DER hash (U-1) (e6de58e353)
    • VK G-7: per-ray candidate budget in every ray-query candidate loop (9d67bb6869)
    • VK G-10: keep non-finite geometry and transforms out of the BLAS / TLAS (3648a69532)
    • llimagejpeg: per-call jmp_buf; clamp skip_input_data to the buffer (5e380cb128)
    • VK G-11: keep non-finite / degenerate light params off the GPU (e8a25ca13a)
    • llpartdata: don't skip untrusted block lengths byte by byte (9e14695b5f)
    • llcircuit: keep incoming packet ids in 24 bits and bound the gap fill (0d1edfb6ff)
    • Xfer: abort on short first packet, reject negative sizes (02660221cc)
    • VK G-12: cap the particle emitter table and the emit dispatch (da319dd50c)
    • LayerData: validate patch size and stop bit unpacking at end of buffer (b05896c08f)
    • VK G-6: GPU particles always retire (max age 0 / NaN, hard age ceiling) (bc022aad4e)
    • VK G-1: rigged selection outline / skin pick trust the cull's rigged verdict (30542e2936)
    • llimage: validate J2C decoded geometry; reject dims that don't fit U16 (ef1c9e8a33)
    • Camera: right-drag orbit rig mounted on the avatar's frame; avatar faces camera (e6057c6434)
    • Camera: right-drag orbit pivot follows the avatar (after Black Dragon) (ec7be7260b)
    • RT terrain: BLAS follows the smooth-terrain geomorph; drawn level built same frame (#211) (f7c3d9016c)
    • Graphics prefs: Background FPS limit slider (paced, replaces fixed BackgroundYieldTime sleep) (b6b745d597)
    • RCAS: bound decompress by luma, not per channel (TAA+sharpen darkened saturated HDR ~2x) (2e0ae9b089)
    • Links tab: face texture thumbnails + color swatches (#252) (9b71f01706)
    • VK snapshots: light like the main view (deferred); snapshot frames in the HDR probe (a768ccb061)
    • Snapshot Disk panel: show the output folder, with Browse and Open buttons (abc68ab759)
    • Chat prefs: stack typing checkboxes so name-tag option no longer overlaps (a030f17d6c)
    • #255: skinned pick path: skip while the draw sets don't exist yet (ab198588c8)
    • #255: pick worn rigged mesh / animesh against what is drawn (GPU pick resolve) (4005fa4ae8)
    • #255: LLCleanPickVK -- per-frame rigged cursor pick in recordWorld + sync RT pick (37d4fd3b62)
    • #255: GPU cursor pick shaders for rigged surfaces (ray query + skinned fallback) (81dacb7cea)
    • Links list: cache link names even while the tab is hidden (#252) (1e416d00d5)
    • Build tools: Links / Faces list tab (#252) (4d8fc95205)
    • VK selection outline: hover-preview kind (#252) (146b5fefd3)
    • Mouse walk: both mouse buttons walk forward while steering (#254) (7e3df6f8cd)
    • RT mask anti-lag: hot texels skip the widening; re-seed moments on a mover's clamp cut (34d7486d17)
    • Conversations: optional Contacts entry pinned at the top of the list (155744dd69)
    • RT shadow mask: moving-caster anti-lag + shading-change reactive (walking-avatar shadow ghosting) (e83a20637e)
    • Chat prefs: fit eight tabs in the Text Chat tab bar (293e7d4e8c)
    • Window title: optional unread IM count (FSShowMessageCountInWindowTitle) (531a86a880)
    • Chat: typing extras (send typing state, typing in name tags, open IM on typing) (ff230a8cce)
    • Group chat: snooze (per group on close, or from the menu), disable all / when notices are off, notices in chat (dae1278531)
    • VK snapshots: keep the Lightbox reference still; TAA teardown bumps the target generation (e1c4730984)
    • VK: image registry for DEVICE_LOST reports + bind-time stale-descriptor check (7a0433e484)
    • Autoresponse: away response, item, group-invite rejection, name tag status (1f0482a110)
    • People > Nearby: layout stack fits the tab (455 -> 410) so the radar range strip and last list row aren't clipped (eea35bd2f2)
    • Chat bar: OOC, MU* poses, optional Enter shortcuts, "(You)", moderator highlight (6a1c4a26de)
    • VK snapcrash #2: FSR 3.1 sets keyed on the render-target generation (502992883d)
    • Conversations: search in chat history (button, optional Ctrl+F) (97d0975f24)
    • Chat prefs: radar "entered / left chat range" reports on the Alerts tab (a126df6c44)
    • Chat: separate timestamp toggles for nearby chat, IMs and transcripts; optional seconds (59ec81cf6b)
    • Chat: /setchannel works, optional channel selector in the nearby chat bars (e72820f433)
    • doc/viewer_import.md: what imports from Firestorm / Black Dragon and what doesn't (#231, #232) (3a5343d16d)
    • Viewer importer: log every row imported / refused / skipped; deny voice device ids; map generator script (#231) (d4aff26d1c)
    • Import from another viewer floater: categories, review list, preview, undo (#231) (edb1c51b50)
    • Viewer importer engine: import every compatible setting and preference file, merge key bindings (#231, #232) (bafa583924)
    • Key bindings: isKnownCommand / hasBinding; recover from an unusable key_bindings.xml at startup (#232) (dfc44c53ca)
    • Contact sets: mergeImported() / reloadFromDisk() for the viewer importer (#231) (a5af49ed07)
    • Viewer import map: Firestorm / Black Dragon -> Slipstream settings data (#231) (c57b2a76da)
    • FSR 3.1: RCAS clamp to the cross (no 1023/exposure fireflies), sanitise colour, HDR probe (bf03b7c744)
    • VK snapcrash follow-ups: exposure eases across range changes, RT mask early-path guards, stress size clamp (48bf911a48)
    • Move & View: system avatar bodies checkbox to the right column (left column overlapped Other Devices) (97f745b695)
    • VK: DEVICE_LOST report into the log, checked vkDeviceWaitIdle, RenderVKDebugSnapshotStress (e2816114f1)
    • Sun shadow maps: cap LL's light-direction receiver offset at half a cascade texel (be34445c27)
    • Moving-shadow ghosting: RT mask fast-history clamp + short hard-shadow history, projector lengths, TAA lock release (0dbdadcba9)
    • RT debug view 18: force-opaque blockers striped + centre-pixel blocker log (a1a1a847bd)
    • FSR 3.1: run RCAS in tonemapped [0,1) space (vendored patch 3) (2343297eb8)
    • RT vs raster: rigged LOD fallback, near-first rig builds, lazy-BLAS level stand-in, sun blocker debug view (ccc7f58a48)
    • RT shadows: float-error ray origins (Wachter & Binder), bias default 0, cut-out test for transparent receivers (c9d3108fb4)
    • ShowSelectionBeam defaults off (6c77cf5a9a)
    • EffectScriptChatParticles defaults off (no swirling lights when scripts chat) (b02604780c)
    • Lightbox: Shadows & AO 'Resolution scale' was bound to the dead GL RenderShadowResolutionScale; now 'Shadow quality' on RenderVKShadowResolution (43ff6ba32e)
    • Region ring: restart the drop grace when a teleport / login finishes (00e496dfc7)
    • Cap connected regions to a 5x5 ring around the agent (SlipstreamMaxRegionRing) (0fdd7e5fed)
    • Draw distance up to 4096 m (d98dedbaf0)
    • VK textures: size the texture budget from the main VRAM heap, not the max-ratio heap (1f7ebae816)
    • Beacons: queue floater beacons from the world-overlay pass, not draw() (e0a23dd9cc)
    • vk_pipecache: never persist a VK_INCOMPLETE (truncated) cache serialization (0f1903f267)
    • VK: persistent pipeline cache + hold the progress screen until world pipelines are ready (0ae81a7445)
    • Draw distance down to 8 m (#233) (de1639fb93)
    • People Nearby: Firestorm radar range slider, bottom-left, Alchemy style (9cf464937c)
    • VK beacons: sun/moon beacon width follows DebugBeaconLineWidth live (c896bda30e)
    • VK: render debug beacons (area search, Beacons menu, telehub, sun/moon) (709e3f6e40)
    • VK god rays: composite after every transparent (RenderVKGodRaysAfterAlpha) (9579c41ddb)
    • System avatar bodies toggle: Preferences > Move & View instead of the Avatar menu (37f0ac4291)
    • VK system body: starvation-free morph budgets, wait for bake pixels (e0c93374cc)
    • VK avatars: render the classic system avatar body, GPU-driven (8b16609cf8)
    • VK rigged: morph-stream pre-skin source + own-head main-view hide (7d91ef6a6f)
    • Clean stores: raw mesh slots + per-avatar system-body skin entry (ab667ad4cc)
    • llappearance: polymesh base-data accessors + morph generation counter (c551232250)
    • World pause: objects arriving while frozen draw at their object pose (b47823b161)
    • Freeze World UI: World menu toggle on Ctrl+Shift+F + on-screen indicator (ab6ea27407)
    • World pause: LLWorldClock, a single world time that freezes (28629c305c)
    • Smooth terrain (#211): monotone bicubic surface, distance LOD with geomorph, skirts (ba64bf4d4e)
    • F1 opens and closes the Lightbox instead of the Guidebook (be4a420850)
    • VK avatars: drop the dead system-body CPU geometry path (053bf487fc)
    • GL removal (llgltexture): keep createGLTexture() resetting the image's created flag (cbad818246)
    • GL removal (flag lane): cascade cleanups (fast-cache reader, null tex-anim matrix, stale comments) (1757081574)
    • GL removal: llrenderbackend docs reflect backend-only LLRender; define GL_BGRA_EXT for media plugins (9ebabce7c7)
    • GL removal: drop GL-only sky texture holders and terrain-patch includes (a5d2b2c9b3)
    • GL removal (flag lane): drop settings keys orphaned by this lane (a0781af458)
    • GL removal (fonts): drop GL glyph-atlas upload branch and the no-op destroyGL chain (a9de1d6873)
    • GL removal (flag lane): GL texture/media worker threads, GPU downscale, scratch textures (e6e6505554)
    • GL removal (llrender2dutils, llrendersphere, llrendernavprim, llglcommonfunc): drop GL line width, VBO fast paths, empty stencil helper (de4c1d6ae2)
    • glr-tools: collapse dynamic-texture explicit-format overload (9bd82f3ed3)
    • GL removal (llatmosphere, llgltexture): drop never-instantiated atmosphere GL textures, GL accessors on LLGLTexture (e9d8f938a5)
    • GL removal: drop settings orphaned by the pipeline-lane deletions (3fa9935be6)
    • #249: probe cluster ranking -- automatic key in metres, last slice ranked on its own box (16eedb6662)
    • glr-tools: GLTF scenes keep data model, lose GL upload/draw (38dd3a4b3a)
    • GL removal: drop LLEnvironment GL uniform maps; trim llviewerdisplay (8931e74902)
    • GL removal (flag lane): texture memory management, fast cache, GL readback (fd0b8aea8a)
    • GL removal (llgpubuffer, llcubemap, llcubemaparray): delete unused SSBO wrapper, stub GL cube maps (485bdff4a3)
    • GL removal: strip LL GL pipeline residue (pipeline, probes, octree, pools, sky/water/terrain) (0b3a52696a)
    • GL removal (llrendertarget): GL FBO wrapper reduced to an empty stub (501bfb7244)
    • #249: probe clusters keep manual probes when over the cap (prioritised selection) (ba753650f0)
    • glr-tools: delete the GL scene-loading monitor (8303394792)
    • GL removal (llvertexbuffer): CPU-only geometry container (e7249ecd11)
    • GL removal (flag lane): llvovolume gates, GL sculpt readback, GL tex-anim rebuild (891f25b23d)
    • GL removal (flag lane): llappviewer + clean ingest (29b17cf25d)
    • glr-tools: drop GL avatar joint drawing (b4e9a4ceb1)
    • GL removal (llgl): drop GL loader/context bring-up, GL state calls and dead GL helpers (b2353588b1)
    • VK RT: opaque / translucent split for shadow rays (RenderVKRTTranslucentSplit) (fe473abae7)
    • GL removal: gut LLShaderMgr, LLViewerShaderMgr and LLGLSLShader (9bad552128)
    • glr-tools: model upload + material previews are VK-only (a0276873f7)
    • GL removal (llrender): LLRender/LLTexUnit backend-only, LLImageGL reduced to CPU pixels + VK bookkeeping (96fa180da0)
    • glr-tools: dynamic textures + previews are VK-only (695d603803)
    • GL removal (flag lane): dead idle passes, GL settings listeners, GL-only UI paths (6eef37efdd)
    • glr-tools: strip GL state/shader binds from HUD objects (68dc973f0e)
    • glr-tools: delete GL selection silhouette rendering (56b5259816)
    • glr-tools: strip GL state/shader binds from manipulators (9f98f6b32b)
    • GL removal (llwindow): delete Win32/macOS/Mesa window backends, GL context + shared-context API (e05771cdf6)
    • GL removal (flag lane): clean stores, particles, RLV sphere, bump list (d7eb6b769e)
    • glr-tools: strip GL from LLViewerWindow and llui scissor (549ab6826c)
    • GL removal: delete the app_settings GLSL shader tree (d65f15daa9)
    • GL removal: delete LLLayeredCubeRT; slim LLCleanTexture to VK metadata + alpha class (21030847b1)
    • Arch package docs: stale per-user desktop entry, sandbox wording; CI PACKAGER (#248) (5ced65d8a6)
    • release CI: arch-package job attaches PKGBUILD / .pkg.tar.zst, pushes to AUR (#248) (a6d0b9ee72)
    • Arch package: slipstream-bin PKGBUILD, .SRCINFO, generator and AUR push (#248) (de7443e514)
    • Linux: package-install marker in the wrapper, hicolor icons in the tarball (#248) (79bd808475)
    • VK RT: cheaper translucent casters in shadow rays (pool / glass cost) (d7ae2655ea)
    • VK texture anim: per-frame uv push and registration no longer gated on LL face size (5a47ca2d36)
    • #245: diagnose CEF media plugin load failures on Linux (46107d160a)
    • Linux: LLMemory::getCurrentRSS reports the CURRENT resident set, not the peak (5042c8d5aa)
    • RenderVKPreskinPrevHistory default off (bench: +0.28 ms GPU on) (3f8e17ae80)
    • #238: gated realtime-probe capture split for AMD GCN 1-4 / Polaris (194d10542e)
    • #238: bloom / cross-filter targets leave UNDEFINED at creation (513e03fcdd)
    • #238: GPU animation -- one blend header per joint (no shared-pose race) (1e2875a7fb)
    • #238: cull / occlusion / RT-instance metadata bounds + overflow-safe range checks (c4f608c616)
    • #238: alpha sort fits 32 KiB shared memory on AMD GCN / Polaris (gated variant) (b20960b291)
    • VK deferred lighting: free the G-buffer when RenderVKDeferredLighting is off; tile depth guard (1d449cedd8)
    • VK textures: alt-tab no longer drives every texture to thumbnails (76c3e69e3d)
    • F3a / F6 follow-up: explicit skin-VBO RAW barrier, table-fill WAW, VRAM log (059051d05d)
    • VK deferred lighting: optional async placement beside the early probe faces (c414967361)
    • Retained UI: re-record when the mouse leaves a hover-recorded floater; priority settle ignores move-list (642e3e71b0)
    • FSR 3.1: bind whole 256 B constant sub-slots; require linear filtering per format (f41df34561)
    • VK lit pass trims: tiled light lists (deferred), probe top-N, light cutoff, one gobo fetch (4d3c570c6c)
    • FSR 3.1: settings, upscaling combos, RLVa resolution divisor (c727dd98fa)
    • VK: FSR 3.1 upscaler (RenderVKUpscaleMode 6-11) replacing the TAA resolve (6eb3687bf9)
    • C8/C9: lower self-heal slice rates; changed queue keeps the fresh signature + time budget (18e3cca73d)
    • VK: deferred lighting for pass 1b -- G-buffer + compute (RenderVKDeferredLighting, phase 5.2) (5de3ec60a3)
    • vkclean: FSR 3.1 SPIR-V (vk_fsr3_shaders_spv.h) + clean_fsr_inputs.comp (8413279ff5)
    • vkclean: vendor AMD FidelityFX FSR 3.1.4 upscaler shaders (MIT) (f94bd4c861)
    • Retained UI: focused and resting-hover floaters replay; edge-triggered dirtiness (ba3ccafb2b)
    • VK phase 3b: a fork after P withdraws P; reset P on async (re)init; comment the join-published barriers (50e92290ed)
    • C7: stream only changed CPU-evaluated joint rows (7a0c963d37)
    • I-6: compact glow attachment (B10G11R11) instead of HDR-alpha packing (b47a6d4944)
    • F6: rigged previous positions from last frame's pre-skin output (7148154b3d)
    • VK GPU timers: sub-mark pool 128 -> 160 (room for the two-phase occlusion marks) (5d1c1b4775)
    • VK phase 3b: frame pipelining -- front end on the async queue beside the previous frame's tail (4651fcae1e)
    • F3a: RT shadow mask ping-pong history; queue-tagged GPU sub-mark log (333e0c3087)
    • VK world FS: split shade() into decodeSurface + shared lightSurface (no behaviour change) (6d971da970)
    • vk_pipeline: plain MRT mode (up to 4 colour attachments, no blend) for the G-buffer pass (6018de778b)
    • Ingest worker: prim tessellation + capture prep off the render thread (RenderVKIngestWorker) (52a778670c)
    • VK: two-phase Hi-Z occlusion culling of the main view (RenderVKOcclusion2Phase) (4e1d35d404)
    • UI: Reflection Detail 'Raytraced' (RenderReflectionProbeDetail 3) (5a6cc57547)
    • VK RT: ray-traced reflection-probe capture (RenderReflectionProbeDetail 3, research P2) (f9126b3b3e)
    • Ingest: self-outfit priority pass settles again; ingest sub-timers (7e6adcc05a)
    • VK RT: surface-eval + hit-shading library for ray-traced hits (research P1) (62eb9779d8)
    • Avatars: skip LL octree upkeep for attachments under VK; distance-based animation rate (8e0ce9e523)
    • Section timers: split LL_objectListUpdate (non-avatar / avatar / flexi / costs / complexity / glTF) and LLVOAvatar::idleUpdate (voice, misc, appearance anim, detail fx, name tag, complexity, debug info) (a13ab9b5ab)
    • Sync worker: one persistent fill thread instead of std::async per frame (ea7facfd44)
    • CPU: bench records CPU sections; drop the per-frame 1.7 MB material backup; sweep idles at ~2% changes (388b919176)
    • CPU: sweep idles on its own findings; store fill on a worker during the UI pass (eebec5c29c)
    • VK S2: multi-view cand_meta keeps ~0 for culled rows; log the union alpha length (17e489ad2b)
    • VK S2: the scheduled probe face rides in the realtime probe's multi-view cull (75c438120d)
    • RECORDWORLD_RW.md: async compute (phase 3a) design, windows, sharing, timers, validation (1c94a78cc1)
    • VK phase 3a: async compute segments (timeline fork/join) + RT build, mask/SSAO, god rays, probe filter (061e2ea98c)
    • F2: clear the water-lists latch when the main alpha sort is not recorded (6b19184ced)
    • VK S2 / I-2: multi-view cull + one alpha sort for the realtime probe's six faces (ff829e2df9)
    • F5: TAA reactive mask replaces refraction copy #2 (RenderVKReactiveMask) (fcc3dcfd2f)
    • F2: dedicated water and exclusion lists (RenderVKWaterLists) (586305c1ca)
    • VK F7: HUD cull walks a HUD instance list, not every instance row (8c33c1417a)
    • VK probes: size cutoff on the widest look, tight face masks, funnel counts (b675d300d9)
    • VK phase 3a: async compute queue selection, CONCURRENT sharing, compute-queue barrier sanitizer (f1686390d7)
    • F2/F5 step 1: pass-2 reactive/water-mask attachment; water FS writes the TAA water mask (3ff2b41ab2)
    • RT: TLAS refit + gated rigged refit / rig copy (audit F1, B7, B8) (0ad2733f9e)
    • #238: regen scripts fail on any shader push block over 128 B (bd3a959ec0)
    • #238: push-constant budget guards + startup limit log + 128 B debug cap (797b423808)
    • VK GPU timers: query-pool ring (no lost samples under overlap) + RenderVKBench A/B bench mode (2699930a30)
    • #238: move per-view draw / cull / TAA params out of push constants (<= 128 B) (4a8ae7dc10)
    • VK phase 2a: recordWorld read / write table (render-graph / async-queue seed) (912e3765c7)
    • VK F8: document the sky_zenith.w = 0 push convention at VKDrawPush (cb8236d821)
    • VK phase 2b: probe capture with private cull buffers, recorded before pass 1 (a8b85d554f)
    • VK phase 2b: god-ray composite released at the composite, not before pass 2a (a9bc6d6a2f)
    • VK phase 2a/2b: precise barrier releases, RT mask + SSAO interleave, timers (0b8440608b)
    • VK CPU (C1): ingest-sweep pre-signature before the heavy per-object steps (8947fb407e)
    • settings.xml: declare the C2 / C10 / C3 CPU toggles (5f74b9b4d7)
    • VK CPU (C3): reuse the RT rigged plan while its key is unchanged (ded7d69142)
    • VK CPU (C10 + C11 manual probes): probe discovery off the per-frame path (024b0e6e2d)
    • VK B9: lift the 4096-draw alpha sort cap with a multi-workgroup bitonic sort (31b9f852a0)
    • VK B2/F4c: skip the SSR colour copy when nothing reads mPrevColor (96e58d3d28)
    • VK B1/F4a: sharpen once (RCAS with TAA, else final-pass CAS); dither in the tonemap; skip the final pass (86780441b2)
    • VK F10/B6: gate the cull diagnostic histogram atomics behind RenderVKCullDiag (default off) (d9ca780c7c)
    • VK F8: collapse single-sided faces in the front-cull alpha draw (and water in both) in the VS (12c1dcafe1)
    • VK F11/B4: skip refraction copy #1 when no water surface can be in view (76c46fe66f)
    • VK CPU (C11): small per-frame savings in avatar vis, descriptors, anim + RT plans (40506c1bd3)
    • VK CPU (C2): texture-residency lap on its own per-frame entry point (1050a95d1c)
    • VK F9: depth-test the main-view sky (EQUAL at reversed-Z far) so it stops shading under geometry (ac3c600776)
    • VK B5: skip the RT-mask projector history copy when the last mask frame had no RT projectors (d3efcc7cca)
    • VK F12/B11: precise stages for the frame-info rt_mask patch (no ALL_COMMANDS drain) (6e1e17f3e8)
    • VK CPU (C5): dirty-gate the material-UV / terrain blob compares (2d93b6003b)
    • VK probes: copy->fill barrier for the draw-count readback; RenderVKProbeWaterSplit toggle (547b5a900f)
    • llui: make LLUICtrlFactory::loadWidgetTemplate public for column_header_template (cb09eb8990)
    • VK opaque VRS (tier 2): content-adaptive shading-rate image for the lit pass (0d5f61ea4c)
    • VK probes: working size cutoff, shared 6-face pre-cull, one avatar cull per job, water split (75442f3b80)
    • RT soft sun shadows: clean speckle on curved / skinned receivers (299e7368e7)
    • People radar: sortable column header again, in a flat Alchemy style (b8b8d1a382)
    • VK lit pass: live cost switches (RenderVKLitDebugMask) + zero-visual-change FS wins (a9f90d69dc)
    • VK GPU timers: split pass 1 (g_sky / g_lit_static / g_lit_rigged / g_mirror_occl before g_alpha_depth) (2198ee5157)
    • Reduced-avatar skin cache (#31): keep the pose-dirty bit through computeAvatarVis's final write (a6e245ae04)
    • VK reduced avatars: default animation rate 5 FPS (RenderVKReducedAvatarAnimFPS) (e2b8d1e2a0)
    • VK reduced avatars: skip pose-derived CPU work on held frames (e9abe51626)
    • VK reduced avatars: skin cache -- re-skin only when the pose changes (691b7ce6b7)
    • People radar: widen glyph/number columns to fit SansSerifSmall, 18px rows (94ce700eef)
    • People radar: Alchemy list styling instead of the Firestorm look (10166d21c5)
    • VK probes: RenderVKProbeNearestLOD toggle for the probe LOD fallback (cull flag bit 13) (4ff3be3a33)
    • VK probes: parallel cull scan, per-face avatar cull, probe sort/LOD trims (9628789168)
    • Auto probes (level 3): re-place a moving node's probe at most every 30 frames (cc2343a204)
    • God rays (#208): RT march budget -- quarter res, 4/6/8 rays, opaque-only past 32 m (186b633052)
    • RT shadow denoiser: clamped adaptive temporal + penumbra blur + plane-aware upsample (131a9652ae)
    • God rays (#208): temporal accumulation of the in-scatter (RenderVKGodRaysTemporal) (731887e445)
    • TAA glow: transition the raw glow target on every TAA frame (bcd116a0fe)
    • TAA: resolve the per-face glow target (glow / bloom shimmer under TAA) (f6a04f4c4d)
    • VK dynamic textures (#83): publish the UUID at construction, not first render (9bbb9042d6)
    • TAA (#204): native-resolution anti-flicker lock for thin / distant geometry (db3d806d24)
    • VK PBR material swatch (#83, UIPreviewMaterial=1): base colour sphere (f6e9528095)
    • VK mesh upload preview (#83): model, edges, physics, skin weights, joints (056e6de047)
    • VK BVH animation preview (#83): draw the posed dummy avatar (6207958152)
    • VK image upload preview (#83): avatar and sculpt modes (a72e2b9d92)
    • VK appearance slider hints (#83): render the isolated self avatar; less/more always usable (f167ccb7f7)
    • VK appearance composite (#83): local baked layers render on the GPU, BOM samples them live (25e067244a)
    • VK dynamic textures (#83): GPU render targets + offscreen segments, shared preview renderer (f2977fc4a3)
    • Scroll lists: recompute dynamic column widths from the live column set (60645cafdd)
    • VK glTF ingest: value-initialise instances (-Wclass-memaccess) (#39) (0927b0225b)
    • God rays (#208): ray-traced march for RT sun shadows (RenderVKSunShadows 2) (e9dfb6cf31)
    • Particles: don't retry a failed blend-pair pipeline build every frame (#35 gap 4) (a5febecbc8)
    • VK reduced avatars: section-log counters + regenerated SPIR-V (4770835a2e)
    • VK reduced avatars: LOD bias on rigged mesh and worn attachments (54fc92762e)
    • VK reduced avatars: animate at RenderVKReducedAvatarAnimFPS (default 15) (e72c32c8ff)
    • VK reduced avatars: cast no shadows (cascades, projectors, RT) (2c39122337)
    • VK reduced-detail avatar tier: ranking + per-slot tier bits (22e9749d26)
    • Probes #34 (e): per-probe light lists; mirror resolution / distance / Dynamic (f39f6a4f86)
    • Probes #34 (d): alpha-blend objects in reflection-probe captures (68a5cc035d)
    • Probes #34 (c): RenderReflectionProbeLevel 3 automatic object probes (0e31b7de35)
    • Probes #34 (b): honour the probe Dynamic flag (avatars in dynamic captures) (56a19d88cc)
    • Group titles floater (with region-based titles) and pinned/favourite groups (6fb478effe)
    • Contact sets UI + hooks (5c93623941)
    • Radar alerts: fold the Alchemy region enter/leave alerts into FSRadar (2ca920f4e3)
    • Probes #34 (a): LL update() scheduling + realtime probes (detail 2) (b8ac5af353)
    • VK: legacy SHININESS for non-spec-mapped faces + fullbright shiny env (4fc07e3c27)
    • VK: ingest glTF scene assets into mesh slots + instance SSBO (#39) (48f219b30f)
    • VK instance store: node-local pre-transforms + glTF scene picking (#39) (6c00c50911)
    • VK mesh store: U32-index glTF primitive capture + per-asset free (#39) (109758780c)
    • VK shadows: particles cast sun/moon shadows (#39, RenderVKParticleShadows) (f76b0adcc2)
    • RLVa: @setdebug RenderResolutionDivisor drives VK render scale (#39) (cd093f2175)
    • VK terrain: RenderTerrainScale (+ PBR scale/detail) apply live (#39) (8e552fffb7)
    • VK shadows: rigged alpha-blend casters without translucent shadows + in projector tiles (#39) (1a5e1741af)
    • VK auto-mask (#82): never demote rigged or glowing blend faces (match LL) (61b82e65b2)
    • Particles: draw in the planar mirror (#35 gap 5) (b98a3059ea)
    • VK auto-mask (#82): revive the gradient demotion path (7e514048e3)
    • Particles: split at the water plane; underwater particles draw pre-water (#35 gap 3) (93d0ed7535)
    • VK auto-mask (#82): live counter of blend-face demotion by reason (4d0c32651d)
    • Particles: GPU depth sort, back to front within each blend pair (#35 gap 2) (895f2b2498)
    • Particles: every SL blend pair gets its own pipeline (#35 gap 4) (d799e90d04)
    • Particles: RenderMaxPartCount caps the GPU pool; LL spawn throttles (#35 gap 1) (2ddfbfe3fd)
    • God rays (#208): Lightbox controls + VKGodRays verbose log tag (c2f39a2dd6)
    • God rays (#208): LLCleanGodRaysVK march + composite in recordWorld (b64f029ac4)
    • Water: specular anti-aliasing on the sun glint (3022eaa804)
    • TAA: RenderVKTAAMipBias setting (default -0.5, unchanged) (824f74838a)
    • Mirror: sample the unjittered capture at the unjittered position (6f30c9543e)
    • TAA: native history test on the pixel's own depth, slope-aware tolerance (b2bdf9ccc0)
    • TAA: reproject water on the water plane, one-sided history test (35adfad0ba)
    • TAA: water no longer always reactive; RG8 water mask for the resolve (82298593fc)
    • God rays (#208): cascade march + depth-aware composite shaders (0512e01500)

    Tickets

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

    222f1a9a83773f5d34de9a39d940d05edf31ca3e176ff3a7a29ef4d5bcbc6db3 Slipstream_1.0.0-beta.1_x86_64.tar.xz

    74b8e0bd405b128f2515f39a9bded18f212cb4065e7e87d59fb3360c11f92c2c Slipstream_1.0.0-beta.1_win64.zip

    9a954171aa86115ee9010fa540dd65eb244df60dce7c0b35c5ed4d2b2f41e6c5 Slipstream_1.0.0-beta.1_Setup.exe

    0a087de8bf1ecd2dfc03d5d103da5f97b1ca10b64cf90dbb3efdd9ecbdefc5c3 PKGBUILD

    Downloads