Picking: shoot through transparent texels (alpha mask/blend) instead of selecting the see-through face #276
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#276
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?
Bug: clicking or hovering selects a face even where its texture is see-through. The pick ray stops at the first triangle it hits, ignoring texture alpha. Examples:
You end up selecting or touching the cut-out card instead of what's visibly behind it.
Expected: the pick ray treats transparent texels as empty and continues through them, so you select what you actually see.
This is separate from Build > Options > Select Invisible Objects / "pick transparent". That covers objects whose face alpha is 0 (invisiprims, fully transparent prims). This ticket is about normal, visible objects whose texture has transparent areas. When "select invisible" is on, keep today's behaviour (hit everything), so builders can still grab transparent geometry deliberately.
Implementation notes:
clean_pick_rt.comp, #255):clean_rt_common.glsl, including texture transforms / texture animation and the mask cutoff).clean_pick_skin.comp): the same alpha test per candidate triangle.LLCleanInstanceStore::lineSegmentIntersect/ LLVOVolume intersect):Test:
Verified done: pick rays now pass through transparent texels on alpha-mask/blend faces: compact 4-bit pick alpha map, CPU pick (prims, mesh, attachments, HUD), GPU rigged/animesh pick with PickAlphaThreshold; Select Invisible keeps hitting everything, invisible click zones and HUD buttons stay clickable. Commits:
b17814712d,a7b9025ebd,c20bcdc55f,b174026670. Shipped in v1.0.0-beta.4.