COMPOSITOR 🫶 SEQUENCER — Blender Today LIVE #266
Changelog between September 16, 2025 - September 30, 2025 at 12h
401 commits in total, of which 61 are fixes and 58 cleanup.
Alembic
- 🔸 Alembic: Support import of additional point cloud attribute types - Pavel Ševeček
Allocator
- Allocator: Properly free polymorphic objects - Guillermo Venegas
Anim
- 🔸 Anim: imported action slot named "Slot" when importing BVH/FBX files - Sybren A. Stüvel
- Anim: Remove layer_prev and layer_next operators - Christoph Lendenfeld
- 🔸 Anim: Place Pose Bone Gizmo at Custom Transform - Christoph Lendenfeld
Assets/BPY
- Assets/BPY: Remove unused catalog path RNA/BPY type - Julian Eisel
Attributes
- Attributes: make id attribute generic instead of built-in - Jacques Lucke
BKE
- 🔸 BKE: Update default smooth curve preset - Sean Kim
BPY/UI
- BPY/UI: Rename pie menu emboss type - Julian Eisel
Blenloader
- 🔸 Blenloader: stable pointers in .blend files - Jacques Lucke
CMake
- CMake: CTest: Disable blendfile_library_overrides test - Ray Molenkamp
Cleanup
- Cleanup: Unused variable when WITH_ALEMBIC is off - Jesse Yurkovich
- Cleanup: GL: Remove unused AMD workaround - Clément Foucault
- Cleanup: Fix typos in build_files subdirectory - luz paz
- Cleanup: IO: Remove unused local variable - Jesse Yurkovich
- Cleanup: Remove RNA defines for removed nodes - Omar Emara
- Cleanup: use a typed enum for context data type - Campbell Barton
- Cleanup: relocate doc-strings to header - Campbell Barton
- Cleanup: avoid a redundant iteration for weld-vertices - Campbell Barton
- Cleanup: merge loops in weld-vertices - Campbell Barton
- Cleanup: use full sentences in bmo_removedoubles.cc - Campbell Barton
- Cleanup: various non functional changes for C++ - Campbell Barton
- Cleanup: Compiler warning in GPU kernel compilation - Brecht Van Lommel
- Cleanup: replace select/deselect flush functions with a select argument - Campbell Barton
- Cleanup: Move mesh join objects implementation to separate file - Hans Goudey
- Cleanup: Move mesh object join code to C++ namespace - Hans Goudey
- Cleanup: Rename variables in mesh join code - Hans Goudey
- Cleanup: Simplify iteration in mesh join, move declarations - Hans Goudey
- Cleanup: Remove unused data transfer argument - Hans Goudey
- Cleanup: Use attribute API and StringRef in bake code - Hans Goudey
- Cleanup: GPU: Remove unused gl_bindcode_get function - Clément Foucault
- Cleanup: EEVEE: Avoid duplicate computation in bsdf_lut function - Clément Foucault
- Cleanup: correct misleading PyError message formatting - Oxicid
- Cleanup: trailing space - Campbell Barton
- Cleanup: warning from ruff - Campbell Barton
- Cleanup: typos, copy/paste error - Campbell Barton
- Cleanup: minor changes to the BMesh Python API - Campbell Barton
- Cleanup: Alembic: Remove deprecated scene.alembic_export API - Jesse Yurkovich
- Cleanup: minor naming changes for RNA functions - Campbell Barton
- Cleanup: grammar, confusing wording - Campbell Barton
- Cleanup: format - Campbell Barton
- Cleanup: rename flushing functions for clarity - Campbell Barton
- Cleanup: quiet undeclared function warnings - Campbell Barton
- Cleanup: Fix typos in source/blender/blenlib - luz paz
-
Cleanup: Description for deprecated
use_nodes- Habib Gahbiche - Cleanup: rename BM_mesh_{validate=>is_valid} - Campbell Barton
- Cleanup: minor changes to unit comments - Campbell Barton
- Cleanup: remove f-strings use, use double quotes, quiet pylint warnings - Campbell Barton
- Cleanup: use format specifier, full sentences - Campbell Barton
- Cleanup: Silence compilation warning - Jeroen Bakker
- Cleanup: Fix typo in blender/blendthumb/src/thumbnail_provider.mm - luz paz
- Cleanup: Geometry Nodes: use node_geo_exec_with_missing_openvdb - Brady Johnston
- Cleanup: Remove unnecessary conditional when restoring the mesh - Sean Kim
- Cleanup: correct terminating macro - Campbell Barton
- Cleanup: spelling, repeated words (make check_spelling_*) - Campbell Barton
- Cleanup: Remove the now unused lzma and lzo libraries from extern - Sebastian Parborg
- Cleanup: Improve formatting of command line argument in the user manual - Brecht Van Lommel
- Cleanup: Improve formating of OCIO environment variable in the manual - Brecht Van Lommel
- Cleanup: Alembic: Remove some unused utility APIs - Jesse Yurkovich
- Cleanup: rename UV selection options - Campbell Barton
- Cleanup: Nodes: remove some runtime socket flags - Jacques Lucke
- Cleanup: Nodes: rename hide_label to optional_label internally - Jacques Lucke
- Cleanup: Nodes: remove dead code - Jacques Lucke
- Cleanup: use utility method to get node group input usage - Jacques Lucke
- Cleanup: Improve description of asserton related to topology cache - Iliya Katushenock
- Cleanup: Update userdef_default_theme.c - Pablo Vazquez
- Cleanup: Make format - Pablo Vazquez
- Cleanup: resolve pylint warnings - Campbell Barton
- Cleanup: Remove unused method - Jeroen Bakker
Color Management
- 🔸 Color Management: Show descriptions for displays, views, and looks - Damien Picard
- 🔸 Color Management: Better preserve views when switching between displays - Brecht Van Lommel
- 🔸 Color Management: Add separate RGB/HSV and Linear/Perceptual enum - Brecht Van Lommel
- Color Management: Use display colorspaces in OCIO config - EaryChow
- Color Management: Perform display emulation using display colorspaces - Brecht Van Lommel
- Color Management: Log added displays, views and color spaces - Brecht Van Lommel
- Color Management: Simplify image format initialization - Brecht Van Lommel
- Color Management: Reduce reliance on untonemapped view - Brecht Van Lommel
- 🔸 Color Management: Add "Working Space" as a color space choice in the enum - Brecht Van Lommel
- 🔸 Color Management: Support for HDR PNG read and write - Brecht Van Lommel
- 🔸 Color Management: Add ACES 1.0 and 1.1 view transforms for SDR and HDR - Geedoubleu
- 🔸 Color Management: Add option to control display emulation - Brecht Van Lommel
- Color Management: Add ACEScc and ACEScct color correction spaces - Brecht Van Lommel
- 🔸 Color Management: Save and load HDR images with 203 nits - Brecht Van Lommel
Compositor
- 🔸 Compositor: Add a kernel convolution mode to glare node - Mohamed Hassan
- 🔸 Compositor: Reorder inputs accordingly to importance - Omar Emara
- 🔸 Compositor: Clarify Alpha Over input names - Omar Emara
- 🔸 Compositor: Remove XY scale from Displace node - Omar Emara
- 🔸 Compositor: Make Bokeh Blur size input in pixels - Omar Emara
-
🔸
Compositor: Reintroduce
scene.use_nodesas deprecated in Python API - Habib Gahbiche - Compositor: Make a distinction between inputs and passes - Omar Emara
- 🔸 Compositor: "Copy" button duplicates node tree - Habib Gahbiche
Core
- Core: Make ID::runtime an allocated pointer. - Bastien Montagne
- 🔸 Core: Add packed linked data-blocks - Jacques Lucke
Curves
- 🔸 Curves: Numerically robust curve tangents - MattiasF
Cycles
- 🔸 Cycles: Add Render Time pass - Lukas Stockner
- 🔸 Cycles: Make adaptive subdivision a non-experimental feature - Brecht Van Lommel
- 🔸 Cycles: Add an option to use ray marching for volume rendering - Weizhen Huang
- 🔸 Cycles: OSL Camera: Improve Property UI - Damien Picard
- 🔸 Cycles: Thin film iridescence for metals - Amogh Shivaram
Docs
-
Docs: Include
get_prim_map()inbpy.types.USDHookexample code - Nick Alberelli - Docs: add doc-strings for UV sticky selection - Campbell Barton
EEVEE
- 🔸 EEVEE: Optimize Principled BSDF compilation time - Clément Foucault
- EEVEE: Detect simple GBuffer packing cases - Clément Foucault
- 🔸 EEVEE: Move position renderpass to deferred combined pass - Clément Foucault
- 🔸 EEVEE: Reduce necessary includes - Clément Foucault
Fix
- Fix: Geometry Nodes: assert with a boolean input after recent refactor - Jacques Lucke
- Fix: Material: Compilation error for GPU material using voronoi node - Clément Foucault
- Fix: Working color space name on Blender startup is wrong - Brecht Van Lommel
- Fix: Save as Render does not work for some OCIO configs - Brecht Van Lommel
- Fix: Color Management: Warning in fallback display description - Damien Picard
- Fix: Crash with certain OCIO configs in display descriptions - Brecht Van Lommel
- Fix: Don't show working space change popup when not changing the space - Brecht Van Lommel
- Fix: Wrong update of color management settings in file output node - Brecht Van Lommel
- Fix: Geometry Nodes: Move to Nodes operator not disabled on linked data - Simon Thommes
- Fix: Appending a workspace appends scene data along with it - Brecht Van Lommel
- Fix: VSE: Missing updates when active scene differs from sequencer scene - Falk David
- Fix: Generated image checkboard colors too saturated with working space - Brecht Van Lommel
- Fix: URL prefix for experimental preferences - Damien Picard
- Fix: VSE: Python errors when no sequencer scene is present - Falk David
- Fix: Crash accessing RNA UV map boolean property - Hans Goudey
- Fix: Cycles: MetalRT motion curves setup bug - Michael Jones
- Fix: Vulkan: Volume Workbench Tests - Jeroen Bakker
- Fix: VSE: Scene Sync doesn't account for scene start frame - Falk David
- Fix: Grain size calculation for setting custom normals - Hans Goudey
- Fix: Theme color picker not working correctly after recent changes - Brecht Van Lommel
- Fix: Use Laplacian as default relax method for UV sculpting - Sean Kim
- Fix: Compositor test should ignore Software metadata with Blender version - Brecht Van Lommel
- Fix: trailing zeros added to the rounded value with split units - Campbell Barton
- Fix: Node: Integer overflow in GPU nodetree evaluation - Clément Foucault
- Fix: Typo in tools/triage/issues_needing_info.py - luz paz
- Fix: infinite loop when region is too small - Richard Antalik
- Fix: GPU Draw tests - Jeroen Bakker
- Fix: Node Wrangler: Error in Merge Nodes when only one node selected - Damien Picard
- Fix: Failure to pass the full PATH to Blender ctests on Windows - vbeckham
- Fix: Geometry Nodes: Properly expose supported grid socket types - Brady Johnston
- Fix: Cycles: Ubsan warnings with new voronoi texture hashing - Brecht Van Lommel
- Fix: Build error in lite builds after recent commit - Hans Goudey
- Fix: un-escaped strings for node operators/UI - Campbell Barton
- Fix: Camera marker selection logic in animation editors - Wayne Dixon
- Fix: Partially Fix #146759 by Adding Missing Library Include to Radial Tiling Node - Raiko
- Fix: logical errors where changes were always detected - Campbell Barton
- Fix: Python errors in brush falloff panel - Sean Kim
- Fix: Redraw anim side region when sliding shape key value - Pratik Borhade
- Fix: Reset Curve applies incorrect slope - Sean Kim
- Fix: Geometry Nodes: assert when trying to view extend socket - Jacques Lucke
- Fix: Nodes: incorrect internal links in muted Menu Switch node - Jacques Lucke
- Fix: Nodes: forbid muting Group Input nodes - Jacques Lucke
- Fix: Nodes: avoid creating invalid internal link when initializing closure - Jacques Lucke
- Fix: Nodes: reroute nodes should always use circle shape - Jacques Lucke
- Fix: Nodes: prioritize tooltip for input socket for inlined sockets - Jacques Lucke
- Fix: Nodes: socket active status affects other sockets - Jacques Lucke
- Fix: Nodes: Occasional crashing when using swap operators - quackarooni
- Fix: Remove animatable flag from execution_time property - Colin Basnett
- Fix: Geometry Nodes: Function nodes crash for unsupported grid types - Hans Goudey
- Fix: File Browser: Filter for Annotations and Grease Pencil - Falk David
- Fix: Vulkan: Performance regression text drawing - Jeroen Bakker
- Fix: EEVEE: Metallic BSDF roughness broken in certain condition - Clément Foucault
- Fix: EEVEE: Reversed condition in metallic BSDF optimization - Clément Foucault
- Fix: Node editor drawing stack use after scope - Hans Goudey
- Fix: Grease Pencil Sculpt shows dropdown toggle for size curve - Sean Kim
- Fix: Nodes: propagated menu expanded state to group input - Jacques Lucke
- Fix: Wayland/IME accessing stale IME data - Guillermo Venegas
- Fix: correctly update Actions when renaming/re-typing a custom property - Sybren A. Stüvel
- Fix: Debugging gpu tests in renderdoc - Jeroen Bakker
- Fix: Nodes: double clicking to enter/exit node group not reliable - Jacques Lucke
- Fix #121129: Crash in bmesh.ops.create_uvsphere if U/V unspecified - tariqsulley
- Fix #129596: Always use multithreaded BVH building in Cycles again - Nikita Sirgienko
- Fix #142767 - glTF exporter: Fix crash with shader node group traversal - Julien Duroure
- Fix #142867 - glTF importer: Fix crash trying to import an empty glTF scene - Julien Duroure
- Fix #144711: Cycles: rescale throughput when density is above the majorant - Weizhen Huang
- Fix #144983: Skip attribute transfer when no attribute writer is created - Lukas Tönne
- Fix #145525: Scene switch should not affect viewport perspective mode - Dalai Felinto
- Fix #145762: Ensure a valid background value before pruning SDF grid - Lukas Tönne
- Fix #145987: Brush selector available in Image Editor Mask mode - Philipp Oeser
- Fix #145993: Edit Mesh: Can't select behind wire objects with retopology - Clément Foucault
- Fix #146143: MacOS UI Test failures with multiple windows - Sean Kim
- Fix #146145: Fluid domain initialization uses face attribute without checking - Lukas Tönne
- Fix #146176: Solve build errors using gcc version 12.2.0 - Jaume Bellet
- Fix #146194: Draw: Don't create duplis from temporary preview objects - Miguel Pozo
- Fix #146223: Cycles: Wrong output with multi-device OSL rendering - Lukas Stockner
- Fix #146281: Overlay: Uninitialized data in Paint Mask - Clément Foucault
- Fix #146322: Spelling mistake and missing return type for axis_conversion - Alaska
- Fix #146345: assert when tracing closure value through nested zones - Jacques Lucke
- Fix #146349: 3D cursor still draws even though location is offscreen - Philipp Oeser
- Fix #146350: Mesh edit "reverse/rotate colors" crash - Hans Goudey
- Fix #146398: Crash when exiting sculpt mode in load_post - Sean Kim
- Fix #146409: nested shader node outputs are ignored - Jacques Lucke
- Fix #146413: Truncate socket names only if space is present after prefix - YimingWu
- Fix #146448: Object copy/paste has wrong colors with working space - Brecht Van Lommel
- Fix #146459: wrong warning that input does not support fields - Jacques Lucke
- Fix #146462: crash when shader output node is in zone - Jacques Lucke
- Fix #146466: Sculpt undo applies evaluated positions incorrectly - Namit Bhutani
- Fix #146484: Stack overflow due to recursive strip rendering - Richard Antalik
- Fix #146497: Geometry Nodes: Don't display deprecated "Texture" socket type - Hans Goudey
- Fix #146510: Pen tool not working with Auto Keying - Casey Bianco-Davis
- Fix #146521: Evaluate Closure node without closure behaves incorrectly - Jacques Lucke
- Fix #146535: 3d Text selection is broken - Philipp Oeser
- Fix #146551: Node wrangler treats warning nodes as unused nodes - Alaska
- Fix #146559: Vulkan: Wide lines not working in custom PyGPU shaders - Jeroen Bakker
- Fix #146588: raise exception when attempting invalid idproperty renaming in Python - Jacques Lucke
- Fix #146592: "Toggle Library Override Editable" acts on the wrong ID - Philipp Oeser
- Fix #146619: Random Color workbench mode too saturated with ACEScg working space - Brecht Van Lommel
- Fix #146630: Single Scattering Sky has darker pixels near horizon - marcopavanello
- Fix #146632: Multiple Scattering Sky has dark pixels near the horizon - marcopavanello
- Fix #146640: Freeze when force cancelling a CLI render - Sebastian Parborg
- Fix #146655: GPU: Call of deprecated function - Jeroen Bakker
- Fix #146679: Node wrangler connects bump maps to filter width - Alaska
- Fix #146745: EEVEE: Missing dependency for displacement node - Clément Foucault
- Fix #146763: Texture Paint Memory Leak. - Bastien Montagne
- Fix #146802: Py-defined property min/max handling is broken. - Bastien Montagne
- Fix #146822: Ensure safe names are used for custom Alembic attributes - Jesse Yurkovich
- Fix #146836: Auto merge not working in edit mode - Campbell Barton
- Fix #146870: crash when trying to view non-existant data - Jacques Lucke
- Fix #146885: EEVEE: Principled BSDF incorrect when not fully metallic - Clément Foucault
- Fix #146910: Update path for Smooth by Angle asset - Jesse Yurkovich
- Fix #146946: Breaking a node zone crashes on valid pointer assumption - Lukas Tönne
- Fix #146963: VSE compositor modifier Strip mask input field disappearing - Philipp Oeser
- Fix #146966: Crash joining mesh objects - Hans Goudey
- Fix #147014: Crash when manually typing object dimension - Pratik Borhade
- Fix #78916: unpredictable results with merge by distance - tariqsulley
- Fix #78916: unpredictable results with merge by distance - Campbell Barton
- Fix (harmless) mistake in enabling blendfile compression commit. - Bastien Montagne
-
Fix (unreported): Sequencer: assert/crash when showing
Add->Scenemenu. - Bastien Montagne -
Fix (unreported) Invalid clearing handling in
IDP_ResizeIDPArray. - Bastien Montagne - Fix (unreported) broken ui_undo_tests due to mistake in geonode code. - Bastien Montagne
- Fix Outliner File view not grouping indirectly linked libraries. - Bastien Montagne
- Fix writefile making all linked IDs directly linked. - Bastien Montagne
GPU
- GPU: FrameBuffer: Remove GPUFrameBuffer wrapper opaque type - Clément Foucault
- 🔸 GPU: Shader Codegen: Split different graph includes - Clément Foucault
- GPU: Shader Preprocess: Port more function to use parser - Clément Foucault
- GPU: Material: Improve limit of UBO size - Clément Foucault
- GPU: Shader: Make info files generated - Clément Foucault
- GPU: Remove leftover debug code generating files - Clément Foucault
- GPU: Shader: Add orphan list to allow delayed deletion - Clément Foucault
- GPU: Improve shader dependency logger - Clément Foucault
Geometry Nodes
- 🔸 Geometry Nodes: UV tangent node - Hans Goudey
- 🔸 Geometry Nodes: support viewing non-geometry data with viewer node - Jacques Lucke
- 🔸 Geometry Nodes: Support grid inputs to viewer node - Hans Goudey
- 🔸 Geometry Nodes: Make displaying "Manage" panel optional - Hans Goudey
- 🔸 Geometry Nodes: New essential assets for Blender 5.0 - Simon Thommes
- 🔸 Geometry Nodes: improve socket shapes for bundle and closure nodes - Jacques Lucke
- 🔸 Geometry Nodes: support searching for string and data-block values - Jacques Lucke
- 🔸 Geometry Nodes: add "Mix Rotation" to Add menu - quackarooni
- Geometry Nodes: Fixes to essentials assets - Simon Thommes
Grease Pencil
- 🔸 Grease Pencil: Add new Corner Types - Casey Bianco-Davis
-
Grease Pencil: Add
Set Corner Typeto the point context menu. - Casey Bianco-Davis
I18N
- I18N: Updated UI translations from git/weblate repository (42dcdeaa64ff9c). - Bastien Montagne
- I18N: Updated UI translations from git/weblate repository (2e2448ef0145f1). - Bastien Montagne
- I18n: Translate menu socket tooltip, node description tooltip - W_Cloud
- I18n: Translate asset origin tooltips in asset browser - Damien Picard
- I18n: Get displays, views, looks, colorspaces info from OCIO config - Damien Picard
- I18n: Translate file working colorspace operator menu in properties - Damien Picard
- I18n: Translate newly-created node group names - Damien Picard
- I18n: Translate "Subprocesses" label in System preferences - Damien Picard
- I18n: Translate "Shape" label in node editor's group socket settings - Damien Picard
- I18n: Translate Node Wrangler shortcut list in add-on preferences - Damien Picard
- I18n: Translate "Name" placeholder text in shader Attribute node - Damien Picard
- I18n: Translate the name of newly-created collections - Damien Picard
- I18n: Translate dynamic enum items from glTF exporter - Damien Picard
- I18n: Improve message extraction for node socket declaration - Damien Picard
- I18n: Disambiguate "Meta" in the context of NLA's meta strips - Damien Picard
- I18n: Define NO_TRANSLATION ("Do not translate") context - Damien Picard
- I18n: Translate UI for "Curve Data" panel - Damien Picard
- I18n: Use translation context from declaration for menu socket items - Damien Picard
- I18n: Use correct translation context for node socket in side bar - Damien Picard
IO
- 🔸 IO: Remove visible_objects_only property for USD and Alembic export - Jesse Yurkovich
Image
- Image: Log errors during image write when using OpenImageIO - Jesse Yurkovich
Image Paint
- 🔸 Image Paint: Support single pixel drawing - Jorn Visser
- 🔸 Image Paint: Add pixel art brushes and catalogs - Julien Kaspar
LOG
- LOG: Change shader dependency printing to its own prefix - Clément Foucault
- Logging: Cycles: Change various warnings to errors - Brecht Van Lommel
- Logging: Do not print Python API errors that will throw an exception - Brecht Van Lommel
- Logging: Add argument to list all available categories - Nick Alberelli
Mesh
Metal
- Metal: Add workaround for imageAtomic synchronization issue - Clément Foucault
Modeling
- 🔸 Modeling: support adding lattices to selected objects - tariqsulley
- 🔸 Modeling: use the central vertex when finding duplicates - Campbell Barton
Nodes
- 🔸 Nodes: Swap Node Operator - quackarooni
- 🔸 Nodes: new operator to join Group Input nodes - Jacques Lucke
- Node: Rewrite iter_shader_to_rgba_depth_count to not be recursive - Clément Foucault
- 🔸 Nodes: Add Radial Tiling Node - Tenkai Raiko
- 🔸 Nodes: UI: Show asset state icon in breadcrumbs - Pratik Borhade
- 🔸 Nodes: Forward compatibility for World - Habib Gahbiche
- 🔸 Nodes: Reorder socket data types list - Brady Johnston
- 🔸 Nodes: Reroute becomes active if singular - Brady Johnston
- 🔸 Nodes: support node output visibility inferencing - Jacques Lucke
- Nodes: simplify rule for output visibility inferencing - Jacques Lucke
- 🔸 Nodes: add button in switch nodes to add inputs - Jacques Lucke
- 🔸 Nodes: menu switch labels in index switch nodes - Jacques Lucke
- 🔸 Nodes: improve descriptions in menu switch node - Jacques Lucke
- Nodes: Remove "Swap" menu from editor header - quackarooni
- 🔸 Nodes: support optional labels for group inputs - Jacques Lucke
- 🔸 Nodes: support searching for group inputs - Jacques Lucke
OpenEXR
- 🔸 OpenEXR: Support reading multipart files with full channel names - Brecht Van Lommel
- 🔸 OpenEXR: Multi-part writing - Brecht Van Lommel
- 🔸 OpenEXR: Write colorspace metadata for multilayer EXR - Brecht Van Lommel
Outliner
- 🔸 Outliner: allow "Show Active" to center/scroll in Data API view - Philipp Oeser
Paint
-
Paint: Rename
curveandcurve_preset- Sean Kim - 🔸 Paint: Disable pressure sensitivity for certain brushes - Sean Kim
- Paint: Add asserts for BKE_brush_curve_strength - Sean Kim
PyAPI
- PyAPI: support logging for Context.temp_override - Nick Alberelli
- PyAPI: Implement vectorcall support for rna_func - Oxicid
- Python: Print script errors with CLOG - Sean Kim
- Python: Nodes: deprecate 'world.use_nodes' instead of removing it - Habib Gahbiche
-
Python: Rename
bpy.types.GreasePencilv3tobpy.types.GreasePencil- Casey Bianco-Davis -
Python: Rename
bpy.data.grease_pencils_v3tobpy.data.grease_pencils- Casey Bianco-Davis -
Python: Rename
IDType_ID_GP.name_pluraltogrease_pencils- Casey Bianco-Davis - Python API: Make context.tool_settings never null - Brecht Van Lommel
Refactor
- Refactor: Mesh: Slight restructure of object joining code - Hans Goudey
- Refactor: Minor changes to 'non-allocated' ID copying and related Depsgraph code. - Bastien Montagne
- Refactor: Use ID management API to delete temp preview render IDs. - Bastien Montagne
- Refactor: Move video CICP logic to be reusable for images - Brecht Van Lommel
- Refactor: OpenEXR: Simplify multi layer read and write implementation - Brecht Van Lommel
- Refactor: Vulkan: Move memory allocator ownership to GHOST. - Jeroen Bakker
- Refactor: Add name for curve map slope preset enum - Sean Kim
- Refactor: Nodes: unify optional-label handling for sockets - Jacques Lucke
- Refactor: Move node_socket_translation_context to bke - Damien Picard
- Refactor: Make layout resolve functions into virtual methods - Guillermo Venegas
- Refactor: Use enum class instead of bool video - Brecht Van Lommel
- Refactor: Geometry Nodes: extract function to draw panel content in modifier - Jacques Lucke
Render
- 🔸 Render: Rename render passes for clarity - Brecht Van Lommel
RenderDoc
- RenderDoc: Grouping of unit tests - Jeroen Bakker
Shader Nodes
- Shader Nodes: improve preservation of repeat zones in shader nodes inlining - Jacques Lucke
- 🔸 Shader Nodes: support Menu Switch node - Jacques Lucke
- 🔸 Nodes: add "Mix Vector" to Shader Editor Add menu - quackarooni
- 🔸 Shaders: Move repeat and closure/bundle nodes into Utilities submenu - Brecht Van Lommel
Shape Keys
Spreadsheet
- 🔸 Spreadsheet: Improve tooltip of matrix column - W_Cloud
Template
- 🔸 Templates: Add Storyboarding app template - Pablo Vazquez
- 🔸 Template: Update 2D Animation template - Pablo Vazquez
- 🔸 Template: Minimum updates to VFX template - Pablo Vazquez
Tests
- Tests: Add UI test for verifying all sculpt tool properties - Sean Kim
- Tests: Add automated tests for mesh object joining - Hans Goudey
- Tests: Update workspace UI tests - Sean Kim
- Tests: Split 'versioning' smoke-tests further. - Bastien Montagne
- Tests: Compare all subimages in compositor file output tests - Brecht Van Lommel
- Tests: Update multilayer image tests for 5.0 changes - Brecht Van Lommel
Texture Paint
UI
- 🔸 UI: Splash: Adjust layout and add icons - Pablo Vazquez
- 🔸 UI: support searching for more recent files - Jacques Lucke
- 🔸 UI: Per-camera composition guide colors - Nika Kutsniashvili
- 🔸 UI: Theme: Add Curve widget theme settings - Pablo Vazquez
- 🔸 UI: Theme: Generalize geometry attribute properties - Nika Kutsniashvili
- 🔸 UI: Theme: Remove "Active Spline" theme property - Nika Kutsniashvili
- 🔸 UI: Theme: Remove face dot color property - Nika Kutsniashvili
- 🔸 UI: Remove paint curve theme colors, use gizmo colors instead - Nika Kutsniashvili
- 🔸 UI: Update editor descriptions - Pablo Vazquez
- 🔸 UI: Nodes: Add Node Group Indicator and minor style tweaks - Pablo Vazquez
- 🔸 UI: Nodes: Indicate packed status in node editor context path - Hans Goudey
- 🔸 UI: Add Modifier: Move Geometry Nodes last - Dalai Felinto
- UI: Amend description of asset shelf registration property - Julian Eisel
- UI: Use regular sentence case for Arrange/Align description - Eitan Traurig
- 🔸 UI: Shorten Display Device to Display, and View Transform to View - Brecht Van Lommel
- 🔸 UI: Pointcloud statistics - Pratik Borhade
- UI: Flip RNA icon + remove RNA_ADD - Dalai Felinto
- 🔸 UI: clarify tooltip for "User Tooltips" - Philipp Oeser
- 🔸 UI: Add dropdown toggle for grease pencil pressure curves - Sean Kim
- UI: Add icons to Compositor nodetree sub-type menu - Pablo Vazquez
- 🔸 UI: Add preset curve buttons for curve mapping template - Sean Kim
- 🔸 UI: Show preset controls for brush strength, size, and jitter curves - Sean Kim
- UI: Do not use TitleCase in tooltips - Pablo Vazquez
- UI: Follow HIG for view item selecting/activating - Julian Eisel
- 🔸 UI: Gray out labels for non-editable linked items - Pratik Borhade
- 🔸 UI: Grey out 'Show Object Origins' option in paint modes - Sean Kim
- UI: Improve Movie Clip Display Aspect Ratio - Aaron Carlisle
- UI: Interleave essentials modifiers in "Generate" menu - Hans Goudey
- 🔸 UI: Move Render Preview operators to View menu - Pablo Vazquez
- 🔸 UI: Movie Clip Editor: Add Overlays Support - Aaron Carlisle
- 🔸 UI: Movie Clip Editor: Consistent Header Layout - Aaron Carlisle
- 🔸 UI: Outliner: Remove empty ID types from listing in Blender File view - Pratik Borhade
- UI: Reduce text jumping for dynamic length values - John Kiril Swenson
- 🔸 UI: Rename animation footers to Playback Controls - Pablo Vazquez
- 🔸 UI: Shape Key: Support Drag drop multiple selected elements - Pratik Borhade
UI/BPY
- UI/BPY: Remove grid layout for UI lists - Julian Eisel
UserPreferences
- 🔸 UserPreferences: Enable Blendfile Compression By Default. - Bastien Montagne
VSE
- 🔸 VSE: Add Compositor modifier - Omar Emara
- 🔸 VSE: Story Tools: Add Scene Strip Menu improvements - Dalai Felinto
- 🔸 VSE: Story Tools: Scene Asset behaviour: always add a new scene - Dalai Felinto
- VSE: Fix Edit scene showing in the Add Scene Strip menu - Dalai Felinto
- 🔸 VSE: Story Tools: Sync object modes when switching scenes - Falk David
Vulkan
- Vulkan: Remove legacy resource tracker - Jeroen Bakker
- Vulkan: Disable Workbench image log render tests - Jeroen Bakker
- Vulkan: Streaming Buffers - Jeroen Bakker
Workbench
- Workbench: Use strip curve rendering during rendertests - Jeroen Bakker
glTF
-
glTF: deprecation of
use_nodes- Julien Duroure
macOS
make lite
- make lite: force WITH_ASSERT_RELEASE to be ON - Dalai Felinto
14 Comments
Hey Pablo... I hope you really know how important your Blender Today shows are to us. And I always look forward to them because you keep us up to date. And what can I say... The entire Blender project, which I've been following for over 20 years, is on its way. Thanks to you, the developers, and the community. Keep up the good work with the Blender Today Show. It's a real asset!
Thank you so much Fred. You made my day. I really appreciate it. 🫂
Hi Pablo! Just two question (splitted in two post):
Blender is an authoring tool, so modeling should be the core module, but today seems outdated compared to other packages. Some times Blender may appear inconsistent: "extrude manifold" has many bug and seems abandoned but still present in the interface; the custom profiles in the bevel panel can't be saved or loaded so the feature is less usable and appear abandoned and so on… the question is: will modeling ("box modeling" I mean) shortly gain the center of attention?
There are around many smart modeling plugins, bat they have different workflow and UI, not always coherent with the main application, and worse, they are paid, so Blender is no more free if they are neeeded to solve basic modeling problems.
The same problem in nodes: I don't see high level nodes like revolve, bevel, bend, loft ecc.. low level nodes for math ecc are fondamental, but they are not artist friendly , user is forced to create advanced tools and so they become paid nodetree!
I think Blender needs some smart unique tool like geometry nodes, for example to cleanup the mesh after booleans, to use vertex-group in subdivision modifier ecc.
I was commenting from my phone before and I only mentioned the LUT thing, but I forgot to mention, I love Blender and VSE! I edit videos using VSE for a long time since blender 2.5x. This Compositor X VSE is something I was wishing for a very long time! Like now we can Chroma Key videos live! Just wanted to say thanks! Blender has been a huge part of my life!
Oi, Pablo!
I think the icons for node assets should make it clear it is node-based somehow. A dot? a wire symbol across the bottom? two icons on one thing would be odd outside the outliner, perhaps against blender's style guide.
Also- you touched on adding a "classic" calculation option for a feature. I personally believe, wherever a calculation is not pure math, but looks "more accurate" or "should be visually more coherent", you should have an option for algorithm choice. Like impossible normals- there is no "correct" algorithm, but there are 4 common ones that look different. (think sky texture) It feels somewhat unfair to just update these things. imagine if we just updated linear filtering to cubic, or just changed the available smoke solvers every couple versions! madness!
Hi Pablo! Hope you're doing great! I've made my own custom scatter for my studio. It's called exactly the same as the new built-in one. So question: would the presence of the built-in scatter automatically rename mine to "Scatter on Surface.001"? 😅
Another question: if you have a compositor setup in the compositing editor and the same setup applied in the video sequencer as a modifier, will the effects be applied twice?
Hey Pablo! 5.0 is looking incredibly exciting and I'm still catching up with all the Blender Talks too. I'll report as many bugs as I can in the upcoming weeks and hope Blender's Beta will be long enough to make 5.0 stable for release despite all the new changes and additions!
Since the compositor is getting so much love and is becoming more and more important for stylized 3D and more, are there design proposals or even pull requests regarding support for Cycles passes in the viewport Compositor? Or just general feature parity between engines when it comes to the Viewport Compositor? And maybe even Viewlayer support for the viewport. I'd love an improvment to AOVs too which you currently have to setup manually in the view layer without the AOV node showing you available AOVs etc.
Also, will Compositor Essential Assets make it to 5.0? :O I've been active in the design proposal there.
This all has me really excited for the future so I hope it'll be improved upon even more in upcoming versions!
Hi Pablo, my second question: I hope the simulation nodes (that at the moment doesn't use physic by the way) is not intended to replace the actual particle and physic system (with its tools for force field ecc)! I don't want to rewrite by my own with thousand and thousand of nodes and math an entire professional particle system like the one already present in Blender! Related to this, regards fluids: what about Mantaflow?
I feel you. I do like neat little menu checkboxes to quickly add common things. physics, armatures, force fields, have always been modifiers or basic object/world properties in the background.
and we know all that physics stuff would have too many options to show easily in a modifier box. I've always been a proponent of blackbox physics nodes, and one of the reasons, is because the node would simply be the physics menu, there would be no nodes inside, and you could just slap the node interface into properties. We may need a property for big nodes themselves!
Greetings Pablo!
I have been following the progress of the Swap Node operator, and finally, it's great news to have the functionality return after 2 years! (removed in Blender 4.0, 14-Nov-23)
One question, is it possible to port this change over to Blender 4.2 and 4.5? If not, is it possible to change the Shift-S pop-up so that instead of saying something like "Expect this feature to come soon", it would instead say "This feature exists in Blender 5.0"
we don't want to push users toward certain versions. Plus, it's open source! you could make a new version!... and remove that message, though. that's not supposed to be there in general =3=
Hey Pablo, greetings from Brasil! Will compositor nodes support LUTs? It would be super cool to have a LUT input node
d-do we-... okay I think you do that through color management but wow. we don't have something to load the LUT in the compositor that I can find... huh
Hey Pablo! Hope you are well! (blender conference plague aside)
I'm digging the new nodegroup look and double click to enter/leave is cool too. I was wondering if some hotkeys might also be considered for entering/leaving? Double click works fine and should stay as is but blender also avoids double click here and there, like alt+click for edge loops etc. I for in and O for out is an advent that has been used by others, something like that.
What do you think?
PS: Justice for Uglypackage