2024-07-23 Out of the Box: Online Assets

Out of the Box: Online Assets Libraries - day 2

Attendees:

  • Dalai Felinto
  • Francesco Siddi
  • Pablo Vazquez

Second meeting to discuss the design aspects of supporting remote asset libraries and the overall “out of the box” content creation experience. This is a potential project for Q4-2024.

The focus today was to go over the mockups (and make new ones), as well as exploring further the idea of integrating extensions repositories and asset libraries.

Asset Libraries

Proposal: Asset Libraries are now part of Extensions repositories.

  • Remote Asset Library
    • Any Asset Library listed by a repository is “automatically” listed (disabled) in the Asset Library tab.

  • Local Asset Library
    • Local Asset Libraries must be part of a Local Asset Repository.
    • Local Asset Libraries can be added (and removed) from the Asset Libraries “tab”. User has to pick a Local Repository to add them.
    • Proposal: Inside the local repository we have an “asset_libraries” folder, and each sub-folder is considered a different Asset Library.
    • Proposal: when you click on + you get:
      • Import asset library from folder/.zip.
        • Copy over into an existent Local Repository.
        • Use folder as repository.
      • Empty.

image

Tags

Tags is a special asset meta-data, which is intended for organization purposes. They can come pre-assigned by asset creator, but users should also be in full control of them.

  • All assets can have their tags created/removed by users.
  • The tags overrides is stored as part of the config files (userpref, statup, …), similar to bookmarks.txt.
  • That means that read-only local assets (e.g. Essentials), as well as remote assets can have their tags changed, besides local assets which are not in the current file.

Adding tags

Problems:

  • You need to type the exact name of the tag.
  • No way to see existing available tags.

Proposal: Show a UI similar to Mesh Attributes, that allows you to add a new attribute while listing existing attributes. (see Store Named Attribute node)

image

Offer this as a context menu option as well, to batch-apply tags to multiple assets.

Filter and smart catalogs

Problem: Searching in the Asset Browser tries to match asset name or tag name, but it is not possible to combine multiple tags, or to search by name on a tag-filtered list.

image

Proposal: Allow advanced search by using specific syntax. Combining filters, asset names, even asset types.

  • name="Rex*" AND tag="Character,Low Poly"
    This will filter assets starting with the name Rex and that have both tags ‘Character’ and ‘Low Poly’.

A search result can be saved as a “Smart Catalog”, which can then be accessed on the asset shelf, asset popup, asset browser, …

Bookmarks

Bookmark is another way to help users organize their assets.

  • Users can bookmark assets regardless of their origin (remote, local, essentials, …).
  • Bookmarks are global (across all asset libraries).
  • A Bookmark tab is always shown at the asset shelf.

image

Catalogs

Investigate if they can be edited the same way tags (saved on config ~ preferences).

Open Topics

  • Saving (remote) assets to local repositories.
    • This packs the asset similar to how the Brush assets do.
  • Define how the user interacts with the assets.
    • Waiting until download.
    • Bounding box for placement until they are downloaded?
  • Variants.
  • Asset Library vs Extension Repository:
    1. Asset library as part of extension repository (this proposal).
    2. Stupid:
      2.1 Each asset library is an independent link; or
      2.2 All the asset libraries are combined in a single asset library;
    3. In between: Asset library belong to asset repositories, but separated from entensions repositories.

Next Step

Explore the opposite design direction where asset libraries are completely independent from extensions repositories.

In this case each asset library can be either local or remote. In a way the asset library is the repository in this case.

13 Likes

This seems obvious but I assume custom remote repositories will be able to list their own asset libraries right?

I like the option where each asset library is separate item from extensions repository, and all libraries from repo is shown as a list like in that mockup. Would make web browsing experience nicer and be more consistent/easy to get

Yup. Do you have a case for having more than one asset library from the same (extensions) repository?

As mentioned on the notes, today we will take the other design for a spin. See what is gained by the extreme simplicity of treating asset libraries the same as repositories.

I hope I understand correctly but are we talking about (for example) every asset bundle on extensions.blender.org being considered as one library, or each bundle as each library? Latter offers much much customization and matches addons so easier to understand.

As for my example I use same website for my studio and classes. I want to put many asset libraries there, some general for students and some for studio work only. I wouldnt want students downloading my studio assets because theyre thrown in same asset library because theyre from same repo. And making second repo for studio will be too much work. I also assume studios will want to have one repo but separate libraries for different projects, so that teams only pull libraries of projects theyre working on

1 Like