Asset Project: Workflow & UI #46059
Labels
No Label
Interest
Alembic
Interest
Animation & Rigging
Interest
Asset Browser
Interest
Asset Browser Project Overview
Interest
Audio
Interest
Automated Testing
Interest
Blender Asset Bundle
Interest
BlendFile
Interest
Collada
Interest
Compatibility
Interest
Compositing
Interest
Core
Interest
Cycles
Interest
Dependency Graph
Interest
Development Management
Interest
EEVEE
Interest
EEVEE & Viewport
Interest
Freestyle
Interest
Geometry Nodes
Interest
Grease Pencil
Interest
ID Management
Interest
Images & Movies
Interest
Import Export
Interest
Line Art
Interest
Masking
Interest
Metal
Interest
Modeling
Interest
Modifiers
Interest
Motion Tracking
Interest
Nodes & Physics
Interest
OpenGL
Interest
Overlay
Interest
Overrides
Interest
Performance
Interest
Physics
Interest
Pipeline, Assets & IO
Interest
Platforms, Builds & Tests
Interest
Python API
Interest
Render & Cycles
Interest
Render Pipeline
Interest
Sculpt, Paint & Texture
Interest
Text Editor
Interest
Translations
Interest
Triaging
Interest
Undo
Interest
USD
Interest
User Interface
Interest
UV Editing
Interest
VFX & Video
Interest
Video Sequencer
Interest
Virtual Reality
Interest
Vulkan
Interest
Wayland
Interest
Workbench
Interest: X11
Legacy
Blender 2.8 Project
Legacy
Milestone 1: Basic, Local Asset Browser
Legacy
OpenGL Error
Meta
Good First Issue
Meta
Papercut
Meta
Retrospective
Meta
Security
Module
Animation & Rigging
Module
Core
Module
Development Management
Module
EEVEE & Viewport
Module
Grease Pencil
Module
Modeling
Module
Nodes & Physics
Module
Pipeline, Assets & IO
Module
Platforms, Builds & Tests
Module
Python API
Module
Render & Cycles
Module
Sculpt, Paint & Texture
Module
Triaging
Module
User Interface
Module
VFX & Video
Platform
FreeBSD
Platform
Linux
Platform
macOS
Platform
Windows
Priority
High
Priority
Low
Priority
Normal
Priority
Unbreak Now!
Status
Archived
Status
Confirmed
Status
Duplicate
Status
Needs Info from Developers
Status
Needs Information from User
Status
Needs Triage
Status
Resolved
Type
Bug
Type
Design
Type
Known Issue
Type
Patch
Type
Report
Type
To Do
No Milestone
No project
No Assignees
10 Participants
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: blender/blender#46059
Loading…
Reference in New Issue
No description provided.
Delete Branch "%!s(<nil>)"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Asset Project: Workflow
This design task aims to develop the basic workflows for asset interaction (see also main design task #46049).
Pre-assumptions
On most basic level, asset interactions are:
Role of the asset engine in the workflow
We want to give the asset engine itself as much flexibility possible to integrate its data into the UI. Therefore, we only want to develop an UI "skeleton" that the asset engine can use to build up upon.
Integrating the asset management functionality into Blender
We have decided to integrate the Asset Manager with the Blender File Browser. We are doing this for a few reasons:
People already use the file browser as a kind of asset manager
In Blender 2.8, to better reflect this, we will rename the File Browser to 'Asset Browser'. Using the the Open, Save, & Save As... commands will continue to work seamlessly, and users won't be bothered with any asset-related options where not applicable.
When using the Asset Browser editor type, we will present different views to the user, to switch between File Browser, Current File as well as various asset repositories.
Setting up asset repositories
We've decided to do this in Preferences. Users will only set these up once, and from then on be able to quickly switch between them in the Asset Manager. While you are browsing your assets, you don't want to be bothered with setting up the repositories themselves.
UI pending for this.
UI Wireframes
This section will give an idea of what our plans are for the user interface.
First, to better support both file browsing and asset management in one editor, we'll need to start by re-designing the file browser somewhat:
See #54642 for details
Description will be updated to represent current state of discussion.
Changed status to: 'Open'
Added subscribers: @JulianEisel, @mont29, @JonathanWilliamson, @pablovazquez, @PawelLyczkowski-1
Added subscriber: @lichtwerk
In #46049, there's already some information and some proposals on usage/workflow. Quoting related content:
Here is my rough workflow proposal (already got a comment from mont that it's possible to do via add-on, so I guess it's on topic?):
When you are working on asset management, you can also consider personal asset collections. Currently they are awkward to make and manage. I think that storing them somewhere in the personal config files, so they would be close at hand at all times, with an easy access from the UI would be best.
Would it be possible to save datablocks (like materials) as single files somehow? This was merging collections would be just a matter of pasting files in the config folder.
Currently the best design for asset collections seems to be the Shelf to me: You have a dedicated window in the software, where you can drag and drop assets (ex. materials), which will be accessible later (will stay there when starting/opening projects).
The File Browser could serve as such a Shelf, like in Fluid Designer. The Shelf would be a File Browser mode. It could also be a dedicated editor window. How is Shelf different from the standard File Browser:
Asset Project: Workflowto Asset Project: Workflow & UI@PawelLyczkowski-1 Would not define such behavior in Blender itself, this is asset engine responsibility. And think we'll always need side panels (think about type filtering, but also tag, and other advanced search features…). Also, would keep the bookmark area, since it allows people to bookmark asset engines 'root paths' as well (we'll likely have to extend bookmarks to make them engine-aware, btw), that way people can easily chose to have a single asset repo, or several, etc.
Added subscriber: @zeauro
The idea of an asset tab in shelf is probably too complicated.
It would imply another tab for browsing options and adapting filters to context.
But we have a problem with the idea of two views.
Current linking/appending workflow with file browser is fullscreen only.
Desired behaviour to drag and drop data from asset browser to 3DView, Node Editor, Movie Clip Editor, NLA Editor...etc is not possible for blend datas like it is for files.
File Browser have lots of option in his header.
I think that it should be a new editor.
Workflow
User defines area used by asset browser in screen.
User will start by defining repos that interest him. So, for this step, he can temporarily maximize asset browser's area to display side panels.
Then, user minimizes area and hide side panels.
Finally, he can drag and drop data when needed.
Here, a proposal with a shorter header with what should be kept.
Navigation icons could be in a side panel.
User is often preoccupied by only one type of data at a time.
So, a unique filter can be choosen at a starting point. And if more are needed, advanced filters in side panels would be used.
Maybe, name filter or other crucial options could be inside asset browser's main region instead of inside header.
I really do not see why? Tons of addons already add their own panels in UI, really have no idea why asset engines could not do the same?
It is absolutely and perfectly possible - and is part of my TODOs, it’s just a matter of implementing it.
Actually, each asset engine redefines that header as it likes (it has a callback to draw the header).
In fact, I think Outliner will need much more work than FileBrowser (given all that .has been done there already) to be asset-ready now (it lacks, among other things, the concept of active element…).
Also, I’m quite not convinced we should split filebrowser in two to edit an asset repo, would rather have two FB side by side, and user drag'n'drop between them, Blender only providing a mere glue code through the D'n'D process and everything else is handled by source and destination engines (which can be same, different, mere file browser itself, etc.). Probably dragging from the Outliner too when current opened .blend file comes into play…
I don"t mean it is impossible.
I mena it would probably difficult to maintain if for examples, in paint modes, filters are restricted to brushes, palettes, paint curves, textures, image.
And if in object mode, it should be groups, objects, materials etc...
And if it is different in each editor.
In fact, I think that file browser and asset browser should be splitted to distinguish files opening/saving and assets importing.
In first case, panels displayed are relative to formats.
In second case, only blender datas are treated with global options that can be relative to engine.
In both cases, repo have to be defined. A drag and drop between two file browsers looks like a slow workflow.
A user can have organized data into directories and he would have to re-fill his bag for each new .blend ?!
I would also think that having as much of asset interaction (widgets) available in own panels in the UI would be good [even though 'default' places for this could be filebrowser/outliner]
just a quick note/todo about this (already had a quick chat with @mont29 about this):
atm. we cannot display the previews of non-loaded data in own panels. they of course show fine in the filebrowser but there is no way to display them from py using e.g.
row.template_icon_view()
which would allow for flexible "shelf-like" panels already. [iirc, this requires an API for thumb-manager...]was also looking into dragndrop .blend contents from filebrowser (but the current fullscreen limitation is blocking -- why do we actually have this limitation?)
Another thing that came up is handlers (to implement extra actions upon linking/appending): how about implementing something like
bpy.app.handlers.append_pre
bpy.app.handlers.append_post
bpy.app.handlers.link_pre
bpy.app.handlers.link_post
Added subscriber: @bliblubli
That is very true. Would be awesome to just have a little file browser window near the viewport like in Fluid Designer to be able to drop assets and place them directly where needed.
Added subscriber: @JasonSchleifer
Added subscriber: @michaelknubben
Changed status from 'Open' to: 'Resolved'
Added subscriber: @PetterLundh