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)
Team Hash Brown Science4Cast Submission

Team Hash Brown Science4Cast Submission This code reproduces Team Hash Brown's (@princengoc, @Xieyangxinyu) best submission (ee5a) for the competition

3 Feb 02, 2022
⚡KiCad library containing footprints and symbols for inductive analog keyboard switches

Inductive Analog Switches This library contains footprints and symbols for inductive analog keyboard switches for use with the Texas Instruments LDC13

Elias Sjögreen 3 Jun 30, 2022
A basic tic tac toe game on python!

A basic tic tac toe game on python!

Shubham Kumar Chandrabansi 1 Nov 18, 2021
i3wm helper tool for workspaces on multiple monitors

i3screens A helper tool for managing i3wm workspaces on multiple monitors. Use-case You have a multi-monitor setup and want to have the "same" workspa

Sebastian Neef 1 Dec 05, 2022
Just some information about this nerd.

Greetings, mates, I am ErrorDIM - aka ErrorDimension 👋 🧬 Programming Languages I Can Use: 🥇 Top Starred Repositories: # Name Stars Size Major Langu

ErrorDIM 3 Jan 11, 2022
A collection of existing KGQA datasets in the form of the huggingface datasets library, aiming to provide an easy-to-use access to them.

KGQA Datasets Brief Introduction This repository is a collection of existing KGQA datasets in the form of the huggingface datasets library, aiming to

Semantic Systems research group 21 Jan 06, 2023
Identify and annotate mutations from genome editing assays.

CRISPR-detector Here we propose our CRISPR-detector to facilitate the CRISPR-edited amplicon and whole genome sequencing data analysis, with functions

hlcas 2 Feb 20, 2022
Show Public IP Information In Linux Taskbar

IP Information In Linux Taskbar 📍 How Use IP Script? 🤔 Download ip.py script and save somewhere in your system. Add command applet in your taskbar a

HOP 2 Jan 25, 2022
A "multiclipboards" script for an efficient way to improve the original clipboards which are only able to save one string at a time

A "multiclipboards" script for an efficient way to improve the original clipboards which are only able to save one string at a time. Works on both Windows and Linux.

1 Jan 24, 2022
The Python agent for Apache SkyWalking

SkyWalking Python Agent SkyWalking-Python: The Python Agent for Apache SkyWalking, which provides the native tracing abilities for Python project. Sky

The Apache Software Foundation 149 Dec 12, 2022
Automated rop chain generation

This is the accompanying code to the blog post talking about automated rop chain generation. Build the test file with: make Install the dependencies:

Christopher Roberts 14 Nov 22, 2022
适用于HoshinoBot下的雀魂插件。可进行近期对局查询、查询个人数据等功能,更多功能正在扩展

Majsoul_bot This is a Majsoul plugin for HoshinoBot 这是一个HoshinoBot的雀魂相关插件 本项目目前正在扩展,后续会扩展更多功能,敬请期待 前言 项目地址:https://github.com/DaiShengSheng/Majsoul_bo

黛笙笙 33 Dec 14, 2022
Auto check in via GitHub Actions

因为本人毕业离校,本项目交由在校的@hfut-xyc同学接手,请访问hfut-xyc/hfut_auto_check-in获得最新的脚本 本项目遵从GPLv2协定,Copyright (C) 2021, Fw[a]rd 免责声明 根据GPL协定,我、本项目的作者,不会对您使用这个脚本带来的任何后果

Fw[a]rd 3 Jun 27, 2021
Simulation simplifiée du fonctionnement du protocole RIP

ProjetRIPlay v2 Simulation simplifiée du fonctionnement du protocole RIP par Eric Buonocore le 18/01/2022 Sur la base de l'exercice 5 du sujet zéro du

Eric Buonocore 2 Feb 15, 2022
《赛马娘》(ウマ娘: Pretty Derby)辅助 🐎🖥 基于 auto-derby 可视化操作/设置 启动器 一键包

ok-derby 《赛马娘》(ウマ娘: Pretty Derby)辅助 🐎 🖥 基于 auto-derby 可视化操作/设置 启动器 一键包 便捷,好用的 auto_derby 管理器! 功能 支持客户端 DMM (前台) 实验性 安卓 ADB 连接(后台)开发基于 1080x1920 分辨率

秋葉あんず 90 Jan 01, 2023
Generate a wordlist to fuzz amounts or any other numerical values.

Generate a wordlist to fuzz amounts or any other numerical values. Based on Common Security Issues in Financially-Oriented Web Applications.

Ivan Šincek 3 Oct 14, 2022
Python based scripts for obtaining system information from Linux.

sysinfo Python based scripts for obtaining system information from Linux. Python2 and Python3 compatible Output in JSON format Simple scripts and exte

Petr Vavrin 70 Dec 20, 2022
Convert .1pux to .csv

1PasswordConverter Convert .1pux to .csv 1Password uses this new export format .1pux, I assume stands for 1 Password User eXport. As of right now, 1Pa

Shayne Hartford 7 Dec 16, 2022
qecsim is a Python 3 package for simulating quantum error correction using stabilizer codes.

qecsim qecsim is a Python 3 package for simulating quantum error correction using stabilizer codes.

44 Dec 20, 2022
Intelligent Systems Project In Python

Intelligent Systems Project In Python

RLLAB 3 May 16, 2022