blender/scripts/templates_py
Julian Eisel 7a3960fd72 Fix #147491: Performance drop in Compositor with large asset library
Adds ID-type filtering options like `filter_object`, `filter_brush`,
etc. to the asset shelf registration properties. This allows efficiently
discarding many irrelevant assets from further processing.

When displaying the asset shelf, we would call into the Python defined
`asset_poll()` method for every asset. This has some cost, and with many
assets this would add up and make the asset shelf slow to redraw. In the
compositor, transforming nodes would redraw the entire editor, including
the asset shelf, so this slowdown would become very apparent (we could
avoid redrawing the asset shelf here, but better address the slowdown
itself).

By having some way to let the asset shelf specify the ID types to
display, we can discard many assets before even calling the asset-poll
method.

Pull Request: https://projects.blender.org/blender/blender/pulls/150090
2025-11-19 12:22:08 +01:00
..
addon_add_object.py Cleanup: argument wrapping for Python scripts 2025-01-14 12:53:32 +11:00
background_job.py Cleanup: single/double quote use in scripts 2024-10-16 14:45:08 +11:00
batch_export.py
bmesh_simple.py
bmesh_simple_editmode.py
builtin_keyingset.py
custom_nodes.py Nodes: Swap Node Operator 2025-09-25 16:12:02 +02:00
driver_functions.py
external_script_stub.py Cleanup: double quotes for strings, replace f-string with str.format 2024-10-02 15:46:11 +10:00
gizmo_custom_geometry.py Cleanup: single/double quote use in scripts 2024-10-16 14:45:08 +11:00
gizmo_operator.py
gizmo_operator_target.py
gizmo_simple_2d.py Python Templates: Add Gizmo Simple 2D 2025-03-21 12:20:22 +01:00
gizmo_simple_3d.py Python Templates: Add Gizmo Simple 2D 2025-03-21 12:20:22 +01:00
image_processing.py
operator_file_export.py PyDoc: use complete sentences in comments for templates & examples 2025-04-02 23:46:58 +00:00
operator_file_import.py PyDoc: use complete sentences in comments for templates & examples 2025-04-02 23:46:58 +00:00
operator_mesh_add.py PyDoc: use complete sentences in comments for templates & examples 2025-04-02 23:46:58 +00:00
operator_mesh_uv.py PyDoc: use complete sentences in comments for templates & examples 2025-04-02 23:46:58 +00:00
operator_modal.py PyDoc: use complete sentences in comments for templates & examples 2025-04-02 23:46:58 +00:00
operator_modal_draw.py Fix #144700: Incorrect operator model draw example 2025-08-19 07:42:44 +02:00
operator_modal_timer.py PyDoc: use complete sentences in comments for templates & examples 2025-04-02 23:46:58 +00:00
operator_modal_view3d.py
operator_modal_view3d_raycast.py
operator_node.py
operator_simple.py PyDoc: use complete sentences in comments for templates & examples 2025-04-02 23:46:58 +00:00
ui_asset_shelf.py Fix #147491: Performance drop in Compositor with large asset library 2025-11-19 12:22:08 +01:00
ui_list.py Refactor: Remove grid and compact UI list layout in Python scripts 2025-06-18 13:45:06 +02:00
ui_list_generic.py
ui_list_simple.py Refactor: Remove grid and compact UI list layout in Python scripts 2025-06-18 13:45:06 +02:00
ui_menu.py Cleanup: tweak multi-line parenthesis for Python scripts 2025-10-12 03:31:31 +00:00
ui_menu_simple.py
ui_panel.py
ui_panel_simple.py
ui_pie_menu.py
ui_previews_custom_icon.py Cleanup: double quotes for strings, replace f-string with str.format 2024-10-02 15:46:11 +10:00
ui_previews_dynamic_enum.py
ui_tool_simple.py Fix #148490: Python: wrong operator used in ui tool template 2025-10-23 03:24:07 +02:00