mirror of
https://github.com/bevyengine/bevy
synced 2024-12-29 22:43:14 +00:00
76682fdcb7
# Objective One of a few Bevy Asset improvements I would like to make: #11216. Currently asset processing and asset saving are handled by the same trait, `AssetSaver`. This makes it difficult to reuse saving implementations and impossible to have a single "universal" saver for a given asset type. ## Solution This PR splits off the processing portion of `AssetSaver` into `AssetTransformer`, which is responsible for transforming assets. This change involves adding the `LoadTransformAndSave` processor, which utilizes the new API. The `LoadAndSave` still exists since it remains useful in situations where no "transformation" of the asset is done, such as when compressing assets. ## Notes: As an aside, Bikeshedding is welcome on the names. I'm not entirely convinced by `AssetTransformer`, which was chosen mostly because `AssetProcessor` is taken. Additionally, `LoadTransformSave` may be sufficient instead of `LoadTransformAndSave`. --- ## Changelog ### Added - `AssetTransformer` which is responsible for transforming Assets. - `LoadTransformAndSave`, a `Process` implementation. ### Changed - Changed `AssetSaver`'s responsibilities from processing and saving to just saving. - Updated `asset_processing` example to use new API. - Old asset .meta files regenerated with new processor.
13 lines
No EOL
421 B
Text
13 lines
No EOL
421 B
Text
(
|
|
meta_format_version: "1.0",
|
|
asset: Process(
|
|
processor: "bevy_asset::processor::process::LoadTransformAndSave<asset_processing::CoolTextLoader, asset_processing::CoolTextTransformer, asset_processing::CoolTextSaver>",
|
|
settings: (
|
|
loader_settings: (),
|
|
transformer_settings: (
|
|
appended: "X",
|
|
),
|
|
saver_settings: (),
|
|
),
|
|
),
|
|
) |