Batch generate asset browser previews

Overview

When dealing with hundreds of library files it becomes tedious to mark their contents as assets.

Using python to automate the process is a perfect fit for such task.

However marking objects as assets using python doesn't automatically generate their previews like using the interface does.

This aims to mark all objects as assets and generate the preview of all files in the folder the user selects.

It might bug out if the file contains hundreds of objects. It is recommended to keep a low number of objects per file.

Go to File > Import > Batch Generate Previews

image

In the file selector, navigate to the folder where the blend files are located. Validate.

Count ~ 2 seconds per file to generate their assets and previews. It's a good idea to enable the console with Window > Toggle System Console beforehand so you can see how many files you have marked yet.

Example Result :

image

Comments
  • Batch marking assets throwing error (version: 0.0.12)

    Batch marking assets throwing error (version: 0.0.12)

    Sorry for reporting so many issues today. But when i try to Batch mark assets in the current file or an external library i get this error message: Untitled

    Thanks in advance!

    bug 
    opened by edin45 6
  • 3.2 Beta - ModuleNotFoundError

    3.2 Beta - ModuleNotFoundError

    Screen Shot 2022-06-03 at 10 47 38 PM

    I'm not able to enable this module on Blender 3.2.0 Beta. It seems to correctly install but states no module found. I don't believe this is related to the pinned issue #35, but I've been wrong before.

    bug 
    opened by ndrwstn 5
  • Smart Tags

    Smart Tags

    Add an option to setup smart tags. EG : add a tag to objects from one of their properties like scale, location, rotation, or custom properties, object color, etc.

    • [x] Dimensions
    • [x] Tricount (rounded up or down) & Vertcount
    • [x] ID Custom property (user input)
    • [x] Scale
    enhancement 
    opened by Gorgious56 5
  • Batch (re)move from catalogs has no an empty imput list for the catalog values

    Batch (re)move from catalogs has no an empty imput list for the catalog values

    afbeelding

    All catalog moving/ removing operations suffer from the same issue that they have no input values to choose from. These values can also not be typed in. This happens when trying to change catalogs for files on disk in Blender 3.1.

    afbeelding

    bug 
    opened by Intuos5 5
  • Error installing Blender 3.2

    Error installing Blender 3.2

    Blender 3.2 stable

    We Use the portable/mobile version of Blender stored an another Network Drive, not locally on every machine

    I get this Error Message, when trying to install the addon.

    Exception in module register(): C:\Users\andreas\AppData\Roaming\Blender Foundation\Blender\3.2\scripts\addons\asset_browser_utilities-master_init_.py Traceback (most recent call last): File "N:\Blender\Release\WORK_BUILD\3.2\scripts\modules\addon_utils.py", line 371, in enable mod.register() File "C:\Users\andreas\AppData\Roaming\Blender Foundation\Blender\3.2\scripts\addons\asset_browser_utilities-master_init_.py", line 22, in register auto_load.init() File "C:\Users\andreas\AppData\Roaming\Blender Foundation\Blender\3.2\scripts\addons\asset_browser_utilities-master\auto_load.py", line 29, in init modules = get_all_submodules(Path(file).parent) File "C:\Users\andreas\AppData\Roaming\Blender Foundation\Blender\3.2\scripts\addons\asset_browser_utilities-master\auto_load.py", line 60, in get_all_submodules return list(iter_submodules(directory, directory.name)) File "C:\Users\andreas\AppData\Roaming\Blender Foundation\Blender\3.2\scripts\addons\asset_browser_utilities-master\auto_load.py", line 65, in iter_submodules yield importlib.import_module("." + name, package_name) File "N:\Blender\Release\WORK_BUILD\3.2\python\lib\importlib_init_.py", line 126, in import_module return _bootstrap._gcd_import(name[level:], package, level) File "", line 1050, in _gcd_import File "", line 1027, in _find_and_load File "", line 1006, in _find_and_load_unlocked File "", line 688, in _load_unlocked File "", line 883, in exec_module File "", line 241, in _call_with_frames_removed File "C:\Users\andreas\AppData\Roaming\Blender Foundation\Blender\3.2\scripts\addons\asset_browser_utilities-master\core\cache\prop.py", line 1, in from asset_browser_utilities.module.author.set import AuthorSetOperatorProperties ModuleNotFoundError: No module named 'asset_browser_utilities'

    opened by SevenMSchultze 4
  • Perhaps add studio setup for previews [IDEA]

    Perhaps add studio setup for previews [IDEA]

    Found your asset utils through the cutaway shader of the BlenderBIM. I also bumped into this studio light setup file. Perhaps would be nice if such a thing, or this one could be added in the process. Would allow for nicer thumbnails.

    Its not using any HDR, but could use very simple small one. Guess it would need extra code so the object or studio will be scaled to the studio size or visa versa

    https://ibotpl.gumroad.com/l/studiolighting

    image

    enhancement 
    opened by schroef 4
  • Extend custom operations

    Extend custom operations

    Following #44 :

    • [x] Add an option to chain custom operations
    • [x] Add additional custom operations:
      • [x] Rename (options : prefix, replace, suffix)
        • [x] Rename asset
        • [x] Rename data
        • [x] Rename material
      • [x] Transform
      • [x] Translate
      • [x] Rotate
      • [x] Scale
      • [x] Decimate (w/ target polygons)
    enhancement 
    opened by Gorgious56 3
  • Support all asset types for 3.1

    Support all asset types for 3.1

    • [x] Node groups
    • [x] Collections
    • [x] Brushes
    • [x] Cache Files (?)
    • [x] Hairs (?)
    • [x] Images
    • [x] Freestyle Stylelines
    • [x] Masks (?)
    • [x] Meshes
    • [x] Movie Clips
    • [x] Paint Curves (?)
    • [x] Palettes
    • [x] Particle Settings
    • [x] Scenes
    • [ ] Simulations (?)
    • [x] Sounds
    • [x] Texts
    • [x] Textures
    • [x] Workspaces
    enhancement 
    opened by Gorgious56 3
  • Filtering assets by tags and tagging multiple assets manually.

    Filtering assets by tags and tagging multiple assets manually.

    I'm currently working on some modular level kits for creating game levels and have need for multiple collections with overlapping assets for ease of access during level design. Given that catalogues have A nested structure that makes this specific use case difficult. I turned to tags to immediately discover that they are barely implemented in default blender, which is how I found this project.

    After using this addon to set tags for a short while I've come up with two improvements that I believe would make them much faster when searching for assets by tags and when tagging assets manually.

    The first is keeping A list of every tag on any asset within the catalogue you have selected and making A panel beneath the catalogues menu that can be used to filter your currently selected catalogue to only the tags you have selected. Perhaps switching by default but allowing multiple to be selected while holding a key like control.

    The second is an option in the 'assets context menu', when clicking this option another popup list appears with the same list of every tag in the selected catalogue allowing you to easily tag A manually selected group of assets with an existing tag.

    marked_screenshot

    Thanks for reading my feature suggestion!

    opened by OctagonalHexy 2
  • releases contain unnecessary __pycache__ folders

    releases contain unnecessary __pycache__ folders

    Hi! I noticed that there's a considerable file size difference between downloading the main branch and a zipped release. It turns out that your releases unnecessarily contain compiled python files in the __pycache__ folders and some orphaned folders.

    To me it seems as if the release was packed locally from a working space and then uploaded. You could consider using a github action to build the release directly from a clean version. This could look somewhat like the untested setup below.

    name: Release Asset Browser Utilities
    
    on:
      push:
        tags:
          - '*'
    
    jobs:
      tagged-release:
        runs-on: ubuntu-latest
        env:
          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
        steps:
          - uses: actions/[email protected]
          - name: Zip Release
            uses: TheDoctor0/[email protected]
            with:
              path: './'
              filename: 'asset_browser_utilities.zip'
          - name: Get Version Info
            run: |
              echo GH ref: ${{ github.ref }}
              ver=$(echo ${{ github.ref }} | grep -oP "[0-9]+.[0-9]+.[0-9]+-?.*")
              echo Version: $ver
              echo "::set-output name=version::${ver}"
            id: version
          - name: Release
            if: ${{ !endsWith(steps.version.outputs.version, '-pre') }}
            uses: softprops/[email protected]
            id: create_release
            with:
              name: Asset Browser Utilities ${{ steps.version.outputs.version }}
              files: asset_browser_utilities.zip
              fail_on_unmatched_files: true
              draft: true
              prerelease: false
          - name: Pre-Release
            if: ${{ endsWith(steps.version.outputs.version, '-pre') }}$
            uses: softprops/[email protected]
            id: create_prerelease
            with:
              name: Asset Browser Utilities ${{ steps.version.outputs.version }}
              files: asset_browser_utilities.zip
              fail_on_unmatched_files: true
              draft: true
              prerelease: true
    
    enhancement 
    opened by OlafHaag 2
  • Hi! Won't you help a little? Thank you

    Hi! Won't you help a little? Thank you

    I saw that you have experience in checking all subfolders and importing obj from it.

    I need a code that searches and imports fbx from all the subfolders in the selected folder. Can you share if you know?

    opened by MuhammadXr 2
  • Won't install with B3.4.1 portable (for me)

    Won't install with B3.4.1 portable (for me)

    I have Blender 3.4.1 portable installed (and also use a custom directory for my addons -- however, I also installed to the regular addon directory and get the same issue). The addon shows up after install (using both zip install option as well as simply extracting zip to addon directory), but after restarting blender, I get this error when I try to activate it:

    Traceback (most recent call last): File "X:! BLENDER\blender-3.4.1\3.4\scripts\modules\addon_utils.py", line 333, in enable mod = import(module_name) File "X:! BLENDER! ADDONS\addons\asset_browser_utilities-master_init_.py", line 19, in from asset_browser_utilities.core.cache.prop import Cache ModuleNotFoundError: No module named 'asset_browser_utilities'

    opened by zerodean 2
  • Custom operations - Use asset name as prefix or suffix

    Custom operations - Use asset name as prefix or suffix

    Hi @Gorgious56, could expand the Custom Operation(s)' renaming options? I would like to add the Asset Name as prefix to the Object Data name and Object Material name.

    Currently, it is only possible to use the same name as the asset or enter a custom string. But this won't allow me to rename the material data in such a way that I can add the asset name as prefix. afbeelding

    opened by Intuos5 0
  • Exporting assets fail

    Exporting assets fail

    Re https://blender.stackexchange.com/questions/275005/addonasset-browser-utilities-export-failed

    I search here for an asset browser addon,and I find this. image

    When I want to export assets from current file to another file,it failed. What I do: enter image description here image

    After click this,it turn to here,which is my default asset folder,nothing in the list.But I do have some files there. enter image description here I click Export Assets,a new test.blend file created,but there are only a default cube in it.And the icon of test.blend is different from other blend file. enter image description here

    I remember that blend change the thumbnail from logo to real object in 3.3.0,so maybe the test.blend is an old version,which may cause trouble. I don't know whether it is my mistake or it's a bug.Could anyone help to check this?Especially waiting for the author... :)

    image

    bug 
    opened by Gorgious56 0
  • Add option to apply material asset in edit mode

    Add option to apply material asset in edit mode

    For some reason, Blender currently lacks the ability to assign an asset to selected faces.
    Based in large part on your stackexchange answers, I've made such an operator for my own use https://github.com/c-d-a/io_import_wad2/commit/fdb46588a7acd4eecccc0e255fda7f596d8e91bf While your addon is more focused on batch operations, seems like it would fit.

    enhancement 
    opened by c-d-a 2
Releases(0.2.4)
TMTC Commander Core

This commander application was first developed by KSat for the SOURCE project to test the on-board software but has evolved into a more generic tool for satellite developers to perform TMTC (Telemetr

robamu 8 Dec 14, 2022
An advanced pencil sketch generator

Pencilate An advanced pencil sketch generator About : An advanced pencil sketch maker made in just 12 lines of code. Yes you read it right, JUST 12 LI

MAINAK CHAUDHURI 23 Dec 17, 2022
Simple script to match riders with drivers.

theBestPooler Simple script to match riders with drivers. It's a greedy, unoptimised search, so no guarantees that it works. It just seems to work (ve

Devansh 1 Nov 22, 2021
Python project setup, updater, and launcher

Launcher Python project setup, updater, and launcher Purpose: Increase project productivity and provide features easily. Once installed as a git submo

DAAV, LLC 1 Jan 07, 2022
An AddOn storing wireguard configuration

Wireguard Database Connector Overview Development Status: 0.1.7 (alpha) First of all, I'd like to thank Jared McKnight for wireguard who inspired me t

Markus Neubauer 3 Dec 30, 2021
LTGen provides classic algorithms used in Language Theory.

LTGen LTGen stands for Language Theory GENerator and provides tools to implement language theory. Command Line LTGen is a collection of tools to imple

Hugues Cassé 1 Jan 07, 2022
A code to clean and extract a bib file based on keywords.

These are two scripts I use to generate clean bib files. clean_bibfile.py: Removes superfluous fields (which are not included in fields_to_keep.json)

Antoine Allard 4 May 16, 2022
A Python application that simulates the rolling of a dice, randomly picking one of the 6 faces and then displaying it.

dice-roller-app This is an application developed in Python that shuffles between the 6 faces of a dice, using buttons to shuffle and close the applica

Paddy Costelloe 0 Jul 20, 2021
Transform your boring distro into a hacking powerhouse.

Pentizer Transform your boring distro into a hacking powerhouse. Pentizer is a personal project that imports Kali and Parrot repositories in any Debia

Michail Tsimpliarakis 2 Nov 05, 2021
DC619/DC858 Mainframe Environment/Lab

DC619 Training LPAR The file DC619 - Mainframe Overflows Hands On.pdf contains the labs and walks through how to perform them. Use docker You can use

Soldier of FORTRAN 9 Jun 27, 2022
Cross-platform config and manager for click console utilities.

climan Help the project financially: Donate: https://smartlegion.github.io/donate/ Yandex Money: https://yoomoney.ru/to/4100115206129186 PayPal: https

3 Aug 31, 2021
Removes all archived super productivity tasks. Just run the python script.

delete-archived-sp-tasks.py Removes all archived super productivity tasks. Just run the python script. This is helpful to do a cleanup every 3-6 month

Ben Herbst 1 Jan 09, 2022
Running a complete single-node all-in-one cluster instance of TIBCO ActiveMatrix™ BusinessWorks 6.8.0.

TIBCO ActiveMatrix™ BusinessWorks 6.8 Docker Image Image for running a complete single-node all-in-one cluster instance of TIBCO ActiveMatrix™ Busines

Federico Alpi 1 Dec 10, 2021
🏆 A ranked list of awesome Python open-source libraries and tools. Updated weekly.

Best-of Python 🏆 A ranked list of awesome Python open-source libraries & tools. Updated weekly. This curated list contains 230 awesome open-source pr

Machine Learning Tooling 2.7k Jan 03, 2023
addons to the turtle package that help you drew stuff more quickly

TurtlePlus addons to the turtle package that help you drew stuff more quickly --------------

1 Nov 18, 2021
Pre-crisis Risk Management for Personal Finance

Антикризисный риск-менеджмент личных финансов Риск-менеджмент личных финансов условиях санкций и/или финансового кризиса: делаем сегодня все, чтобы за

Dmitry Petukhov 593 Jan 09, 2023
This python application let you check for new announcements from MMLS, take attendance while your lecturer is sharing QR Code on the screen.

This python application let you check for new announcements from MMLS, take attendance while your lecturer is sharing QR Code on the screen.

wyhong3103 5 Jul 17, 2022
SpaCy3Urdu: run command to setup assets(dataset from UD)

Project setup run command to setup assets(dataset from UD) spacy project assets It uses project.yml file and download the data from UD GitHub reposito

Muhammad Irfan 1 Dec 14, 2021
Writeup of NilbinSec's participation in the Winja CTF for c0c0n 2021

Winja-CTF-c0c0n-2021-Writeup NilbinSec's participation in the Winja CTF for c0c0n 2021 This repo covers NilbinSec's participation in the Winja CTF dur

1 Nov 15, 2021
VHDL to Discrete Logic on PCB Flow

PCBFlow Highly experimental set of scripts to transform a digital circuit described in a hardware description language (VHDL or Verilog) into a discre

Tim 77 Nov 04, 2022