Alpha blending faces layered close to each other display in the incorrect order #742
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
2 participants
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
sky_line/Slipstream#742
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?
Environment
Slipstream Beta 1.3.0.8 (64bit) (SSE4_2)
Microsoft Windows 11 64-bit (Build 22621.4317)
Description
The viewer seems to be having trouble with rendering alpha blending faces that are very close together, like the eyes of the OpenPony avatar. In this case, the different layers of the eye (iris, shade, highlight, pupil, eye shine) are being layered in the wrong order, causing it to look very different from how it's intended to look.
The attached image contains a comparison between what the OpenPony eye of the model used usually looks like (taken on Firestorm, but previous builds of Slipstream also displayed the eyes that way), and the way the Beta 1.3.0.8 build renders them.
The attached video also demonstrates another symptom of the problem: if you look closely enough, you can notice that part of the pupil briefly clips through the eyelids during the eye closing animation.
Reproduction steps
To make an OpenPony model with which the bug could be visible, you have to use the [OP] OpenPony Full Customization HUD, press the button featuring an eye with a + symbol to go to the eye customization window, and apply any eye from there that uses all 6 of the layers given as options. The image attached in these reproduction steps demonstrates what was used in the examples in the description.
Thanks for the detailed report and the comparison screenshots! The cause was a see-through layer tolerance added in Beta 8 (for road decals) that was also applied to avatars: eye layers only millimetres apart (iris, shade, pupil, highlight) could all draw over each other, so the pupil got washed out. Avatars now use the exact depth test again, and in our testing the eye layers draw in the right order on a pony avatar. The fix will be in 1.3.0 Beta 10 -- please try it when that releases and let us know if you still see it.
Shipped in 1.3.0 Beta 10 (
b06700639dAvatar alpha keeps the exact depth test). Closing -- reopen or comment if you still see this.