Game: Arc B390 (Panther Lake iGPU, Windows): Kokiri Forest is washed out by a bright haze; an Arc B580 at the same spot is not #618
Labels
No labels
area/accessibility
area/audio
area/input
area/install
area/menu
area/renderer
area/saves
area/upscaling
beanstalk: approved @ 1697603
beanstalk: approved @ 2c5a62e
beanstalk: approved @ 4fd82b7
beanstalk: approved @ 64d6d09
beanstalk: approved @ 6f91fae
beanstalk: approved @ 70a78f9
beanstalk: approved @ 8d361dc
beanstalk: approved @ 9d8356e
beanstalk: approved @ abf2227
beanstalk: approved @ d82f202
beanstalk: approved @ e5f1e40
beanstalk: approved @ ee8ab5f
ci: approved
good first issue
gpu/amd
gpu/igpu
gpu/intel
gpu/nvidia
help wanted
kind
bug
kind
chore
kind
docs
kind
feature
kind
performance
kind
question
needs measurements
platform/linux
platform/macos
platform/steam-deck
platform/windows
preview
priority
critical
priority
high
priority
low
regression
status
blocked
status
confirmed
status
duplicate
status
invalid
status
needs-info
status
wontfix
testing wanted
ci: approved
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
MagicBeanDev/Longshot#618
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Longshot version
Built from source: main
414f56e2(v3.0.0-rc.3-82-g414f56e2), ascripts/dev_packs.pyruntime with no pack.Channel
Built from source
What kind of problem
Graphics (missing, black or wrong-coloured things, lighting, flicker)
What happened
Kokiri Forest is covered by a bright, milky haze that washes out the whole scene: the trees, the houses, the ground, the characters. The forest's light beams and mist are there on other GPUs, but here the scene behind them loses almost all its contrast and colour. It holds steady and doesn't flicker or come and go.
Nothing was left out or waiting in play: the log says
a frame: 0.1 draws left out (not ready), 0.00 waits for shaders or pipelines, with the shader preparation done before. So it isn't #404's case, a weak Intel laptop whose light and exposure passes are left out while shaders compile.It looks like something specific to Intel iGPUs. #189's description first named "haze over the trees and houses" on an Intel iGPU (a Core Ultra 7 155H, Meteor Lake) beside the white blocks. #189 fixed the white blocks and flashes here: with it, they're gone on this PC (#189 (comment)). The haze stayed, and its "Why" was then narrowed to the blocks. The B580 reference is a discrete card, and it doesn't show it. Differences between the two: integrated against discrete, no VRAM mirror here (
VRAM mirror of buffer pools off), and driver 101.9150 against 101.9154.Where in the game
Kokiri Forest (child): by Link's house next to Saria, and on the path towards the Deku Tree.
How often
Every time, on every build I ran on this PC: main
f647a072,fbd42024and414f56e2, and #189 and #443.Graphics card and driver version
Intel Arc B390 (Panther Lake iGPU, PCI
VEN_8086&DEV_B080, no VRAM mirror), driver 32.0.101.9150CPU, RAM and operating system
Intel Core Ultra X7 358H (16 threads), 32 GB, Windows 11 Pro Insider Preview build 26220
Changes from the defaults
None. Output 2560x1440, SDR (
the Insert menu's HDR 0, HDR10 swapchain no: SDR), the FPS counter shown.longshot_log.txt
The run's log is on this PC: on request, or I can run with any switch that would narrow it down.
Screenshots or video
(attached below)
Before you send it
414f56e2from source; not checked on a nightly.)Found: the haze is the game's exposure, about 8x too high, because the shaders' float adds lose part of their sums on this GPU. Fix in #816.
What each test did (rt-main, main
414f56e2, the same spot by Saria):RX_VK_MIRROR=1(forces VRAM mirrors on the iGPU)RX_VK_UB_SNAPSHOT=0(=1is this PC's default)RX_VK_SPLIT_UBFLUSH=1RX_VK_READBACK_LATE=newestRX_VK_CHUNK=0RX_VK_NATIVE_FADD=1(its own runtime, shaders prepared again)So it isn't memory without a VRAM mirror being read stale.
Where it appears (a frame dump,
RX_VK_DUMP): the scene target is already too bright at its first write, the sky (489438d7): mean 20.7 against 2.59 with native adds, and every lit pass after it keeps that factor. After the fog pass (1a7482c0) it is 0.78 against 0.11; the tonemap (ab368194) then outputs a linear mean of 0.71 against 0.15. Everything after the tonemap passes the picture through as it should: the TAAU stand-in's output equals its input, and the last copy's sRGB encode is the game's own (NVN_FORMAT_RGBA8_SRGB). The game pre-exposes all it draws by a value its GPU passes sum up; one of the frame's float adds is499dbfd0, a single workgroup summing a 256x256 sky texture, where the compare-exchange loop runs out of its 1024 attempts and drops adds. Native adds on this GPU are on main only for Meteor Lake, Arrow Lake and (since #444) Battlemage, not Panther Lake.#606 looks like the same cause: the hazy dump run lost the device at
499dbfd0(stage 0x1: marker 1085480 (dispatch of program 499dbfd0721d2858, frame 2170)), the program #444 found losing the device on a B580. With native adds there was no loss in 40 minutes of play.Checked on current main (
53f96d78) in four interleaved runs at Saria's spot, main and the fix alternately: haze in both main runs (screen linear mean 0.778), gone in both fix runs (0.205; an Arc B580 at the same spot is 0.199). The screenshots are on the PR.