Last 10 days! - Blender Today LIVE #236
BlenderToday LIVE #236
Changelog
504 commits in total, of which 128 are fixes and 114 cleanup.
Add panels to Principled BSDF node
- Add panels to Principled BSDF node - Alaska
Anim
- Anim: versioning, also bone create collections for empty bone groups - Sybren A. Stüvel
- Anim: add bone collection custom properties sub-panel - Sybren A. Stüvel
- Anim: show Bone Collections panel when armature is pinned - Sybren A. Stüvel
-
Anim: rename Armature
show_group_colorstoshow_bone_colors- Sybren A. Stüvel - Anim: remove RNA access to bone groups - Sybren A. Stüvel
-
Anim: add
bonecollection.bonesRNA collection property - Sybren A. Stüvel -
Anim: add notifier
ND_BONE_COLLECTIONfor bone collection changes - Sybren A. Stüvel -
Anim: Add
bone.collections.clear()RNA function - Sybren A. Stüvel -
Anim: clarify
BKE_armature_find_bone_namedocstring - Sybren A. Stüvel - Anim: disallow bone collection operations on linked armatures - Sybren A. Stüvel
- Anim: allow (de)selecting bones in collection on overridden armature - Sybren A. Stüvel
- Anim: allow appending bone collections with liboverrides - Sybren A. Stüvel
- Anim: store Armature's active bone collection by name - Sybren A. Stüvel
- Anim: add support for renaming bone collections added by overrides - Sybren A. Stüvel
- Anim: allow assigning bones to added-in-local-override collections - Sybren A. Stüvel
- Anim: only show editable bone collections in M/shift+M menu - Sybren A. Stüvel
- Anim: add reverse pointers from bone to collection on overrides - Sybren A. Stüvel
- Anim: when applying overrides, just assert the bone hash is there - Sybren A. Stüvel
- Anim: hide bone collection customprop editor on overrides - Sybren A. Stüvel
- Anim: remove bone groups from the outliner - Sybren A. Stüvel
- Anim: Add bone collections to the outliner - Sybren A. Stüvel
- Anim: merge bone collection assignment menus - Sybren A. Stüvel
- Anim: make it possible to select bone collections on linked armature - Sybren A. Stüvel
- Anim: (de)select bones in collection, remove 'name' operator property - Sybren A. Stüvel
- Anim: bone collections: make the "(de)select bones" work on linked arms - Sybren A. Stüvel
Animation
- Animation: Move Snapping to Scene - Christoph Lendenfeld
- Animation: Graph Editor - Don't draw curve points if they are too close to each other - Christoph Lendenfeld
- Animation: Keep icons aligned when curves are baked - Christoph Lendenfeld
- Animation: Graph Editor optimize handle drawing - Christoph Lendenfeld
- Animation: Scale Average slider for Graph Editor - Christoph Lendenfeld
- Animation: Rename "Bake Curve" to "Keys to Samples" - Christoph Lendenfeld
- Animation: Rename Graph_OT_sample - Christoph Lendenfeld
- Animation: Rename ACTION_OT_sample - Christoph Lendenfeld
- Animation: Graph Editor locked key drawing - Christoph Lendenfeld
Asset Shelf
- Asset Shelf: Make display popup more constistent with Asset Browser - Julian Eisel
- Asset Shelf: Make header buttons consistent with Asset browser - Julian Eisel
Asset shelf
- Asset shelf: Remove unnecessary separator between buttons in header - Julian Eisel
- Asset shelf: Use asset representation for asset shelf BPY methods - Julian Eisel
Assets
Attributes
BKE_deform
- BKE_deform: assert on invalid arguments to BKE_defvert_remove_group - Campbell Barton
BLF
- BLF: Slant Angle Correction - Harley Acheson
BLI_math
- BLI_math: add add_v3_uchar_clamped (previously color_add_v3_i) - Campbell Barton
BLI_string
- BLI_string: add BLI_wcwidth_safe to avoid handling error values inline - Campbell Barton
- BLI_string: prevent buffer overflow for BLI_str_utf8_offset_* functions - Campbell Barton
- BLI_string: add BLI_str_utf8_offset_* functions that support tabs - Campbell Barton
- BLI_string: add BLI_str_utf8_as_unicode_safe - Campbell Barton
CMake
- CMake: Fix building with WITH_VULKAN_BACKEND - Ray Molenkamp
Cleanup
- Cleanup: Move BKE preview image code to separate file - Julian Eisel
- Cleanup: Simplify Hydra SubMesh creation and removal - Hans Goudey
- Cleanup: Make format - Harley Acheson
- Cleanup: remove redundant filenames from freestyle scripts - Campbell Barton
- Cleanup: spelling in comments - Campbell Barton
- Cleanup: use function style integer casts, modernize headers - Campbell Barton
- Cleanup: Avoid mesh positions copy applying sculpt to shape key - Hans Goudey
- Cleanup: Use consistent static function names in sculpt_geodesic.cc - Hans Goudey
- Cleanup: Use const arguments to sculpt "get" functions - Hans Goudey
- Cleanup: Use BitVector instead of BLI_Bitmap in sculpt expand - Hans Goudey
- Cleanup: Use simpler face vert iteration in sculpt expand - Hans Goudey
- Cleanup: Use C++ Set for expand snap enabled face sets - Hans Goudey
- Cleanup: Remove mistanly committed timer - Hans Goudey
- Cleanup: Ensure correct order of headers in Metal kernel - Sergey Sharybin
-
Cleanup: Cover .metal files with
make format- Sergey Sharybin - Cleanup: remove dead code - Jacques Lucke
- Cleanup: Make format - Christoph Lendenfeld
- Cleanup: early return to reduce right shift - Campbell Barton
- Cleanup: spelling in comments - Campbell Barton
- Cleanup: remove redundant preset lookup loading the default key-config - Campbell Barton
- Cleanup: use menu type flag - Jacques Lucke
- Cleanup: format - Campbell Barton
- Cleanup: negate handles_visible & name hide_handles - Campbell Barton
- Cleanup: Move variable declarations close to usage in thumbnail function - Julian Eisel
- Cleanup: Add comments to thumbnail creation function - Julian Eisel
- Cleanup: Avoid redundant/confusing variable in thubnail create function - Julian Eisel
- Cleanup: Clarify path variable name in thumbnail create function - Julian Eisel
- Cleanup: Remove mesh validation assert in mesh code - Hans Goudey
- Cleanup: Remove unnecessary search item in texture node add menu - Hans Goudey
- Cleanup: Change OffsetsIndices::data() to return Span instead of pointer - Hans Goudey
- Cleanup: remove unnecessary UI_GetThemeColorType4ubv call - Campbell Barton
- Cleanup: remove unused defines, reduce variable scope - Campbell Barton
- Cleanup: Add comment about purpose of add modifier operator - Hans Goudey
- Cleanup: Change mesh face triangle count macro to C++ inline function - Hans Goudey
- Cleanup: Avoid assuming guarded allocator in corrective smooth modifier - Hans Goudey
- Cleanup: use early returns in deform.cc functions - Campbell Barton
- Cleanup: assert the index created in rule_follow_leader is valid - Campbell Barton
- Cleanup: rename CurvePenData::acted to changed - Campbell Barton
- Cleanup: remove use of 'auto' - Campbell Barton
- Cleanup: key-map indentation - Campbell Barton
- Cleanup: doxygen parameters, blank comment lines - Campbell Barton
- Cleanup: spelling in comments - Campbell Barton
- Cleanup: Split VSE timeline and preview drawing code - Richard Antalik
- Cleanup: Move sequencer_intern.hh to C++ - Hans Goudey
- Cleanup: Remove unnecessary struct keyword in C++ code - Hans Goudey
- Cleanup: use doxy sections - Campbell Barton
-
Cleanup: rearrange code in
bsdf_microfacet.hfor better readability - Weizhen Huang -
Cleanup: remove redundant
fresnel_dielectric()- Weizhen Huang -
Cleanup: add TODOs in
bsdf_microfacet.h- Weizhen Huang - Cleanup: fix typo in path guiding code - Weizhen Huang
- Cleanup: Formatting - Miguel Pozo
- Cleanup: refactor VSE timeline drawing code - Richard Antalik
- Cleanup: VSE timeline drawing code - Richard Antalik
- Cleanup: Cycles: Remove unused argument - Lukas Stockner
-
Cleanup: Anim: Replace use of
T_AUTOMERGE- Falk David - Cleanup: GPU: Remove duplicated line - Miguel Pozo
- Cleanup: Remove unnecessary "add node search" - Hans Goudey
- Cleanup: Grammar and corrections in operator type documentation - Hans Goudey
-
Cleanup: Add warning about current limitations of operators'
get_namecallback. - Bastien Montagne - Cleanup: Remove unused includes in cuboid primitive - Hans Goudey
- Cleanup: Make format - Harley Acheson
- Cleanup: compiler warning from missing include - Campbell Barton
- Cleanup: format - Campbell Barton
- Cleanup: use braces around statements - Campbell Barton
- Cleanup: remove unneeded include - Nathan Vegdahl
- Cleanup: Format - Lukas Stockner
- Cleanup: single quote enums in Python - Campbell Barton
- Cleanup: include the type name as a prefix for RNA keymap functions - Campbell Barton
- Cleanup: Improve comment on asset shelf header size - Julian Eisel
- Cleanup: Make format - Harley Acheson
- Cleanup: Remove unnecessary extern "C" from Python files - Hans Goudey
- Cleanup: always run both RNA_STRUCT_BEGIN & END macros - Campbell Barton
- Cleanup: always run both FOREACH_MAIN_ID_BEGIN & END macros - Campbell Barton
- Cleanup: resolve bl_keymap_validate.py warning (when not --relaxed) - Campbell Barton
- Cleanup: group navigation argument with other preferences - Campbell Barton
- Cleanup: spelling & punctuation in comments - Campbell Barton
- Cleanup: use enum literals for space_type & region_type arguments - Campbell Barton
- Cleanup: use a mask combining all pie menu directions - Campbell Barton
- Cleanup: remove redundant text access (missed in review) - Campbell Barton
- Cleanup: EEVEE: rename glass BTDF to BSDF at several places - Weizhen Huang
- Cleanup: format - Campbell Barton
- Cleanup: simplify use of tool_settings in space_view3d.py - Campbell Barton
- Cleanup: remove redundant checks from space_view3d.py - Campbell Barton
- Cleanup: use variables for the 3D View header - Campbell Barton
- Cleanup: clarify & simplify Python traceback extraction - Campbell Barton
- Cleanup: remove unnecessary PyC_Err_Format_Prefix use - Campbell Barton
- Cleanup: Strict compiler warnings in Cycles Metal BVH - Sergey Sharybin
- Cleanup: Improve internal asset shelf function name - Julian Eisel
- Cleanup: Anim, remove out of date note on ANIM_armature_runtime_refresh - Sybren A. Stüvel
- Cleanup: Anim, add some more comments to the bone collection system - Sybren A. Stüvel
- Cleanup: Make format - Harley Acheson
- Cleanup: Make format - Harley Acheson
- Cleanup: fix debug build - Jacques Lucke
- Cleanup: format, spelling - Campbell Barton
- Cleanup: use lowercase ui prefix for enum, rename Color -> ColorID - Campbell Barton
- Cleanup: document ownership for uiTooltipField, add function attributes - Campbell Barton
- Cleanup: various non-functional C++ changes - Campbell Barton
- Cleanup: use braces for sources in intern/ - Campbell Barton
- Cleanup: use braces for GHOST Cocoa *.mm sources - Campbell Barton
- Cleanup: avoid path copying & allocation setting the window title - Campbell Barton
- Cleanup: split ID property access into get/ensure functions - Campbell Barton
- Cleanup: improve and unify naming - Jacques Lucke
- Cleanup: move local classes out of header - Jacques Lucke
- Cleanup: Make format - Harley Acheson
- Cleanup: Remove unused logic from geometry nodes operator - Hans Goudey
- Cleanup: use booleans for text drawing & editing - Campbell Barton
- Cleanup: add suffix to clarify unicode functions that return an error - Campbell Barton
- Cleanup: add asserts, improve wmEvent::utf8_buf doc-string - Campbell Barton
- Cleanup: add "_safe(..)" suffix to BLI_str_utf8_as_unicode_step - Campbell Barton
- Cleanup: remove error checks on return value of safe utf8 functions - Campbell Barton
- Cleanup: remove fix for #112129 which is no longer needed - Campbell Barton
- Cleanup: remove unnecessary PyErr_Fetch/Restore use in bpy_rna - Campbell Barton
- Cleanup: Strict compiler warning in GPU code - Sergey Sharybin
- Cleanup: remove commented out PyC_ExceptionBuffer function - Campbell Barton
Compositor
- Compositor: Kuwahara filter: consider alpha channel. - Habib Gahbiche
Correct own error in 0424d57d76d9fce928bce54668729919461fb776
- Correct own error in 0424d57d76d9fce928bce54668729919461fb776 - Campbell Barton
Curve
- Curve: extend BKE_nurb_bezt_handle_test & BKE_nurb_handles_test - Campbell Barton
- Curve: operate on handles when the knot is selected - Campbell Barton
Curve Pen Tool
- Curve Pen Tool: set the selection for extruded bezier vertices - Campbell Barton
- Curve Pen Tool: only select the knot when picking vertices - Campbell Barton
Cycles
- Cycles: Improve compilation error logs for Metal kernels - Sergey Sharybin
- Cycles: support building with Windows ROCm 5.5 SDK - bsavery
- Cycles: oneAPI: only export necessary symbols - Xavier Hallade
- Cycles: oneAPI: keep disabling use of copy engine with new compiler versions - Xavier Hallade
- Cycles: remove defensive sampling in BSDF picking - Weizhen Huang
- Cycles: Fix compilation of the shader table precomputing tool - Lukas Stockner
- Cycles: GPU denoising refactor - Stefan Werner
- Cycles: Rework Principled BSDF Clearcoat - Lukas Stockner
- Cycles: Tweak Principled BSDF Subsurface parameters - Lukas Stockner
- Cycles: Rework Principled BSDF Emission - Lukas Stockner
- Cycles: Only compute Coat Normal if needed - Lukas Stockner
- Cycles: Use new MetalRT curve primitives for 3D curves and ribbons - Michael Jones
- Cycles: Don't invert backfacing IOR in generalized_schlick_bsdf - Lukas Stockner
- Cycles: Specify roughness for Subsurface OSL node - Lukas Stockner
- Cycles: Fix OSL layering in combination with emission evaluation - Lukas Stockner
- Cycles: Pack Chiang Hair local coordinates into BSDF normal field - Lukas Stockner
- Cycles: Also use maybe_ensure_valid_specular_reflection for OSL - Lukas Stockner
- Cycles: Fix Geometry node Tangent output for curves when using OSL - Lukas Stockner
- Cycles: Remove unused Normal input on Hair BSDF - Lukas Stockner
- Cycles: Use Blender headers to access geometry data, avoid copy - Hans Goudey
Docs
- Docs: add note to mathutils.Matrix.normalize() - Andrej730
- Docs: remove references to "tessface" - Campbell Barton
EEVEE
EEVEE Next
- EEVEE Next: Volumes: Lighting integration improvements - Miguel Pozo
EEVEE-Next
- EEVEE-Next: Irradiance Volume: Add clamp options - Clément Foucault
- EEVEE-Next: Merge UBOs - Miguel Pozo
- EEVEE-Next: Add back data passes UI and missing passes - Miguel Pozo
- EEVEE-Next: Raytrace: Add back Screen Space radiance input - Clément Foucault
FIx
- FIx: Workbench: Texture-less materials in texture mode - Miguel Pozo
Fix
- Fix: GPU: Fix shader builder option not building - Clément Foucault
- Fix: EEVEE-Next: Fix shader compilation on Metal - Clément Foucault
- Fix: OSX: Compilation on OSX 10.15 target platform - Clément Foucault
- Fix: Warnings in transform_convert_nla.cc - Christoph Lendenfeld
- Fix: Crash when trying to poll the status of non-existent icons - Colin Basnett
- Fix: free BoneCollection ID props when the collection is freed - Nathan Vegdahl
- Fix: Build error with Audaspace turned on - Habib Gahbiche
- Fix: exception when using menu search outside of properties editor - Jacques Lucke
-
Fix: EEVEE: Principled BSDF not matching Cycles near
IOR == 1- Weizhen Huang - Fix: Node link drag search attachment to existing group input broken - Hans Goudey
- Fix: Debug build error after previous commit - Hans Goudey
- Fix: Graph Editor extrapolation line drawing issue - Christoph Lendenfeld
- Fix: Incorrect NodeTreeInterface move functions argument descriptions - Colin Basnett
- Fix: Animation Editor snapping not working when using rotate or scale - Christoph Lendenfeld
- Fix: Cycles: inconsistent normal checks when sampling and evaluating BSDF - Weizhen Huang
- Fix: EEVEE-Next: Motion blur on image renders - Miguel Pozo
- Fix: Regression: Box select not working for GP/GPv3 channels - Pratik Borhade
- Fix: USD export: revert renaming active UV maps - Michael Kowalski
- Fix: EEVEE-Next: Velocity do_deform detection - Miguel Pozo
- Fix: Wrong operator call in Graph Editor menu - Christoph Lendenfeld
- Fix: "use_duplicated_keyframes" not found - Falk David
- Fix: 3D Viewport header missing update changing vertex groups - Philipp Oeser
- Fix: EEVEE-Next: SSS image rendering - Miguel Pozo
- Fix: Graph Editor first key handles not drawn - Christoph Lendenfeld
-
Fix: EEVEE: use inverse IOR in BSDF LUT
refract()- Weizhen Huang -
Fix: EEVEE: wrong reflectance at
IOR == 0.0- Weizhen Huang - Fix: Duplicate node tool catalog in point cloud edit mode - Hans Goudey
- Fix: Show modal keymap for operators called inside macros - Leon Schittek
- Fix: make.bat showhash - Ray Molenkamp
- Fix #100718: NLA Hold Forward Inconsistency - Nate Rupsis
- Fix #101550: Transfer Mode operator doesn't update outliner selection - Pratik Borhade
- Fix #102687: Use Proper Style for Label Length Estimation - Harley Acheson
- Fix #107726: Viewport animation render ignores start frame - Richard Antalik
- Fix #109670: attribute shared between geometries even when edited - Jacques Lucke
- Fix #110108: NLA absolute snapping - Christoph Lendenfeld
- Fix #110729: Unwrap angle based fails with seams - Campbell Barton
- Fix #111017: Improvements to the drawing of Color Ramps - Harley Acheson
- Fix #111166: crash when enabling render pass with equally named AOV - Jacques Lucke
- Fix #111411: crash with group node that references linked-but-not-found group - Jacques Lucke
- Fix #111432: Shortcut for cycling fallback tool not working - Pratik Borhade
- Fix #111508: Shader node previews crash when deleting common output - Colin Marmond
- Fix #111595: Missing metadata info when blending image - Richard Antalik
- Fix #111699: Remove deleted interface from the VAO cache - Miguel Pozo
- Fix #111780: bone collections and undo don't work together - Nathan Vegdahl
- Fix #111786: Node panels header blocks resizing the node border - Lukas Tönne
- Fix #111788: Label width needs to use UI scale to match node width - Lukas Tönne
- Fix #111804: Remove padding between node sockets when hidden - Lukas Tönne
- Fix #111811: Corrective smooth modifier crash with zero vertices - Hans Goudey
- Fix #111820: Missing type casting in XrGraphicsBinding.cc - ChengduLittleA
- Fix #111821: Fix Stats While in Sculpt Mode - Harley Acheson
- Fix #111831: Proper Highlighting of Inactive Buttons - Harley Acheson
- Fix #111832: Move the Node Group Icon to a first position in header - Iliya Katueshenock
- Fix #111891: Speed factor property is still available in panel - Richard Antalik
- Fix #111896: Regression: Crash for entering into Armature Edit Mode - Pratik Borhade
- Fix #111898: Custom normals data transfer modifier does not work - Philipp Oeser
- Fix #111907: Crash loading file with library overrides and object-linked materials. - Bastien Montagne
- Fix #111934: crash sculpting on mesh - Jacques Lucke
- Fix #111936: Nodes forward compatibility data is not freed - Lukas Tönne
- Fix #111942: wrong colors editing list items in light theme - Pablo Vazquez
- Fix #111950: missing "hide value" and "compact" flags for group sockets - Lukas Tönne
- Fix #111955: Animation player no longer responds to mouse input - Philipp Oeser
- Fix #111960, #112200, #112214: EEVEE: Incorrect BuiltinBits::LAYER use - Miguel Pozo
- Fix #111963: Copying sockets was not creating unique identifiers - Lukas Tönne
- Fix #111963: Followup fix to ensure sockets inside panels have unique identifiers - Lukas Tönne
- Fix #111966: Node group panels too small when using "both" type sockets - Lukas Tönne
- Fix #111969: Remove gaps between panels and fill in the background - Lukas Tönne
- Fix #111970: Regression: Crash with assertion after delete scene when some 3D Views have Local Collection enabled - Bastien Montagne
- Fix #111983 : Context Path in the node editors is broken - Philipp Oeser
- Fix #111988: Hydra render crash if object doesn't have material - georgiy.m.markelov@gmail.com
- Fix #112003: Principled Huang Hair renders black on horizontal particle hair - Weizhen Huang
-
Fix #112005: increase
ray_sphere_intersect()precision - Weizhen Huang - Fix #112014: Crash making node group with multiple input links - Lukas Tönne
- Fix #112016: Sockets in closed node panels still draggable. - Lukas Tönne
- Fix #112021: Crash dragging node groups into an empty node editor - Philipp Oeser
- Fix #112028: Ctrl+Alt+Scroll not working on all selected objects - Philipp Oeser
- Fix #112032: Theme: Wrong colors editing list items - Pablo Vazquez
- Fix #112052: Theme access asserts on startup - Campbell Barton
- Fix #112068: Crash when loading converted curves - Falk David
- Fix #112073: Add all group outputs first, followed by all inputs - Lukas Tönne
- Fix #112077: Crash Highlighting Popover menu - Harley Acheson
- Fix #112081: Incorrect Toolbar Context Highlighting - Harley Acheson
- Fix #112085: Not able to insert keys on subframes - Christoph Lendenfeld
- Fix #112087: Float curve flickers with aligned points at x axis - Guillermo Venegas
- Fix #112094: pass through simulation before first simulated frame - Jacques Lucke
- Fix #112094: negative delta time values in simulation nodes - Jacques Lucke
- Fix #112129: Remove Blank Items from "Region Toggle" Pie Menu - Harley Acheson
- Fix #112144: Graph Editor handle highlighting not working correctly - Philipp Oeser
- Fix #112184: Adapt optimized case of Points of Curve node for domain - Iliya Katueshenock
- Fix #112208: Vertex parenting index wrong with multiple splines - Philipp Oeser
- Fix #112211: Workbench: Clamp infinite inputs in TAA - Miguel Pozo
-
Fix #112218: Do not require screen in
object_join_poll- ChengduLittleA - Fix #112231: Workbench: Texture support in sculpt mode - Miguel Pozo
- Fix #112233: Panel collapsed state should not hide socket links - Lukas Tönne
- Fix #112242: Workbench: Allow xray in render mode - Miguel Pozo
- Fix #112247: Node group socket declarations using only 'NONE' subtype - Lukas Tönne
- Fix #112285: Sculpt Mode: Mask brush smoothing is broken - Philipp Oeser
- Fix #112289: Workbench: Always clear depth_in_front - Miguel Pozo
- Fix #112299: crash calling context.copy() in operator with popup - Brecht Van Lommel
- Fix #112330: Group sockets not initialized when created by link-drag - Lukas Tönne
- Fix #112331: Add update tags directly in bNodeTreeInterface API methods - Lukas Tönne
- Fix #112333: assert when creating node group with unavailable link - Jacques Lucke
- Fix #112335: particle instance modifier outputs wrong attributes - Jacques Lucke
- Fix #112374: loading reference/background images filters out movies - Philipp Oeser
- Fix #112397: modifiers.execution_time doesn't work on curve objects - Philipp Oeser
- Fix #112399: Memory leak with exceptions from scripts in the text editor - Campbell Barton
- Fix #112409: Workbench: Cavity disabled when Xray is enabled - Miguel Pozo
- Fix #112486: VSE: Rendering transparent frames produces errors/crashes - Sergey Sharybin
- Fix #112500: Crash setting mesh line vertices to 0 - Hans Goudey
- Fix #89006: Use correct path to DJV viewer on Windows - Jesse Yurkovich
- Fix (studio-reported) missing clearing of 'need resync' library tag. - Bastien Montagne
- Fix (unreported) crash in versioning code of the new Bone Collections. - Bastien Montagne
- Fix (unreported) crash when deleting ObData while keeping their ShapeKeys. - Bastien Montagne
- Fix (unreported) crash when showing VSE in some cases. - Bastien Montagne
- Fix Cycles HIP RT issues with curves and transparent shadows - salipourto
-
Fix NaN in Principled Huang Hair
sphg_dir()- Weizhen Huang - Fix Python console command execution without a main module - Campbell Barton
- Fix Toggle Region pie menu items not matching the region direction - Campbell Barton
- Fix Wayland error message displaying when running on X11 - Campbell Barton
- Fix assertion unwrapping UV's on a mesh without UV's - Campbell Barton
- Fix bl_keymap_validate.py failure caused by add-on key-maps - Campbell Barton
- Fix broken OPTIX_ROOT_DIR environment variable for setting up build - Brecht Van Lommel
- Fix build warnings - Richard Antalik
- Fix compilation error draw test - Jeroen Bakker
- Fix crash converting spaces to tabs - Campbell Barton
- Fix crash executing a script when sys.modules doesn't contain main - Campbell Barton
- Fix crash in Cycles when cancelling render during light tree building - Sergey Sharybin
- Fix crash loading Blender when the key-configuration fails to load - Campbell Barton
- Fix crash using the key-map editor after refreshing internal data - Campbell Barton
- Fix crash when moving retimed sound strip - Richard Antalik
- Fix cursor motion across characters with an unknown column width - Campbell Barton
- Fix curve set handle type not respecting hidden handles - Campbell Barton
- Fix delete key setting a control character in wmEvent::utf8_buf - Campbell Barton
- Fix divide by zero displaying characters with an unknown column width - Campbell Barton
- Fix error batch renaming light probes - Campbell Barton
- Fix error from 106d2bb3120b579fdf11336baf4e1cf8669bc53b - Campbell Barton
- Fix error messages removing keymaps from keyconfigs - Campbell Barton
- Fix errors in previous commit - Richard Antalik
- Fix fast-path addon_utils._initialize_once not being used on startup - Campbell Barton
- Fix for node group "make" adding sockets in wrong order - Lukas Tönne
- Fix incorrect cast for BLF_str_offset_from_cursor_position - Campbell Barton
- Fix incorrect operator in sequencer context menu - Campbell Barton
- Fix keyconfigs.remove(..) leaving dangling pointers - Campbell Barton
- Fix memory leak in PyC_Err_Format_Prefix for Python 3.12 - Campbell Barton
- Fix memory leak in PyC_ExceptionBuffer for Py 3.12 - Campbell Barton
- Fix memory leak with collections attributes in RNA for Python 3.12 - Campbell Barton
- Fix missing weight-paint overlay popover when mixing pose & weight-paint - Campbell Barton
- Fix mistake in previous commit - Richard Antalik
- Fix node group socket order when making a group from a single node - Lukas Tönne
- Fix own error in a8124a2cb456888a4bc430f820b18898adc93807 - Campbell Barton
- Fix possible crash when loading thumbnails from .blend files - Julian Eisel
- Fix potential error casting a pointer offset to int on 64bit systems - Campbell Barton
- Fix script_validate_keymap test failing (mistake parsing --relaxed arg) - Campbell Barton
- Fix selecting between tab (or other control characters) in the UI - Campbell Barton
- Fix setting curve handles free/aligned/toggle ignoring selected knots - Campbell Barton
- Fix shadow linking for Cycles Metal RT - Sergey Sharybin
- Fix text editor auto-close potentially auto-closing non-brackets - Campbell Barton
- Fix text editor cursor motion with tabs - Campbell Barton
- Fix text editor word-wrap displaying characters with an unknown width - Campbell Barton
- Fix transforming a gpencil bezier vertex changing it's handle type - Campbell Barton
Function
- Function: add assert to detect invalid side effect nodes early - Jacques Lucke
Functions
- Functions: combine allocations in lazy function graph executor - Jacques Lucke
- Functions: better pack socket state structs - Jacques Lucke
- Functions: add asserts to check indices - Jacques Lucke
- Functions: reduce memory usage in node state - Jacques Lucke
- Functions: support wrapping lazy-function node execute function - Jacques Lucke
- Functions: refactor lazy-function graph interface - Jacques Lucke
- Functions: use array indexing instead of VectorSet in graph executor - Jacques Lucke
GHOST
- GHOST: remove prefix from exception messages - Campbell Barton
GHOST/Wayland
- GHOST/Wayland: remove exception if wl_keyboard_listener::keymap fails - Campbell Barton
GPU
- GPU: Add clear color support to explicit FB LoadStore state - Jason Fielder
- GPU: Add support for rasterization order groups - Jason Fielder
- GPU: Add tests for 1d, 2d array texture types - Jeroen Bakker
- GPU: Remove uneeded and incorrect os version check - Clément Foucault
- GPU: Rename ROG to SubpassInput, add tests and documentation - Clément Foucault
GPv3
- GPv3: Frame delete operator - casey bianco-davis
- GPv3: Set keyframe type - Amelie Fondevilla
- GPv3: Jump to Selected/Previous/Next keyframe - Amelie Fondevilla
- GPv3: Frame All/Selected keyframes - Amelie Fondevilla
- GPv3: Move dopesheet channels - Falk David
- GPv3: Mirror grease pencil frames - Amelie Fondevilla
- GPv3: Duplicate keyframes - Amelie Fondevilla
- GPv3: Snap selected grease pencil frames - Amelie Fondevilla
- GPv3: Send updates after drop operation - Pratik Borhade
Geometry
Geometry Nodes
- Geometry Nodes: Extend add modifier menu with node group assets - Hans Goudey
- Geometry Nodes: Expose sharp edge status with builtin nodes - Hans Goudey
- Geometry Nodes: Hide node group selector for asset modifiers - Hans Goudey
- Geometry Nodes: Improved defaults when creating new tool - Hans Goudey
- Geometry Nodes: Show node group in modifier UI after duplication - Hans Goudey
- Geometry Nodes: add Skip input to Simulation Output node - Jacques Lucke
- Geometry Nodes: Show node tool name in redo panel - Hans Goudey
- Geometry Nodes: Skip redo panel for node tools without inputs - Hans Goudey
- Geometry Nodes: Show uncategorized assets in separate menus - Hans Goudey
- Geometry Nodes: Update node tool menus dynamically - Hans Goudey
- Geometry Nodes: send lazy threading hint from ico sphere node - Jacques Lucke
- Geometry Nodes: create local tree logger only when something is logged - Jacques Lucke
- Geometry Nodes: generalize zone body function generation - Jacques Lucke
- Geometry Nodes: use separate struct for side effect nodes - Jacques Lucke
- Geometry Nodes: refactor geometry nodes execution interface - Jacques Lucke
I18N
- I18N: Updated UI translations from SVN trunk (r6686). - Bastien Montagne
- I18N: updated UI translations from SVN trunk (r6692). - Bastien Montagne
- I18N: Updated UI translations from dedicated git repo (3c637f5ed7d08b). - Bastien Montagne
I18N module
- I18N module: updates for transition to weblate. - Bastien Montagne
I18n
- I18n: fix the name of the Czech language - Damien Picard
- I18n: translate drag and drop messages for sockets - Damien Picard
- I18n: do not translate Freestyle modifier breadcrumbs - Damien Picard
I18n Py Module
- I18n Py Module: Update settings after move to Weblate. - Bastien Montagne
Keymap
- Keymap: remove internal vert_without_handles option - Campbell Barton
- Keymap: Add Numpad Return to create newline in Text object edit mode - Philipp Oeser
LibOverride
- LibOverride: Expose the 'needs resync' status of libraries to RNA/Py API. - Bastien Montagne
Liboverride/Outliner
- Liboverride/Outliner: Fix assert in Hierarchy view. - Bastien Montagne
License header
- License header: add SPDX header - Campbell Barton
Mesh
- Mesh: Further optimize topology map creation - Hans Goudey
- Mesh: Pre-fill loose verts and bounds cache of line primitive - Hans Goudey
Modifiers
- Modifiers: Rename "Empty Modifier" to "Geometry Nodes" - Dalai Felinto
Node drawing
- Node drawing: Fix unused variables in release builds - Lukas Tönne
Nodes
- Nodes: Fix versioning 2.6 groups, causing dangling link pointers - Lukas Tönne
- Nodes: New test for node group versioning - Lukas Tönne
- Nodes: Add PanelDeclarationBuilder for panels in builtin nodes - Lukas Tönne
- Nodes: Support shortcuts for adding specific node group assets from menu - Hans Goudey
- Nodes: Draw node buttons between outputs and inputs for custom layouts - Lukas Tönne
- Nodes: Support for input/output sockets in same vertical space - Lukas Tönne
Overlay
- Overlay: Remove Unused Attribute in edit mesh face shader - Jeroen Bakker
PyAPI
- PyAPI: postpone loading add-ons until after key-maps have been defined - Campbell Barton
- PyAPI: add keyconfig.keymaps.clear() - Campbell Barton
Python API
- Python API: Fix docstring from method to classmethod - nutti
- Python API: Fix docstring about bpy.utils.load_scripts - nutti
RNA
- RNA: return PointerRNA from rna create functions - Jacques Lucke
- RNA: move the "contains" checks into the RNA API - Campbell Barton
Realtime Compositor tests
- Realtime Compositor tests: enable keying tests. - Habib Gahbiche
Refactor
- Refactor: Code indentation in transform_convert_nla.cc - Christoph Lendenfeld
- Refactor: move default bone collection name to constant - Sybren A. Stüvel
- Refactor: De-duplicate Metal RT self intersection checks - Sergey Sharybin
- Refactor: Make Cycles shadow linking primitives receive ray self primitives - Sergey Sharybin
- Refactor: Rename functions and structs in keyframes_draw.cc - Christoph Lendenfeld
- Refactor: EEVEE: add utility function for 3D texture read - Weizhen Huang
- Refactor: Anim, consistent abstraction level ANIM_armature_bonecoll_assign - Sybren A. Stüvel
Show FCurve modifier toggle widget as 'inactive' when there are no modifiers
- Show FCurve modifier toggle widget as 'inactive' when there are no modifiers - Sybren A. Stüvel
Snap
- Snap: Support occlusion of 'In Front' objects - Germano Cavalcante
Tests
- Tests: bl_keymap_validate failure wasn't causing tests to fail - Campbell Barton
- Tests: update test for change to BLI_str_cursor_step_next_utf8 - Campbell Barton
Text Editor
- Text Editor: Auto Close Pairs on Selected Text - Matheus Santos
- Text Editor: improvements to auto-close implementation - Campbell Barton
Texture Nodes
- Texture Nodes: Refactor Add menu - Pablo Vazquez
Thumbnails
- Thumbnails: Always use cached thumbnails for offline files - Julian Eisel
Tools
- Tools: add addr2line_backtrace to extract back-trace info on Unix/Linux - Campbell Barton
UI
- UI: Add shortcut for "Add Modifier" menu in property editor - Hans Goudey
- UI: Add separator after "Empty Modifier" in add modifier menu - Hans Goudey
- UI: Add canvas picker to paint modes in 3D Viewport - Pablo Vazquez
- UI: Allow "New Window" While in Maximized Area - Harley Acheson
- UI: Hide widget emboss if inner color is fully transparent - Pablo Vazquez
- UI: Fixes for the highlighting of Selected Enums - Harley Acheson
- UI: support searching in menus - Jacques Lucke
- UI: Proper Selection Highlight for Confirms - Harley Acheson
- UI: Show Selected Tool Item - Harley Acheson
- UI: display a short pulse when displaying reports in the status bar - Campbell Barton
- UI: Do not repeat icon in modifier options menu - Pablo Vazquez
- UI: Simplified Hover on Tool Items - Harley Acheson
- UI: Use asset icon for "Mark Asset" in menus - Pablo Vazquez
- UI: Add "Open Recent" to File Context menu - dshot92
- UI: Rename Geometry Nodes "Show Node Group Selector" property - Hans Goudey
- UI: Add a separator before modifier context menu geometry nodes items - Hans Goudey
- UI: Remove name property from node interface active panel UI - Hans Goudey
- UI: Fix inconsistent menu background padding - Leon Schittek
- UI: Let asset shelf header resizing affect the entire asset shelf - Julian Eisel
- UI: Remove panel name size limit for complex character languages - Julian Eisel
- UI: Change menu icons of single-choice enums to radio buttons - Thomas Barlow
- UI: Change Order of Lists in File Browser Sidebar - Harley Acheson
- UI: Allow Integer Thumbnail Size Range - Harley Acheson
- UI: remove unnecessarily dead zones for pie menus - Campbell Barton
- UI: Improve/correct vertical widget positioning in header-like regions - Julian Eisel
- UI: Theme: Allow transparency when editing text in widgets - Pablo Vazquez
- UI: Viewport: Split object/mode overlays into own popover - Pablo Vazquez
- UI: Custom Tooltips with Optional Images - Harley Acheson
- UI: Fix Error in Custom Tooltips - Harley Acheson
- UI: Window Title With Version - Harley Acheson
- UI: Add icons to Color Ramp context menu items - Pablo Vazquez
- UI: use "safe" utf8 decoding functions for string search - Campbell Barton
- UI: Rename Eevee to EEVEE in labels/tooltips - Pablo Vazquez
UI/I18N
- UI/I18N: Fix a couple of issues in new 'Add Modifiers' menu. - Bastien Montagne
UV
- UV: restore internal solver state variable - Campbell Barton
- UV: disable best fit rotation of all islands at end of UV packing - Brecht Van Lommel
- UV: when finding the best packing method, use area as tie breaker - Brecht Van Lommel
Vulkan
- Vulkan: Add recent introduced types - Jeroen Bakker
- Vulkan: Enable Shader Draw Parameters Support - Jeroen Bakker
- Vulkan: Fix Incorrect UINT formats. - Jeroen Bakker
- Vulkan: Texture View - Jeroen Bakker
- Vulkan: Implement Component Swizzling - Jeroen Bakker
- Vulkan: Submit after Compute Dispatch - Jeroen Bakker
- Vulkan: Fix Namespace Collision Between Shader Resources - Jeroen Bakker
- Vulkan: Postpone Resource Destruction - Jeroen Bakker
- Vulkan: Upload Uniform Buffer Attached Data - Jeroen Bakker
- Vulkan: Implement GPU_storagebuf_copy_sub_from_vertbuf - Jeroen Bakker
- Vulkan: Fix Generate Mipmaps for Array Textures - Jeroen Bakker
- Vulkan: Enable Device Features for EEVEE-Next - Jeroen Bakker
WM
- WM: don't update key-maps when toggling "show_expanded" - Campbell Barton
- WM: resolve transform triggering key-maps to be rebuilt - Campbell Barton
Workbench
- Workbench: Remove old implementation - Miguel Pozo
- Workbench: Remove next postfix - Miguel Pozo
- Workbench: Sculpt fixes - Miguel Pozo
addon_utils
- addon_utils: don't print a traceback when the add-on isn't found - Campbell Barton
check_spelling
- check_spelling: correct line numbers for Python extraction - Campbell Barton
- check_spelling: include *.metal files - Campbell Barton
deps_builder
- deps_builder: Fix zlib URI - Ray Molenkamp
macOS
- macOS: update app icon to have dark rounded square background - Brecht Van Lommel
- macOS: update application icon - Francesco Siddi
17 Comments
Are there any plans to change how you delete materials etc.? Its very bad to work with the fake user stuff imo
Hi Pablo, any chance we see Animation Layers in the project animation 2025, or even before It?
Yes. code.blender.org/2023/07/animation-workshop-june-2023/
Please add "Pie menus Next" for upcoming blender, itcan add upto 60 function in a single key and combined with context window possibilities are endless you can see the sample here: youtube.com/watch . Also enable import of USDZ file... some software use that format.
Hey pablo, Very thanks for blender team..................... you are bringing a precious gift to the community..............
Requesting tutorials "platform"
Hello Pablo, I have a question about experimental settings. Why are they hidden when beta is reached? They are still in the code and can be enabled with a python command. The experimental settings tab is already hidden by default, so why go out of the way to hide the individual settings? It's annoying for people who want to keep using them during beta and release.
Hey Pablo, I love the new update for the Modifier List. What do you think about the idea of adding a "Quick Favorites" shortcut menu when the mouse is hovering over the properties panel/modifier window to press "Q" and see your favorite/or most used modifiers to quick-click to add?
I think this would be a great addition to avoid the need to "type" in your search for a particular modifier.
Have a great day!
Hey Pablo, I've been using blender mostly for vfx work the past weeks and something very annoying I've come across is that the switch node in the compositor does allow dynamically setting the on/of setting. In fact the compositor doesn't really work with boolean operations at all, it seems. What I wanted to achieve is to switch between different compositing setups based on the frame. I could work around this by using the mix node with values of 0 and 1 but that processes both branches anyways, resulting in it being A LOT slower.
I was wondering if this is a limitation (can't be done) or more like an oversight/time-issue (could be done) and if it has been considered. Thanks for your time! Have a nice day!
Hola Pablo!
A request that was made multiple times through the years is differentiating how linked duplicates/instances look in the Outliner. Even though we can see if an object is instanced/linked in its properties, I think being able to see it at a glance in the Outliner would be extremely useful. These are a couple of proposals that I liked: blender.community/c/rightclickselect/Btcbbc/ blender.community/c/rightclickselect/Z8Pv/
Cheers!
Hallo Pablo,
Nice show, I always enjoy them. I was wondering if Node Wrangler actions will be more integrated into Blender 4.0. All tutorials begin with enabling it, so newcomers may not have a smooth initial experience. It's challenging to grab the little dot, and it often results in stretching the node.
Also, I have another question. Do you know if Andy Goralczyk and Simon Thommes have released the audiovisual show blendfile from BCON 2022?
Have a great day!
Hello Pablo!
Panels in BSDF looks good, but fonts looks similar in headers and in sockets. It would be nice if it stood out somehow, like uppercase.
Hello Pablo! I hope you're having a good day :)
I hope you're excited for bcon! Is there anything in particular you are looking forward to? Or what is your favorite part?
I hear rumors that there is going to be a bcon west/bcon LA. Is there anything information you can share on that? Being from North America I'm extremely excited for a conference close to home.
cgcookie.com/p/bconla24
Hey Pablo! Exited about 4.0! I would like to ask are there any plans to improve the Weight painting mode? For example being able to switch what armature I am working on by clicking similar shortcut like alt+q in sculpt mode or the draw brushes (Add, Subtract, Mix) being a separate buttons? (Also like the brushes in sculpt mode)
Oi, Pablo! Great job on the pet project- both you and the rest of the team! I still have no clue how you managed some of that animation- and I even got to play with some files!
I've gotta say, with the whole Unity debacle (it's directly affected me and my lead dev), people are taking a new look at open source all throughout the community, and that means Blender. We're getting a whole lot of new comments from various places, and it seems animation and rigging tools are definitely the highest priority, followed directly by texture baking and painting. (we've really gotta move away from the current texture nodes+UV editor bake system)
If you could simply have a bone envelope editor (think of a capsule with an outer capsule layer for falloff), and selection for default rigging envelope shapes (like capsule+nearest for limbs, or spot adjustment for, like, cheeks), it would be great. let's get some nondestructive rigging systems!
We've seen lots of adjustments for curves, but things like newer bone envelope techniques, dedicated muscle deformers/wrinkle maps and soft body that respects internal points might be worth looking at, too. so many solvers to update aaaaaaaaa-
(I meant "simply", as "simple for users". I'm aware this is probably a pretty hefty idea, from a code standpoint!)