Moved to T103188: Asset System: Asset Library Loader.
CurrentFileAssetLibraryLoader
.class AbstractAssetLibraryLoader {
/** The asset library to load into. */
AssetLibrary &library_;
public:
AssetLibraryLoader(AssetLibrary &library);
virtual ~AssetLibraryLoader() = default;
virtual load_asset_representations() const = 0;
virtual load_asset_preview(const AssetRepresentation &asset) const = 0;
virtual load_catalog_definitions() const = 0;
/** Actually load the asset for applying or import. */
virtual load_asset(const AssetRepresentation &asset) const = 0;
protected:
AssetRepresentation &add_asset_representation(AssetIdentifier identifier, ID &) const;
AssetRepresentation &add_asset_representation(
AssetIdentifier identifier,
/* Name to be presented to the user. */
StringRef name,
unique_ptr<AssetMetaData> metadata) const;
void add_asset_catalog_definition_file(
AssetCatalogDefinitionFile &definiton_file,
/* Optional to support writing catalogs back. Otherwise catalogs are read-only. */
unique_ptr<AbstractAssetCatalogDefinitionWriter> writer = nullptr) const;
};
class AssetLibrary {
/* ... */
/** The loader for this asset library. */
unique_ptr<AbstractAssetLibraryLoader> loader_;
public:
AssetLibrary(unique_ptr<AbstractAssetLibraryLoader> loader);
static AssetLibrary *load(unique_ptr<AbstractAssetLibraryLoader> loader);
};
void AssetSystem::register_library(
StringRef ui_name,
AssetLibraryLocation default_location,
unique_ptr<AbstractAssetLibraryLoader> loader);
How to deal with assets that span multiple files? Library .blend files, textures in separate files, that kind of thing. How does BlenderKit handle this?
Apr 28, 2025This doc lists the desired refactors of the Extensions handling code in Blender, with the aim of getting a better basis to work on the Online Assets project.
Feb 25, 2025There are a number of things I predict will have to be spent ti
Feb 24, 2025Main Topics Generally the idea is that Harley helps on small, preapproved tasks (which tend to be neglected) falling into the following categories. Triaging Assets:Asset browser polishing. Helping out with brush assets. UI module: UI project organization (classifying reports, organize workboard, organize meetings, etc.)
Mar 15, 2023or
By clicking below, you agree to our terms of service.
New to HackMD? Sign up