Mesh upload: better auto-generated LODs (attribute / skin-weight aware simplification, vertex placement, error shown in the UI) #618
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#618
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?
Many SL LODs, including the owner's own, are made with the viewer's mesh upload window (Generate / auto LODs). Better simplification there gives every Slipstream-uploaded mesh better LODs for everyone who views it, in every viewer.
Today
The upload window's generator (
llmodelpreview.cpp->indra/llmeshoptimizer/llmeshoptimizer.cpp) uses meshoptimizer'smeshopt_simplify(positions only) and falls back tomeshopt_simplifySloppy(ignores topology). It does not look at normals, UVs, skin weights or seams.Investigate / do
meshopt_simplifyWithAttributeswith normal, UV and (for rigged mesh) skin-weight attributes, the same approach as our runtime decimator (#561), and keep UV seams and material boundaries.meshopt_simplifyWithUpdate(0.25, experimental): moves kept vertices to better positions, which reduces shrinkage. It's fine for uploads, since the uploaded LOD is its own geometry.Related: #561 (runtime decimator), #611, #612, #613.