Asset Browser - why still so WIP?

From what i understand is that assets are tied to a blend file that acts as a root library where these object are being stored. So if you have lets say ruins assets marked as assets and you delete them IN the current file which is their root file that they are saved in that would make them gone for good after deletion.

So you would save all your assets in a specific library blender file then you would append this library to a new file/scene, this way you have an asset library with needed assets that can be inserted in every new scene.

For comparison you have Unreal Editor, if you import assets they are stored locally in the current scene, Blenders approach is flexible because you can have multiple Asset libraries available in any scene.

That is exactly not it. Unreal works in terms of projects, not scenes. You can have arbitrary amount of Levels (scenes) inside your Unreal project, and the mesh assets or materials can still be present in your content browser, without having to be used in any of the levels.

1 Like

Pardon me, i didn’t work too much with unreal so “level” got stuck in my head instead project even when it says so in the launcher :grinning_face_with_smiling_eyes:

Can anyone explain to me what is the point of the Asset Browser? I don’t get it.

Previously, before we had Asset Browser, the only way to centralize asset storage was to have some sort of library Blend file, to which you’d append your data you want to reuse, and then when you needed that data, you’d have to either append or link it from that file. It was really poor and clumsy workflow.

So I expected that with Asset Browser, we will finally have a proper way of reusing the assets between files. But I am perplexed to see it is not the case. I can not figure out, how to add an asset to the User Library I’ve created. I can only add the asset into the current file, which is literally pointless. It makes absolutely no sense to asset-ize things within just one file. The whole point of assets is reusability between the files.

All the guides on the internet say that you actually need to go to the User Library you created, create the damn file yourself, open it yourself, append the asset from the original file where you authored it, open the original file, and only then you can access that asset from the User Library in all files. That’s absolutely ridiculous. Here’s an example:

I have created a simple node group to flip the green channel of a normal map (OGL vs DX) because that happens very often.
image


I don’t want to be making this node group all over and over again. I also don’t want to be browsing the random existing files to see if I’ve made one already. That’s embarrassing workflow.

I mark it as an asset, and it appears just in the Current File library. WTF is the point of this? Why would I ever want to asset-ize a node group in just the scope of the current file? If I wanted to reuse this node group in the same file it was created in, why would I want to leave the shader editor to travel to asset browser and find it there to drag it back to the shader editor when I can simply directly find and add it in the shader editor?
image

The only case where it’d make sense to make it into an asset is, as I wrote above, if I wanted to reuse it in other files, so I don’t have to always make it from the scratch again.

But I can not put it in the type of library, which is reusable between multiple files! I have to:

  • Stop what I am doing
  • Save the working file
  • Make a new empty file
  • Navigate to the User Library folder to save the file to
  • Save that library file under arbitrary name
  • Go to File → Append
  • Navigate back to my working folder and find the file I was working on
  • Get inside the file and find the node group I made
  • Append it to the library file
  • Switch outliner to Blender File mode
  • Find the datablock I’ve appeneded
  • Mark it as an asset
  • Go to Asset Browser editor
  • Put the asset into right Catalog
  • Save the file library again
  • Open the original file I was working on
  • Get back to work

It’s such a ridiculous amount of steps. There’s almost no win over the old pre-Asset Browser workflow. The Asset Browser is failing at the one job it had - to enable users to make assets reusable between Blender files without significant interruption in the workflow.

We already had a way of turning our work into assets before, using the manual way I described above. We just did not have a way of doing it smoothly, efficiently without interrupting the work. How is it possible Asset Browser has failed at something so essential?

9 Likes

The extrude manifold tool was introduced as a stop gap solution until a proper tool for “prismatic extrusions” would be added.
Which so far hasn’t happened.

Can’t you just save a copy of the file in your library location? The only problem I see with that is that you’d copy non-asset files with it, creating useless data. You can also use multiple Blender instances to have multiple files open and ease the workflow slightly.

I think it would be relatively easy to implement an operator that places the asset (and its links) in an empty blend file and saves that file in your asset library.

Or maybe I’m missing what functionality you’re looking for.

Can’t remember but there are already 2 or 3 addons that fix the asset creation with one button, called save selected as asset to your set path (asset USER lib)… and it works in the background.
Same with KitOPS Pro, you select your stuff and click create insert … (if you mark it as asset beforehand it saves your thing where you set the path in KitOPS and works).

Also I asked some of the creators and they said they already talked to the blender dev’s & that was just at the beginning of asset browser development.
I guess they’re scared that someone is coming up and blaming them of copy/paste code from someone else.

You’ll see the same will happen with LightLinking… Lightgroups is already a mess and …
There are many industry examples for Light linking and lightgroups + BlenderBob also making a good point on it’s usage in the industry. You need a lightlinking manager to manage all those lights and meshes, etc. and NOT 12 windows to go through to make a tick here and there. They should just look at their latest blender movie. One scene and see how much lights and meshes are there to manage. No one wan’t to go through all those ticks have to be made, to manage it.

LightLink & LightGroup Manager is the solution.

Anyways, I hope they at least can make one button as described above, to “save selected as asset” into the “user lib” in the background.

2 Likes

Come on, really? The only problem you see? :smiley: Imagine I am working in a 500 megabyte .blend file and I want to save a single node group that has couple of kilobytes. Am I really going to put this entire giant file in my library because of one node group? And do I really want to have a single unique .blend file for every asset I save? And do I want Blender’s Asset Browser to become ultra slow because it has to load gigabytes of library files because I am haphazardly saving them with other unused content?

Yes, in such case, there would end up being almost no workflow difference to pre-Asset Browser state.

Asset Browser has not brought any new functionality that we did not have before. Blender could always Append and Link datablocks. Asset Browser exists just to make Appending and Linking assets easier by providing you with the user interface so that you don’t need to manually navigate to your manually created and manually organized library files, and by generating thumbnails, so that you can preview what you are appending and linking before you do, instead of having to first open the file you need to append/link from and see what the datablock looks like, if you can’t remember it just by its name.

So I am really perplexed that it fails at the very thing it was supposed to solve.

Here’s what I am looking for:
“Mark as Asset” operator should not be one click no-UI operator. Mark As Asset operator should open a popover UI with following options:

  • Target Library: Dropdown menu to select which library gets the asset saved to (Current File, User Library, etc…)
  • Catalog Name: Which catalog gets the new asset placed into.
  • Library File (Only if Current File is not selected as Target Library): Allows you to choose a Target Library File to append the asset into. Lists all the files found in the Target Library and one of the options is also “New File”
  • Filename (Only if the New File is selected in Library File dropdown): Allows you to specify the filename of the new file created in the selected target library.

So this way, here’s how I could solve my model node group use case:

  • Right Click my nodegroup and select Mark as Asset.
  • Select User Library as Target Library, select “Material Utilities” as Catalog, select “MaterialUtilities.blend” as the Library File.
  • Click OK,

OR, if the file doesn’t exist yet:

  • Right Click my nodegroup and select Mark as Asset.
  • Select User Library as Target Library, select “Material Utilities” as Catalog, select “New File” as the Library File.
  • Type MaterialUtilities as the Filename
  • Click OK.

And I can carry on with my work, without the BS distraction of saving and closing my file and doing some chores.

7 Likes

I can’t find these, anyone knows where to find these? This is indeed one of the biggest things I expected from the asset browser, to be able to reuse your own assets quickly and easily without having to mess with different files and blender instances to do this.

KitOPS Pro is one, True-Assets is another with this ability & at least one more multitool I can think off but can’t remember, that has a menu option with asset saving in the user lib.
I told the devs once about the ‘a magic asset button’, doing it already in addons, but no answer to it…

In my eyes it makes no sense yet to get one of those addons for that, because the asset case will change in the coming blender version updates.

I’m on a mac and use some sort of workaround. Because you can’t easily open a new blender instance without using the terminal every time.
So I use ‘Multi Instance Blender’ addon. With it comes a button in blender that does exactly this.
Then I select my mesh, mark as asset, copy, open a new instance, paste & save in my user asset lib.

Many steps, but less complicated than in vanilla blender…

PS: one sentence down in my post I already said KitOPS Pro !

developer.blender.org/project/board/132/

developer.blender.org/project/board/130/

2 Likes

I agree with many points here.
First, the fact that for adding assets to a user library you have to create a blend file inside that folder library, put the assets there, mark them as assets and save the file to finally have them available in the library feels very cumbersome and counterproductive, especially because even after you created the blend file in the proper library, you still have to re-open it every time you want to add new stuff to that library.
This to me defies the whole concept of an asset browser and the ease of access that it’s supposed to bring, as I would expect that once I simply created a folder path, I can add assets to it from any blender file I’m currently working. Having to open another file in a specific location every time doesn’t feel any better than appending/linking assets from a blend file, it’s actually worst and more time consuming.

Can’t agree more on this.

Unfortunately the asset browser it’s not a project I’ve been closely following as others like geometry nodes, especially since I never had a solid need of it. Now that due to a couple of projects, plus the curiosity, I tried it a bit more, I can see how problematic the current workflow is. If I knew before, I’d have participated in the discussion during its development. I’m kinda scared, since it seems that how it’s currently working is the core foundation of how it’s supposed to behave, but I hope the devs can reconsider this tiresome way of working with it, as Ludvik said, it doesn’t really feel any better than before its introduction.

5 Likes

This is being investigated. Blender itself for various reasons is not allowed to modify a .blend file without actually opening it. They’ll probably make a new separate background process for performing this task but it’ll be a while before they get around to that. I think there’s literally only 2 and a half people working on the asset browser and they all are also working on other important areas of Blender simultaneously.

When a user explicitly marks something as an “asset”, one would expect it actually gets treated as an asset, meaning the type of object that does not necessarily have to be present in the scene to be available.

I saw one of the devs somewhere say the system needs more differentiated object types. There needs to be a separation of shader node groups from geometry node groups from compositor node groups etc. There also needs to be a section in the outliner just for assets which would make them "not necessarily have to be present in the scene to be available." So they are aware of these issues and have the same solution in mind that you do. But it’s like only 1 or 2 or 3 people splitting their time between the asset browser and other areas/bugs that are equally as important.

Please keep the available workforce and resources in mind as you make your complaints.

Personally I would prefer if ALL new feature work was put on hold until after they #1 hired a new UI expert and #2 hired an apprentice dev for each major section of the code.

it’s not a project I’ve been closely following

https://developer.blender.org/project/board/132/

https://developer.blender.org/project/board/130/

2 Likes

Thank you for shedding light on this matter, it’s already good to know that they are aware of these considerations.

So when will the Asset Browser become usable? It’s still unusable because the sheer amount of steps required to turn something you make in your local scene to something you can reuse between scenes.

2 Likes

3 years unless they hire more people to assist in this one area. /s

In my opinion the problem is not that there are barely usable WIP features in Blender, the problem is they are included by default in stable releases and promoted everywhere as production ready tools.
In this specific case I am afraid many users will waste their time by trying to implement it into their workflow unsuccessfully, just to find out it doesn’t provide any significant advantage compared to libraries.
I understand that some user feedback is necessary, but users should always know if they are beta / alpha testing something. That’s the whole purpose of being able to download alpha / beta releases and provide some feedback if I want to help developers, isn’t it?

4 Likes

Your right about wasting time

I am sure this must have been said, but just in case it hasn’t,

JuuuUUUUuuuust imaaAAAAaaaagine just for a single moment in time…

Things might be easier to have a .blend act as if it brings everything together and have the assets saved out as different files with their related data blocks. For example

.blendMaterial
.blendCamera
.blendGeometry
.blendCurve
. … and so on.

So a .blend file would become a simple exposed folder structure at an OS level. Is there a reason why a .blend file can’t have everything stripped out except for one particular item such as only that geometry, curve, cameras, lights, or materials … containing that material and its related data blocks with just a file extension name changed? almost link everything is linked? Perhaps everything could be in its own 3D space as well?
A saved .blenderProj would put everything together or a Save Project as zip could be an option as well.

I am sure it’s more complicated than creating different file extension names for related objects and their data blocks.

JuuuuuuUUUUuuuust Imagine, you know, just for a moment assets would be a lot easier to pass around.