Assets.
typedef struct Assets { uint sig; void *wobj; bool loading; } Assets;

Begin asynchronous assets load.
API void AssetsBeginLoadAsync(Assets assets, wcstr path);
assets: Asset stream.
path: Path.

Asynchronous load of assets. Call frequently from main code to load assets.The normalized return value (0..1) can be used to track progress.
API float AssetsLoadAsync(Assets assets);
assets: Asset stream.
returns: Normalized completion value. 1=Complete.

Call when asynchronous assets load is complete.
API void AssetsEndLoadAsync(Assets assets);
assets: Asset stream.

Synchronous load of assets. Blocks until all assets are loaded.
API void AssetsLoad(Assets assets, wcstr path);
assets: Asset stream.
path: Path.

Create assets.
API Assets AssetsCreate();
returns: Asset stream.

Destroy assets.
API void AssetsDestroy(Assets *assets);
assets: Asset stream.