Currently, the customization of save/load pipelines is not as ergonomic and efficient as it could be. Usage of remove_component is also inefficient when DynamicSceneBuilder has allow and deny methods to filter components without a removal pass.
SavePipelineBuilder and LoadPipelineBuilder types should be introduced to solve these issues.
SavePipelineBuilder should also define the DynamicSceneBuilder and pass it to the save pipeline, instead of save constructing one in place.
LoadPipelineBuilder doesn't make much sense right now since load pipelines just read whatever was saved. Should revisit if there is a use case for customizing load process.
Currently, the customization of save/load pipelines is not as ergonomic and efficient as it could be. Usage of
remove_component
is also inefficient whenDynamicSceneBuilder
hasallow
anddeny
methods to filter components without a removal pass.SavePipelineBuilder
andLoadPipelineBuilder
types should be introduced to solve these issues.SavePipelineBuilder
should also define theDynamicSceneBuilder
and pass it to the save pipeline, instead ofsave
constructing one in place.