-
-
Notifications
You must be signed in to change notification settings - Fork 4.5k
Texture atlas preprocessing & the art production pipeline. #13713
Copy link
Copy link
Open
Labels
A-AssetsLoad files from disk to use for things like images, models, and soundsLoad files from disk to use for things like images, models, and soundsA-EditorGraphical tools to make Bevy gamesGraphical tools to make Bevy gamesA-RenderingDrawing game state to the screenDrawing game state to the screenC-FeatureA new feature, making something new possibleA new feature, making something new possibleS-Needs-DesignThis issue requires design work to think about how it would best be accomplishedThis issue requires design work to think about how it would best be accomplished
Description
In order to make Bevy a tier 1 engine for 2D games, a better texture atlas art production pipeline is needed.
Requirements:
- It should be possible to drop texture atlas source art into a directory and have the asset preprocessor rebuild the atlas.
- In this sense, the individual source art is uncooked and the atlas is a cooked (shippable) asset.
- More texture atlas services should be exposed through this preprocessing (and the underlying API).
- Preprocessing should be resilient to bad data, communicating the nature of the error without panics. Cooking content should be a viable runtime development activity by non-programmers on the team.
Additional Features:
- The atlas preprocessor should be configurable.
- Option: Trim whitespace. To pack efficiently, the asset preprocessor should be able to trim whitespace and record in metadata the amount trimmed so that the original UVs can be reconstructed.
- Option: Rotate images. To pack efficiently, the asset preprocessor should be able to rotate images 90deg and record in the metadata the rotation bit so that the original UVs can be reconstructed.
- Option: Paginated atlases. It should be possible to specify the max texture size of an atlas and, if the source art exceeds this arrangement, produce additional atlas pages. Meta data would track this and use the appropriate texture binding at render time.
- Option: Resampling rules. It may be useful to be able to specify resampling rules for input images before they are written to the atlas.
Many of these are features of the Esoteric atlas packer, which is very good.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
A-AssetsLoad files from disk to use for things like images, models, and soundsLoad files from disk to use for things like images, models, and soundsA-EditorGraphical tools to make Bevy gamesGraphical tools to make Bevy gamesA-RenderingDrawing game state to the screenDrawing game state to the screenC-FeatureA new feature, making something new possibleA new feature, making something new possibleS-Needs-DesignThis issue requires design work to think about how it would best be accomplishedThis issue requires design work to think about how it would best be accomplished