This task is for defining the UI portion of the Asset Browser in Blender.
The Assets editor
The Assets editor in Blender allows users to browse, filter, load and save assets, as well as editing asset metadata. The Assets editor lives inside Blender's UI and is exposed as an editor type. Internally, it will use the file browser as the basis, with different custom UI. The UI can be extended by each asset engine. such as which panels are shown in the sidebar.
The Assets editor, with sidebar and sourcelist hidden, set to materials
The Assets editor, with sidebar and sourcelist visible
Visual, graphical example
Drag and drop
Note: The "Add Item to Library" by dragging into the Asset Browser is currently not part of the core design. It might be added in later iterations though.
One of the core areas needed to make the Assets editor easy to use, is to make good use of drag and drop, both for loading assets and creating new ones.
For materials, it would be nice to make it so we have nicer rollover highlighting, as well as a better indicator of which material will be assigned;
Comment: The "tooltip" above should also clearly tell what happens if you drop the asset. Depending on where you drop it, different actions may be applied. This can be communicated well with these "tooltips".
For objects & meshes, it would be useful if they could snap to the surface of your scene for quick set dressing or kit-bashing:
The assets system allows for several 'variations' of an asset. You could have one main asset with several alternative versions or tweaks packaged together. When linking into the scene, users can then swap out several variations if they wish.
To see all the variations of an asset, click on the number in the top left of the asset, which can then fold out the variations:
The menu in the top left lets users switch between various asset engines and libraries, corresponding to which asset engines are installed:
In order to make the Asset Browser immediately useful, we will include these built-in libraries:
- File Browser (allows for browsing images etc in your local file storage)
- Current File (gives an overview of all the assets in your current scene. Very useful to get an overview and to re-use materials, meshes etc)
- Blender Cloud (Blender Cloud will provide a selection of assets for users to get started. Users can either download & import assets directly through the Asset Browser, or they can download the cloud library for offline use)
In addition, users can easily set up their own asset libraries in Preferences and easily start to populate them with objects, meshes, materials and so on, by dragging them into the Asset Browser.
In the sources list on the left, users can filter the assets by ID type, but they can also filter by tags as well. We only show tags that are available with the active ID type selected. A third panel here could let users define saved searches or 'smart filters' which can combine all types of filtering:
In the Sidebar on the right, users can see and edit information about the selected asset. Here users have access to editing tags, accessing variants and revisions.
One of the important requirements for the assets UI, is that it should be able to become very compact, so that users can integrate it into their Blender screen layout without taking up too much space.
Linking vs Appending assets
In different situations, users might want to either link an asset or append it.
For simple cases where users just want access to assets as a starting point, appending makes the most sense
For collaborative projects, films with multiple shots, complex environments etc, it makes more sense to create a library and then link to assets.
We want to make it easy to do both, without having to switch between modes or views, like so:
In the Inspector there will be buttons to either link or append, but as a faster method, user can either:
- Drag assets into the scene to copy it
- Drag assets while holding Alt to link it in.
This way, users can very quickly link and copy assets into their scene, using a single gesture.
Accessing assets from data-block selectors
Users may not always have the Asset Browser visible. For this reason, it'd be useful to still be able to access to your assets. We can support this by integrating with the data-block selector, like so:
By default, we could have it set to Current File, which essentially mirrors what we have today - although we could still support icon view. But if users want to directly search and browse assets outside your current file, we could still allow this, in a way that's consistent with the way the Asset Browser works.
The data-block selector could also show an indicator for data-blocks that are assets: