Karl Bergström
Karl Bergström
In an effort to minimize the dependency footprint of the project, implementing an in-memory key-value store that implements the LMDB API will allow to make `lmdb` an optional dependency. It...
SerdeImportable is a really convenient way to define custom assets, but the type identifier is a UUID which can be annoying to use without tooling. It would be great to...
By implementing an in-memory transport (just something in-process, like a channel) for RPC (both loader and asset hub server), tokio's IO dependencies can be made optional, greatly reducing the total...
The loader and related systems should support an execution time budget that can be configured by users, preferably on the microsecond scale.
The Loader currently cannot handle cycles in the dependency graph and will stall.
Currently the main LoadState state machine iterates through all LoadStates every frame. Generally it only needs to iterate over states that may change. I think avoiding processing of Loaded assets...
Decompression should be implemented in the loader and enabled in the asset pipeline for cached assets. This work should probably be offloaded to a different thread to avoid blocking main...
May need to clear metadata in DB on startup for assets in folders that are not registered anymore
`futures` is kind of a heavy crate, and this PR reduces the number of sub-crates being included by capnp-rpc/capnp-futures by only pulling exactly the sub-crates that are used (futures_core, futures_channel,...