5 Commits
Author SHA1 Message Date
ayozetr 4e0aa911d2 Runtime: large copy lists are recorded in slices
Loading an area on NVIDIA, a download of the buffer cache carried 178563
buffer copies (4.3 MB) into one deferred command. A command's data shares a
128 KiB recording chunk with it, so ReserveRecordData's check stopped the
game (exit 23). Buffer copies, guest chunk copies, buffer-to-image uploads
and image-to-buffer downloads are now recorded as one command per 64 KiB
of regions; UpdateBuffer already split its data. From the Linux fork.
2026-11-01 14:54:33 +00:00
ayozetr 4e715f48d5 Texture collector: no write-back over memory the game reused (#25, #32, #35)
When the collector frees a GPU-written image it writes it back into the
game's memory first. Write tracking does not see every change there: the
game's heap reusing the memory of an area left behind. The image still
looked clean, its write-back overwrote the heap's bookkeeping, and the game
crashed later in its allocator (0x208599f, 0x20859c7, 0x208596a) or stopped
with "memory block seems to be improper or freed already"; on the Steam
Deck at every second lamp travel (the Linux fork's #35). Keeping GPU-written
images longer (the previous change) makes their write-back older, and more
exposed to this.

The game's memory under an image is now hashed when the GPU first writes it
since its last upload (Image::NoteGpuBase, on every path that marks an image
GPU-written: draws, storage writes, copies, blits, resolves, clears and the
scene resolution's copies), and the write-back goes ahead only if it is
unchanged; otherwise the image is dropped. The pressure report counts them.
2026-11-01 14:15:02 +00:00
+24 0fc2921c45 0.7: native Windows build with online and mods, one memory model, faster heavy views, cloth and shadow fixes
- Windows 10/11: native bb-probe.exe (llvm-mingw / MSYS2 CLANG64), WPF launcher in five
  languages; online module online\bbnet20.dll with both pools (Seamless Hunt + BBSC, The
  Hunter's Dream with Discord sign-in) and BBSC's local game server; mods and XML patches from
  the launcher (junctions and hard links without Developer Mode); DLSS / DLSS FG, FSR 4.1.1 and
  FSR 4.1.2 driver models, FSR 4 from AMD's SDK 2.4 DLLs; NVAPI power profile on NVIDIA.
- The old memory model of 0.3 removed; the game's graphics heaps grow on demand.
- Faster: occlusion queries counted only inside the game's open queries (164 -> 189 FPS in the
  heaviest view), ring dedup and copy-shader filter (less PCIe traffic), PGO retrained, Steam
  Deck draw preparation, FSR 3.1 FG shaders.
- Fixes: cloth fluttering above 30 FPS (#58), point-light shadow wedges, HUD item-icon grid,
  vertex explosions across heap pieces, FPS drop after a save switch, FG ghosts, crash
  0x2169edc (#336), FSR 3.1 protected memory (#85), Wayland HiDPI, launcher translations (#381).
- New: AA menu (FXAA2_GS, SMAA), FSR 1, GT-VBAO, AMD Anti-Lag 2, trophies.jsonl, shader
  recipes before play, live resolution by default.
- Packages: Windows zip, AppImage, and a Linux folder (tar.zst) with the online module open.
- Removed: the shadp2p online module, LEGO Dimensions toy pad and NGS2 code.
- Credits: docs/CONTRIBUTORS_0.7.md (pull requests since 0.4 and outside work).

Co-authored-by: Qiming-Liu <[email protected]>
Co-authored-by: AndiMajore <[email protected]>
Co-authored-by: adds39939 <[email protected]>
Co-authored-by: iannitram <[email protected]>
Co-authored-by: maiconjsv <[email protected]>
Co-authored-by: whp199 <[email protected]>
Co-authored-by: DominickCobb-rs <[email protected]>
Co-authored-by: Sarxzer <[email protected]>
Co-authored-by: wheat32 <[email protected]>
Co-authored-by: ArenaMMORPG <[email protected]>
Co-authored-by: SrShadowy <[email protected]>
Co-authored-by: Gustavo Bomfim <[email protected]>
Co-authored-by: Teefpyre <[email protected]>
Co-authored-by: SrDeTs <[email protected]>
Co-authored-by: IgorWarzocha <[email protected]>
Co-authored-by: itachi-re <[email protected]>
Co-authored-by: Bainianzzz <[email protected]>
Co-authored-by: hideoneric <[email protected]>
Co-authored-by: guitaripod <[email protected]>
Co-authored-by: unTanana <[email protected]>
Co-authored-by: andrR89 <[email protected]>
Co-authored-by: ayozetr <[email protected]>
Co-authored-by: JuanraCM <[email protected]>
Co-authored-by: SaeedShow <[email protected]>
Co-authored-by: msisovic <[email protected]>
Co-authored-by: axpico <[email protected]>
Co-authored-by: Aryxa <[email protected]>
Co-authored-by: Obrikash <[email protected]>
Co-authored-by: noelmiller <[email protected]>
Co-authored-by: AyrtonSanabio <[email protected]>
Co-authored-by: Supermedo <[email protected]>
Co-authored-by: Awaken <[email protected]>
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-29 02:55:53 +03:00
deadinsideandClaude Opus 5.5 8185b88d80 0.6: online on shadPS4 0.20 (Seamless Hunt + BBSC, The Hunter's Dream), Laurence cinematic, flicker and load crash fixes
- Online module libbbnet20.so: shadPS4 v0.20 network/NP/shadNet code, BBSC ported to it,
  The Hunter's Dream backend (droogie/bbhost) with Discord sign-in; launcher pool choice;
  the shadp2p module stays as a fallback (BB_NET_GEN=19).
- Laurence's cinematic above 30 FPS: render-job slots given back; the render resource cache
  gets 512 MiB of port direct memory past the game's pool (the game's heap unchanged).
- Single shifted/quarter frames: push constants recorded after the pass begins (the occlusion
  results' compute dispatch overwrote them).
- Crashes: 0xa0020007 (#207, blur-kernel sample clamp), Bad PM4 at save load (FX init clear
  race, command buffers copied at submit), null V# tables (139).
- Light shafts on NVIDIA (#204, PR #210), #205, texture GC on 8 GB, PR #206/#224/#214/#211,
  FSR 4.1.1 reset after save change, SSAO forced back, SSR at start, present wait mask,
  Polaris labels on the CPU (#203), AUR GE-Proton (#186), 21 game languages (#249).
- Live: F3 30 FPS limit, effects without a restart, keyboard stick/run/dodge/jump, cursor,
  GPU choice in the launcher; more draw-preparation workers on 12+ thread CPUs.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-19 09:30:55 +03:00
deadinsideandClaude Opus 5.5 72e5c8ce22 0.6-pre1: new memory model on every GPU, seamless co-op, aspect ratios and frame rate by hooks, own renderer
- Auto memory model = the new one on every GPU (layer memory module, no sparse binding);
  the 0.3 model stays as a launcher option.
- Seamless co-op (BBSC) in the online module; Seamless Hunt servers by default; the shadNet
  client reports its version and stays offline when a server refuses it.
- Any aspect ratio live through game hooks (camera, HUD anchoring, UI fills, markers);
  frame rate through hooks instead of patches.
- Keyboard and mouse: native mouse camera, menu mouse pointer, Dark Souls III-like layout,
  chord bindings, button prompts for the device in use (HUD atlas included).
- Real occlusion queries; own command processor, GCN definitions, shader translator,
  renderer and caches instead of shadPS4 (byte-identical SPIR-V on the game's shaders).
- Fixes: NVIDIA start (#135 #147 #152), RIP=0 (#161 #177 #181), #149, #142, #162/#192,
  #178, #144/#165/#166, #134, #172, #186, #136, #145, lamp-travel loading hang (PR #193),
  FPS aging, write-trap race, exit crash, pipeline-cache stages, AppImage --play.
- Runtime tests follow the NID-only import rule.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-15 12:18:28 +03:00