bevyengine / bevy

A refreshingly simple data-driven game engine built in Rust
https://bevyengine.org
Apache License 2.0
36.46k stars 3.6k forks source link

Document accepted normal maps #8435

Open janhohenheim opened 1 year ago

janhohenheim commented 1 year ago

How can Bevy's documentation be improved?

I'm talking about StandardMaterial.normal_map_texture. Strictly speaking, this is dealt with by the image crate and not Bevy itself, however many (most?) normal maps are exported per default as 16 bit per channel PNGs, which when used in Bevy result in a very confusing error message. I myself, as well as a few people on Discord have run into this and lost some time debugging a situation which should be a standard use-case.

Therefore I think we should add a cautionary note in the docs.

I'd open a PR for this, but as you can see in this Discord thread, I don't know what Bevy actually accepts as a normal map other than 8 bit per channel PNGs.

superdump commented 1 year ago

If someone provides a test glTF with one of these 16-bit normal maps, that would be very useful.

janhohenheim commented 1 year ago

I can provide some tomorrow. Do you want only 16 bit per channel PNGs or should I also add a glTF made with an EXR?

superdump commented 1 year ago

At least a gltf with the 16-bit png normal map, please. I don’t know about whether EXR is/should be used for normal maps.