Clicks in crowded places hit nothing when a held click's depth page arrives late #1500
Labels
No labels
amd
avatars
bug
builder
cannot-reproduce
crash
epic
feature
from-viewer
gl-removal
known-limitation
monitoring
parity
perf
platform
priority
critical
priority
high
priority
low
priority
medium
provenance
rendering
rt
status
in-progress
status
testing
status
up-next
triage
ui
upstream
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
sky_line/Slipstream#1500
Loading…
Add table
Add a link
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?
In a crowded place, alt-click focus (and any world click) sometimes hits nothing, so the camera neither focuses nor orbits. Happens on the first try in a busy region.
Log (
RenderVKPickDebug), two failed clicks:In the same second, hover picks at that pixel resolve the static object under it (
=> c031a688... face 0 (static)).Cause (llcleancursorpick.cpp, held clicks from
7bbbb2a4b6):kMaxClickWaitFrames(8 frames, ~320 ms at 25 fps).pageAnswerreturns false, the walk ends undecided without visiting any fragment, and the click hits nothing. A hover walks the same answer as a partial rigged layer and finds the object.Plan:
RenderVKPickDebug: per held click, the frames each page waited and why answers were not taken, to find why pages are late.Found with the new pick log: with DisableCameraConstraints and a 4096 m draw distance, alt-click's camera pick asks an ~8,300 m ray while the held click's answer reaches 1024 m.
covers()rejected it, so every alt-click asked the GPU now (~15-20 ms; plain clicks logged none), and that pick's depth pages were not among the held click's pages, so they went missing without any hold running out. That was the second way the focus click hit nothing.PR #1502: missing pages are answered now; the long ray takes the held answer for its first 1024 m and asks now only when nothing is hit there. In a 5,300-wearer crowd the held pages themselves came in 2 frames each.