AssetLibraryTools: Free addon to speed up the creation of Blender 3.0 asset browser libraries

About

AssetLibraryTools is a free addon which aims to speed up the process of creating asset libraries with the asset browser, This addon is currently very much experimental as is the asset browser in blender.
This is my first proper blender addon so I’m sure there are parts of my code which should be changed, please do point them out to me if you decide to go through the code.

I hope you guys find this addon helpful :slight_smile:
If you have any issues or suggestions please leave a comment.

Features

  • Batch import PBR materials from texture sets
    • Add real displacement to materials upon import
    • Add fake user to materials upon import
    • Skip materials that already exist
    • Import with UV or object mapping
    • Add extra utility nodes
    • Filter textures by string (dont load if contains x)
  • Batch import models of various filetypes (fbx, gltf, obj, x3d)
    • Hide imported models straight after import
  • Batch append objects/materials from multiple .blend files at once
    • Search for .blend files to append from in subdirs recursively
    • Dont append lights option
    • Dont append cameras option
  • Batch download CC0 assets from ambientcg.com via a python script
    • Filter assets by: Keyword, Download attributes, File extension
    • Unzip downloaded zip files automatically
    • Delete zip files after unzip automatically
    • Skip downloading files that already exist
  • Generate custom collection/object asset browser thumbnails (base code from https://github.com/johnnygizmo/asset_snapshot)
  • Batch import SBSAR files via Adobe substance 3D add-on for blender
  • Batch mark/unmark materials, meshes, objects, images, and textures as assets
  • Batch generate asset previews
  • Batch delete all materials/objects/textures/images/meshes
  • Enable real displacement for cycles on all materials at once
  • Change displacement scale on all materials at once
  • Clean up duplicate materials (based on name)
  • Clean up unused materials
  • And more to come

Links

Youtube video (outdated now, but still helpful):

Github:

Gumroad:
https://lj3d.gumroad.com/l/AssetLibraryTools
Discord server:

24 Likes

Update v0.1.1:

  • Added support for running ALT_CC0AssetDownloader.py from blender via gnome-terminal as well as cmd.
  • Made some minor code improvements to __init__.py and ALT_CC0AssetDownloader.py.

Asset browser memory usage problem:

See https://developer.blender.org/T89038 for some info about the high memory usage I mentioned in the main post. Hopefully the memory usage from thumbnail generation wont be so high some time soon.

3 Likes

Update v0.1.2

  • Added new utility operators:
    • OT_DeleteAllTextures
    • OT_DeleteAllImages
    • OT_UseDisplacementOnAll (Enables real displacement in cycles on all materials)
  • Made all import_(x) values true by default

Update v0.1.3

  • Added SBSAR batch import operator (Requires Adobe substance 3D add-on for blender)
  • Added some warning symbols on some of the text

The SBSAR importer can be a bit broken at times so it is definitely an experimental feature.

4 Likes

Update v0.1.4

  • Swapped all the mark/clear operators for one operator, “OT_ManageAssets”. This went along with reworking the “batch mark/unmark” UI
  • Added ability to batch mark/unmark images as assets
  • Added ability to batch mark/unmark textures as assets
  • Added the operator OT_DeleteAllmeshes
4 Likes

Update v0.1.5

  • Swapped all the DeleteAll(x) operators for one operator, “OT_BatchDelete”. This went along with reworking the “utilities” UI
  • Added option to skip existing materials when batch importing materials
  • Added a couple extra separators into parts of the UI
1 Like

Update v0.1.6

Some very minor changes, main change is making it so the ALT_CC0AssetDownloader.py script will install the requests module via pip and retry if importing the module fails.

Otherwise just renaming variables and stuff like that.

Will do a more substantial update at some point, probably going to add additional node setup templates for batch material importing.

I also plan to make a quick video overview of the addon and put it on youtube, and maybe make videos for any large updates I make.

Many thanks for this addon
But a small video or a documentation would be very appreciated
Bertrand

1 Like

Video is done!

3 Likes

Many Thanks for the addons and the explanations
Bertrand

1 Like

Update v0.1.7

Added a bunch of stuff in this update!
Thanks to smile#9766 for suggestions, and Johnny Matthews for the base asset snapshot code.

  • Added batch append from .blend files. Currently you can import objects or materials, with a few settings to control it.
    image

  • Added “Asset snapshot” into assetlibrarytools. Asset snapshot is its own standalone addon, which someone suggested I should include in assetlibrarytools, so I made some additions to the standalone addon, and then put the code into assetlibrarytools.
    image
    See this video on asset snapshot for some more info (that video is now a bit outdated, but still reasonably accurate)

  • Added “Clean up duplicate materials (simple)” to the utilities panel, this removes duplicate materials based on their name (the .000 at the end of a duplicate material name for example) and sets any material slots it removed materials from to the original material.
    Also added “change displacement scale on all materials” to the utilities, which can be handy.
    image

  • Made it possible to use all ambientcg download attributes (still some room for improvement due to these values being hard-coded, instead of downloaded)

  • Improved FindPBRTextureType

  • Added info text to asset downloader panel

4 Likes

Hi
Very impressive work and very useful. Thank you for that.
I’ve got an error with the asset snapshot utilities. I know you’re not the primary developper but maybe you can help me anyway.
When I click Asset Snapshot (Object or Collection), my 3D View space changes to File Browser and I get this traceback message

Thanks by advance for your help

1 Like

Do you get this error when using the standalone version of asset snapshot?
If so youre better off talking to the main dev of asset snapshot.

1 Like

Hi
Thanks for your reply.
No it works with the standalone version of asset snapshot

2 Likes

Ive recently updated the the code for the snapshot part of assetlibrarytools so its up to date with the main addons code, heres the most up to date zip file:
AssetLibraryTools.zip (23.9 KB)

This should hopefully fix your issue

1 Like

Thank you for the update but I have the same issue. This time, I’ve got a drive letter (D:) in front.

If I delete my startup.blend file from my config folder, there is no issue. Maybe I’m missing something here but I can’t figure what. My startup file has no specific configuration …

2 Likes

I finally understand what is wrong.
Be sure to use PNG in the Output properties. I have EXR in my startup.
image

Maybe an little update to avoid this kind of issue will be great :wink:

3 Likes

Just updated assetlibrarytools to fix this issue, as well as making a pull request for the standalone version of asset_snapshot

Heres a .zip of the newly updated version:
AssetLibraryTools.zip (24.0 KB)

2 Likes

Thanks LJ3D I merged your pull request in Asset Snapshot!

1 Like

It works like a charm.
Thank you :pray:

2 Likes