Better Normal Map Mipping?
- Dominant language
- Rust
- Stars
- 48.2k
- Forks
- 4.8k
- Avg merge
- 3d 16h
- Merged PRs (30d)
- 171
Description
## What problem does this solve or what need does it fill?

With standard texture mipping normals data is lost (obviously) discussed here [video, time: 36:40 ](https://www.gdcvault.com/play/1021771/Advanced-VR), so "rough" surface becomes smooth. With better texture filtering and sampling we can achieve more consistent and realistic material representation.
"Our roughness maps stores the “roughness” of a surface, or a cone (more specifically a lobe) in which direction the light can reflect at a micro scale. So when our normal information gets lost during downsampling – why not make it part of that microscale?" [[blog](https://kosmonautblog.wordpress.com/2018/09/17/roughness-mip-maps-based-on-normal-maps/)]
## What solution would you like?
[Roughness mip maps based on normal maps?](https://kosmonautblog.wordpress.com/2018/09/17/roughness-mip-maps-based-on-normal-maps/)
https://www.cs.columbia.edu/cg/normalmap/normalmap.pdf
https://developer.download.nvidia.com/whitepapers/2006/Mipmapping_Normal_Maps.pdf
https://advances.realtimerendering.com/s2018/MaterialAdvancesInWWII.pdf (page 11)
Contributor guide
Research direction
The issue names no files, tests, or entry points; start by reviewing the linked normal-map and roughness-mipmap papers and locating Bevy's material texture mipmapping path. Done would require an agreed implementation of normal-aware filtering or sampling and a way to validate the resulting material representation, neither of which the issue specifies.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- computer-graphics, game-dev
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100