bevyengine / bevyengine/bevy

`AssetServer` and `gltF` workflows can fail silently in numerous distinct ways

Open
#7,581 6 comments 2 reactions 0 assignees View on GitHub
A-Assets A-glTF A-Rendering C-Usability
Dominant language
Rust
Stars
48.2k
Forks
4.8k
Avg merge
3d 22h
Merged PRs (30d)
161

Description

## What problem does this solve or what need does it fill?

When working with `gltF` files, there are quite a few ways for something to go wrong:

1. The file doesn't exist.
2. The path is wrong.
3. You forgot to specify `#Scene0`.
4. You specified the wrong scene number.
5. Your scale is wildly wrong.
6. Your model is inside out and you have backface culling enabled.
7. Your camera isn't looking at the model.
8. Your material is fully transparent.
9. You're attempting to save the `gltF` scene as something else, possibly a `Mesh` or `StandardMaterial`, rather than a `HandleScene`.
10. You specified an invalid scene path.
11. One or more of the systems you're using isn't running.

Currently, we detect and report 1 and 2. All other cases silently fail, with nothing (apparently) being rendered.

## What solution would you like?

Add error reporting and failures to cases that are flatly wrong: 3, 8, 9, 10.
Warn in cases that are possibly wrong: 4.
Add a prominently documented model debugging tool to look for and report on the remaining cases related to a malformed model.

## What alternative(s) have you considered?

The categorization of these failure modes is very much up for debate.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.