Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'release/scripts')
m---------release/scripts/addons0
-rw-r--r--release/scripts/freestyle/modules/parameter_editor.py2
-rw-r--r--release/scripts/presets/keyconfig/keymap_data/blender_default.py4
-rw-r--r--release/scripts/presets/keyconfig/keymap_data/industry_compatible_data.py4
-rw-r--r--release/scripts/startup/bl_operators/assets.py10
-rw-r--r--release/scripts/startup/bl_operators/wm.py2
-rw-r--r--release/scripts/startup/bl_ui/properties_data_camera.py8
-rw-r--r--release/scripts/startup/bl_ui/space_dopesheet.py34
-rw-r--r--release/scripts/startup/bl_ui/space_filebrowser.py12
-rw-r--r--release/scripts/startup/bl_ui/space_nla.py17
-rw-r--r--release/scripts/startup/bl_ui/space_node.py5
-rw-r--r--release/scripts/startup/bl_ui/space_sequencer.py20
-rw-r--r--release/scripts/startup/bl_ui/space_toolsystem_toolbar.py7
-rw-r--r--release/scripts/startup/bl_ui/space_topbar.py2
-rw-r--r--release/scripts/startup/bl_ui/space_userpref.py30
-rw-r--r--release/scripts/startup/bl_ui/space_view3d_toolbar.py4
-rw-r--r--release/scripts/startup/nodeitems_builtins.py14
17 files changed, 106 insertions, 69 deletions
diff --git a/release/scripts/addons b/release/scripts/addons
-Subproject f2a08d80ccd3c13af304525778df3905f95bd44
+Subproject b3c179b2869d86c44a4b29e2c638ce2a596a820
diff --git a/release/scripts/freestyle/modules/parameter_editor.py b/release/scripts/freestyle/modules/parameter_editor.py
index 65eee93c871..ed5b57af689 100644
--- a/release/scripts/freestyle/modules/parameter_editor.py
+++ b/release/scripts/freestyle/modules/parameter_editor.py
@@ -166,7 +166,7 @@ class ScalarBlendModifier(StrokeShader):
v1 = facm * v1 + fac * v1 / v2 if v2 != 0.0 else v1
elif self.blend_type == 'DIFFERENCE':
v1 = facm * v1 + fac * abs(v1 - v2)
- elif self.blend_type == 'MININUM':
+ elif self.blend_type == 'MINIMUM':
v1 = min(fac * v2, v1)
elif self.blend_type == 'MAXIMUM':
v1 = max(fac * v2, v1)
diff --git a/release/scripts/presets/keyconfig/keymap_data/blender_default.py b/release/scripts/presets/keyconfig/keymap_data/blender_default.py
index dbc93cb6caa..543742709ef 100644
--- a/release/scripts/presets/keyconfig/keymap_data/blender_default.py
+++ b/release/scripts/presets/keyconfig/keymap_data/blender_default.py
@@ -2147,7 +2147,7 @@ def km_file_browser(params):
("file.next", {"type": 'RIGHT_ARROW', "value": 'PRESS', "alt": True}, None),
# The two refresh operators have polls excluding each other (so only one is available depending on context).
("file.refresh", {"type": 'R', "value": 'PRESS'}, None),
- ("file.asset_library_refresh", {"type": 'R', "value": 'PRESS'}, None),
+ ("asset.library_refresh", {"type": 'R', "value": 'PRESS'}, None),
("file.parent", {"type": 'P', "value": 'PRESS'}, None),
("file.previous", {"type": 'BACK_SPACE', "value": 'PRESS'}, None),
("file.next", {"type": 'BACK_SPACE', "value": 'PRESS', "shift": True}, None),
@@ -7557,7 +7557,7 @@ def km_sequencer_editor_tool_generic_select(params, *, fallback):
params, "sequencer.select", "sequencer.cursor_set", extend="toggle")),
*([] if (not params.use_fallback_tool_rmb) else _template_sequencer_preview_select(
- type=params.select_mouse, value=params.select_mouse_value_fallback, legacy=params.legacy)),
+ type=params.select_mouse, value=params.select_mouse_value, legacy=params.legacy)),
# Ignored for preview.
*_template_items_change_frame(params),
]},
diff --git a/release/scripts/presets/keyconfig/keymap_data/industry_compatible_data.py b/release/scripts/presets/keyconfig/keymap_data/industry_compatible_data.py
index 37cd554e872..3019322d340 100644
--- a/release/scripts/presets/keyconfig/keymap_data/industry_compatible_data.py
+++ b/release/scripts/presets/keyconfig/keymap_data/industry_compatible_data.py
@@ -1229,7 +1229,7 @@ def km_file_browser(params):
("file.next", {"type": 'RIGHT_ARROW', "value": 'PRESS', "ctrl": True}, None),
# The two refresh operators have polls excluding each other (so only one is available depending on context).
("file.refresh", {"type": 'R', "value": 'PRESS', "ctrl": True}, None),
- ("file.asset_library_refresh", {"type": 'R', "value": 'PRESS', "ctrl": True}, None),
+ ("asset.library_refresh", {"type": 'R', "value": 'PRESS', "ctrl": True}, None),
("file.previous", {"type": 'BACK_SPACE', "value": 'PRESS'}, None),
("file.next", {"type": 'BACK_SPACE', "value": 'PRESS', "shift": True}, None),
("wm.context_toggle", {"type": 'H', "value": 'PRESS'},
@@ -1276,7 +1276,7 @@ def km_file_browser_main(params):
("file.mouse_execute", {"type": 'LEFTMOUSE', "value": 'DOUBLE_CLICK'}, None),
# The two refresh operators have polls excluding each other (so only one is available depending on context).
("file.refresh", {"type": 'R', "value": 'PRESS', "ctrl": True}, None),
- ("file.asset_library_refresh", {"type": 'R', "value": 'PRESS', "ctrl": True}, None),
+ ("asset.library_refresh", {"type": 'R', "value": 'PRESS', "ctrl": True}, None),
("file.select", {"type": 'LEFTMOUSE', "value": 'DOUBLE_CLICK'}, None),
("file.select", {"type": 'LEFTMOUSE', "value": 'CLICK'},
{"properties": [("open", False), ("deselect_all", True)]}),
diff --git a/release/scripts/startup/bl_operators/assets.py b/release/scripts/startup/bl_operators/assets.py
index 58f02201905..32e63f77b23 100644
--- a/release/scripts/startup/bl_operators/assets.py
+++ b/release/scripts/startup/bl_operators/assets.py
@@ -142,14 +142,8 @@ class ASSET_OT_open_containing_blend_file(Operator):
if returncode:
self.report({'WARNING'}, "Blender sub-process exited with error code %d" % returncode)
- # TODO(Sybren): Replace this with a generic "reload assets" operator
- # that can run outside of the Asset Browser context.
- if bpy.ops.file.refresh.poll():
- bpy.ops.file.refresh()
- if bpy.ops.asset.list_refresh.poll():
- bpy.ops.asset.list_refresh()
- if bpy.ops.file.asset_library_refresh.poll():
- bpy.ops.file.asset_library_refresh()
+ if bpy.ops.asset.library_refresh.poll():
+ bpy.ops.asset.library_refresh()
self.cancel(context)
return {'FINISHED'}
diff --git a/release/scripts/startup/bl_operators/wm.py b/release/scripts/startup/bl_operators/wm.py
index d9ea991f976..a2f482d1a55 100644
--- a/release/scripts/startup/bl_operators/wm.py
+++ b/release/scripts/startup/bl_operators/wm.py
@@ -2970,7 +2970,7 @@ class WM_MT_splash_quick_setup(Menu):
sub = row.row()
old_version = bpy.types.PREFERENCES_OT_copy_prev.previous_version()
if bpy.types.PREFERENCES_OT_copy_prev.poll(context) and old_version:
- sub.operator("preferences.copy_prev", text="Load %d.%d Settings" % old_version)
+ sub.operator("preferences.copy_prev", text=iface_("Load %d.%d Settings", "Operator") % old_version)
sub.operator("wm.save_userpref", text="Save New Settings")
else:
sub.label()
diff --git a/release/scripts/startup/bl_ui/properties_data_camera.py b/release/scripts/startup/bl_ui/properties_data_camera.py
index b56182bb637..edd0623d8fe 100644
--- a/release/scripts/startup/bl_ui/properties_data_camera.py
+++ b/release/scripts/startup/bl_ui/properties_data_camera.py
@@ -110,6 +110,14 @@ class DATA_PT_lens(CameraButtonsPanel, Panel):
sub = col.column(align=True)
sub.prop(ccam, "longitude_min", text="Longitude Min")
sub.prop(ccam, "longitude_max", text="Max")
+ elif ccam.panorama_type == 'FISHEYE_LENS_POLYNOMIAL':
+ col.prop(ccam, "fisheye_fov")
+ col.prop(ccam, "fisheye_polynomial_k0", text="K0")
+ col.prop(ccam, "fisheye_polynomial_k1", text="K1")
+ col.prop(ccam, "fisheye_polynomial_k2", text="K2")
+ col.prop(ccam, "fisheye_polynomial_k3", text="K3")
+ col.prop(ccam, "fisheye_polynomial_k4", text="K4")
+
elif engine in {'BLENDER_RENDER', 'BLENDER_EEVEE', 'BLENDER_WORKBENCH'}:
if cam.lens_unit == 'MILLIMETERS':
col.prop(cam, "lens")
diff --git a/release/scripts/startup/bl_ui/space_dopesheet.py b/release/scripts/startup/bl_ui/space_dopesheet.py
index 9b8f1cfeb0d..3c90e0c96cc 100644
--- a/release/scripts/startup/bl_ui/space_dopesheet.py
+++ b/release/scripts/startup/bl_ui/space_dopesheet.py
@@ -539,6 +539,39 @@ class DOPESHEET_MT_key_transform(Menu):
layout.operator("transform.transform", text="Scale").mode = 'TIME_SCALE'
+class DopesheetActionPanelBase:
+ bl_region_type = 'UI'
+ bl_label = "Action"
+
+ @classmethod
+ def draw_generic_panel(cls, context, layout, action):
+ layout.label(text=action.name, icon='ACTION')
+
+ layout.prop(action, "use_frame_range")
+
+ col = layout.column()
+ col.active = action.use_frame_range
+
+ row = col.row(align=True)
+ row.prop(action, "frame_start", text="Start")
+ row.prop(action, "frame_end", text="End")
+
+ col.prop(action, "use_cyclic")
+
+
+class DOPESHEET_PT_action(DopesheetActionPanelBase, Panel):
+ bl_space_type = 'DOPESHEET_EDITOR'
+ bl_category = "Item"
+
+ @classmethod
+ def poll(cls, context):
+ return bool(context.selected_visible_actions)
+
+ def draw(self, context):
+ action = context.selected_visible_actions[0]
+ self.draw_generic_panel(context, self.layout, action)
+
+
#######################################
# Grease Pencil Editing
@@ -792,6 +825,7 @@ classes = (
DOPESHEET_MT_snap_pie,
DOPESHEET_MT_view_pie,
DOPESHEET_PT_filters,
+ DOPESHEET_PT_action,
DOPESHEET_PT_gpencil_mode,
DOPESHEET_PT_gpencil_layer_masks,
DOPESHEET_PT_gpencil_layer_transform,
diff --git a/release/scripts/startup/bl_ui/space_filebrowser.py b/release/scripts/startup/bl_ui/space_filebrowser.py
index f601c795660..e33cf8d6cfb 100644
--- a/release/scripts/startup/bl_ui/space_filebrowser.py
+++ b/release/scripts/startup/bl_ui/space_filebrowser.py
@@ -404,7 +404,13 @@ class FILEBROWSER_PT_advanced_filter(Panel):
def is_option_region_visible(context, space):
- if not space.active_operator:
+ from bpy_extras.asset_utils import SpaceAssetInfo
+
+ if SpaceAssetInfo.is_asset_browser(space):
+ pass
+ # For the File Browser, there must be an operator for there to be options
+ # (irrelevant for the Asset Browser).
+ elif not space.active_operator:
return False
for region in context.area.regions:
@@ -701,7 +707,7 @@ class ASSETBROWSER_PT_metadata(asset_utils.AssetBrowserPanel, Panel):
asset_file_handle = context.asset_file_handle
if asset_file_handle is None:
- layout.label(text="No asset selected", icon='INFO')
+ layout.label(text="No active asset", icon='INFO')
return
asset_library_ref = context.asset_library_ref
@@ -793,7 +799,7 @@ class ASSETBROWSER_MT_context_menu(AssetBrowserMenu, Menu):
st = context.space_data
params = st.params
- layout.operator("file.asset_library_refresh")
+ layout.operator("asset.library_refresh")
layout.separator()
diff --git a/release/scripts/startup/bl_ui/space_nla.py b/release/scripts/startup/bl_ui/space_nla.py
index 9507d8296a9..62c02799a9f 100644
--- a/release/scripts/startup/bl_ui/space_nla.py
+++ b/release/scripts/startup/bl_ui/space_nla.py
@@ -22,6 +22,7 @@ from bpy.types import Header, Menu, Panel
from bpy.app.translations import contexts as i18n_contexts
from bl_ui.space_dopesheet import (
DopesheetFilterPopoverBase,
+ DopesheetActionPanelBase,
dopesheet_filter,
)
@@ -66,6 +67,21 @@ class NLA_PT_filters(DopesheetFilterPopoverBase, Panel):
DopesheetFilterPopoverBase.draw_standard_filters(context, layout)
+class NLA_PT_action(DopesheetActionPanelBase, Panel):
+ bl_space_type = 'NLA_EDITOR'
+ bl_category = "Strip"
+ bl_options = {'DEFAULT_CLOSED'}
+
+ @classmethod
+ def poll(cls, context):
+ strip = context.active_nla_strip
+ return strip and strip.type == 'CLIP' and strip.action
+
+ def draw(self, context):
+ action = context.active_nla_strip.action
+ self.draw_generic_panel(context, self.layout, action)
+
+
class NLA_MT_editor_menus(Menu):
bl_idname = "NLA_MT_editor_menus"
bl_label = ""
@@ -316,6 +332,7 @@ classes = (
NLA_MT_context_menu,
NLA_MT_channel_context_menu,
NLA_PT_filters,
+ NLA_PT_action,
)
if __name__ == "__main__": # only for live edit.
diff --git a/release/scripts/startup/bl_ui/space_node.py b/release/scripts/startup/bl_ui/space_node.py
index 2b3f0cfbf7c..9bf812e036d 100644
--- a/release/scripts/startup/bl_ui/space_node.py
+++ b/release/scripts/startup/bl_ui/space_node.py
@@ -719,8 +719,13 @@ class NODE_PT_overlay(Panel):
col.separator()
+ col.prop(overlay, "show_context_path", text="Context Path")
col.prop(snode, "show_annotation", text="Annotations")
+ if snode.tree_type == 'GeometryNodeTree':
+ col.separator()
+ col.prop(overlay, "show_timing", text="Timings")
+
class NODE_UL_interface_sockets(bpy.types.UIList):
def draw_item(self, context, layout, _data, item, icon, _active_data, _active_propname, _index):
diff --git a/release/scripts/startup/bl_ui/space_sequencer.py b/release/scripts/startup/bl_ui/space_sequencer.py
index 401ff9b64c2..a2ec5075a4d 100644
--- a/release/scripts/startup/bl_ui/space_sequencer.py
+++ b/release/scripts/startup/bl_ui/space_sequencer.py
@@ -41,7 +41,7 @@ def _space_view_types(st):
view_type = st.view_type
return (
view_type in {'SEQUENCER', 'SEQUENCER_PREVIEW'},
- view_type in {'PREVIEW', 'SEQUENCER_PREVIEW'},
+ view_type == 'PREVIEW',
)
@@ -196,10 +196,6 @@ class SEQUENCER_HT_header(Header):
row = layout.row(align=True)
row.prop(sequencer_tool_settings, "overlap_mode", text="")
- if st.view_type == 'SEQUENCER_PREVIEW':
- row = layout.row(align=True)
- row.prop(sequencer_tool_settings, "pivot_point", text="", icon_only=True)
-
if st.view_type in {'SEQUENCER', 'SEQUENCER_PREVIEW'}:
row = layout.row(align=True)
row.prop(tool_settings, "use_snap_sequencer", text="")
@@ -248,7 +244,8 @@ class SEQUENCER_MT_editor_menus(Menu):
layout.menu("SEQUENCER_MT_strip")
- layout.menu("SEQUENCER_MT_image")
+ if st.view_type in {'SEQUENCER', 'PREVIEW'}:
+ layout.menu("SEQUENCER_MT_image")
class SEQUENCER_PT_gizmo_display(Panel):
@@ -576,10 +573,6 @@ class SEQUENCER_MT_select(Menu):
st = context.space_data
has_sequencer, has_preview = _space_view_types(st)
- # FIXME: this doesn't work for both preview + window region.
- if has_preview:
- layout.operator_context = 'INVOKE_REGION_PREVIEW'
-
layout.operator("sequencer.select_all", text="All").action = 'SELECT'
layout.operator("sequencer.select_all", text="None").action = 'DESELECT'
layout.operator("sequencer.select_all", text="Invert").action = 'INVERT'
@@ -821,7 +814,6 @@ class SEQUENCER_MT_strip_transform(Menu):
else:
layout.operator_context = 'INVOKE_REGION_WIN'
- # FIXME: mixed preview/sequencer views.
if has_preview:
layout.operator("transform.translate", text="Move")
layout.operator("transform.rotate", text="Rotate")
@@ -917,12 +909,6 @@ class SEQUENCER_MT_strip(Menu):
st = context.space_data
has_sequencer, has_preview = _space_view_types(st)
- # FIXME: this doesn't work for both preview + window region.
- if has_preview:
- layout.operator_context = 'INVOKE_REGION_PREVIEW'
- else:
- layout.operator_context = 'INVOKE_REGION_WIN'
-
layout.menu("SEQUENCER_MT_strip_transform")
layout.separator()
diff --git a/release/scripts/startup/bl_ui/space_toolsystem_toolbar.py b/release/scripts/startup/bl_ui/space_toolsystem_toolbar.py
index 2253dfa5f5d..889155f1858 100644
--- a/release/scripts/startup/bl_ui/space_toolsystem_toolbar.py
+++ b/release/scripts/startup/bl_ui/space_toolsystem_toolbar.py
@@ -3153,14 +3153,7 @@ class SEQUENCER_PT_tools_active(ToolSelectPanelHelper, Panel):
],
'SEQUENCER_PREVIEW': [
*_tools_select,
- _defs_sequencer_generic.cursor,
None,
- _defs_sequencer_generic.translate,
- _defs_sequencer_generic.rotate,
- _defs_sequencer_generic.scale,
- _defs_sequencer_generic.transform,
- None,
- _defs_sequencer_generic.sample,
*_tools_annotate,
None,
_defs_sequencer_generic.blade,
diff --git a/release/scripts/startup/bl_ui/space_topbar.py b/release/scripts/startup/bl_ui/space_topbar.py
index 518979a5ef3..3137ac43549 100644
--- a/release/scripts/startup/bl_ui/space_topbar.py
+++ b/release/scripts/startup/bl_ui/space_topbar.py
@@ -588,7 +588,7 @@ class TOPBAR_MT_edit(Menu):
layout.separator()
- layout.operator("ed.undo_history", text="Undo History...")
+ layout.menu("TOPBAR_MT_undo_history")
layout.separator()
diff --git a/release/scripts/startup/bl_ui/space_userpref.py b/release/scripts/startup/bl_ui/space_userpref.py
index 5032256e4d1..6dbb964e771 100644
--- a/release/scripts/startup/bl_ui/space_userpref.py
+++ b/release/scripts/startup/bl_ui/space_userpref.py
@@ -596,9 +596,11 @@ class USERPREF_PT_system_cycles_devices(SystemPanel, CenterAlignMixIn, Panel):
@classmethod
def poll(cls, _context):
- # No GPU rendering on macOS currently.
+ # No GPU rendering on macOS x86_64 currently.
+ import platform
import sys
- return bpy.app.build_options.cycles and sys.platform != "darwin"
+ return bpy.app.build_options.cycles and \
+ (sys.platform != "darwin" or platform.machine() == "arm64")
def draw_centered(self, context, layout):
prefs = context.preferences
@@ -1818,7 +1820,7 @@ class USERPREF_PT_addons(AddOnPanel, Panel):
bl_options = {'HIDE_HEADER'}
_support_icon_mapping = {
- 'OFFICIAL': 'FILE_BLEND',
+ 'OFFICIAL': 'BLENDER',
'COMMUNITY': 'COMMUNITY',
'TESTING': 'EXPERIMENTAL',
}
@@ -1868,11 +1870,6 @@ class USERPREF_PT_addons(AddOnPanel, Panel):
if p
)
- # Development option for 2.8x, don't show users bundled addons
- # unless they have been updated for 2.8x.
- # Developers can turn them on with '--debug'
- show_official_27x_addons = bpy.app.debug
-
# collect the categories that can be filtered on
addons = [
(mod, addon_utils.module_bl_info(mod))
@@ -1949,15 +1946,6 @@ class USERPREF_PT_addons(AddOnPanel, Panel):
):
continue
- # Skip 2.7x add-ons included with Blender, unless in debug mode.
- is_addon_27x = info.get("blender", (0,)) < (2, 80)
- if (
- is_addon_27x and
- (not show_official_27x_addons) and
- (not mod.__file__.startswith(addon_user_dirs))
- ):
- continue
-
# Addon UI Code
col_box = col.column()
box = col_box.box()
@@ -1980,13 +1968,7 @@ class USERPREF_PT_addons(AddOnPanel, Panel):
sub.active = is_enabled
sub.label(text="%s: %s" % (info["category"], info["name"]))
- # WARNING: 2.8x exception, may be removed
- # use disabled state for old add-ons, chances are they are broken.
- if is_addon_27x:
- sub.label(text="Upgrade to 2.8x required")
- sub.label(icon='ERROR')
- # Remove code above after 2.8x migration is complete.
- elif info["warning"]:
+ if info["warning"]:
sub.label(icon='ERROR')
# icon showing support level.
diff --git a/release/scripts/startup/bl_ui/space_view3d_toolbar.py b/release/scripts/startup/bl_ui/space_view3d_toolbar.py
index acc3d933b85..01850676519 100644
--- a/release/scripts/startup/bl_ui/space_view3d_toolbar.py
+++ b/release/scripts/startup/bl_ui/space_view3d_toolbar.py
@@ -689,7 +689,9 @@ class VIEW3D_PT_tools_brush_stroke_smooth_stroke(Panel, View3DPaintPanel, Smooth
class VIEW3D_PT_tools_weight_gradient(Panel, View3DPaintPanel):
- bl_context = ".weightpaint" # dot on purpose (access from topbar)
+ # dont give context on purpose to not show this in the generic header toolsettings
+ # this is added only in the gradient tool's ToolDef
+ #bl_context = ".weightpaint" # dot on purpose (access from topbar)
bl_label = "Falloff"
bl_options = {'DEFAULT_CLOSED'}
diff --git a/release/scripts/startup/nodeitems_builtins.py b/release/scripts/startup/nodeitems_builtins.py
index 34f447a7108..c8ddd86a195 100644
--- a/release/scripts/startup/nodeitems_builtins.py
+++ b/release/scripts/startup/nodeitems_builtins.py
@@ -111,13 +111,13 @@ def curve_node_items(context):
yield NodeItem("GeometryNodeTrimCurve")
yield NodeItemCustom(draw=lambda self, layout, context: layout.separator())
yield NodeItem("GeometryNodeInputCurveHandlePositions")
- yield NodeItem("GeometryNodeCurveParameter")
yield NodeItem("GeometryNodeInputTangent")
yield NodeItem("GeometryNodeInputCurveTilt")
yield NodeItem("GeometryNodeCurveEndpointSelection")
yield NodeItem("GeometryNodeCurveHandleTypeSelection")
yield NodeItem("GeometryNodeInputSplineCyclic")
yield NodeItem("GeometryNodeSplineLength")
+ yield NodeItem("GeometryNodeSplineParameter")
yield NodeItem("GeometryNodeInputSplineResolution")
yield NodeItemCustom(draw=lambda self, layout, context: layout.separator())
yield NodeItem("GeometryNodeSetCurveRadius")
@@ -141,6 +141,7 @@ def mesh_node_items(context):
yield NodeItem("GeometryNodeLegacySubdivisionSurface", poll=geometry_nodes_legacy_poll)
yield NodeItemCustom(draw=lambda self, layout, context: layout.separator())
+ yield NodeItem("GeometryNodeDualMesh")
yield NodeItem("GeometryNodeMeshBoolean")
yield NodeItem("GeometryNodeMeshToCurve")
yield NodeItem("GeometryNodeMeshToPoints")
@@ -149,7 +150,13 @@ def mesh_node_items(context):
yield NodeItem("GeometryNodeSubdivisionSurface")
yield NodeItem("GeometryNodeTriangulate")
yield NodeItemCustom(draw=lambda self, layout, context: layout.separator())
+ yield NodeItem("GeometryNodeInputMeshEdgeNeighbors")
+ yield NodeItem("GeometryNodeInputMeshEdgeVertices")
+ yield NodeItem("GeometryNodeInputMeshFaceArea")
+ yield NodeItem("GeometryNodeInputMeshFaceNeighbors")
+ yield NodeItem("GeometryNodeInputMeshIsland")
yield NodeItem("GeometryNodeInputShadeSmooth")
+ yield NodeItem("GeometryNodeInputMeshVertexNeighbors")
yield NodeItemCustom(draw=lambda self, layout, context: layout.separator())
yield NodeItem("GeometryNodeSetShadeSmooth")
@@ -169,6 +176,7 @@ def geometry_node_items(context):
yield NodeItem("GeometryNodeBoundBox")
yield NodeItem("GeometryNodeConvexHull")
yield NodeItem("GeometryNodeDeleteGeometry")
+ yield NodeItem("GeometryNodeGeometryToInstance")
yield NodeItem("GeometryNodeProximity")
yield NodeItem("GeometryNodeJoinGeometry")
yield NodeItem("GeometryNodeRaycast")
@@ -207,6 +215,7 @@ def geometry_input_node_items(context):
yield NodeItem("GeometryNodeInputNormal")
yield NodeItem("GeometryNodeInputPosition")
yield NodeItem("GeometryNodeInputRadius")
+ yield NodeItem("GeometryNodeInputSceneTime")
# Custom Menu for Material Nodes
def geometry_material_node_items(context):
@@ -675,6 +684,7 @@ geometry_node_categories = [
NodeItem("GeometryNodeAttributeRemove", poll=geometry_nodes_legacy_poll),
NodeItem("GeometryNodeCaptureAttribute"),
+ NodeItem("GeometryNodeAttributeDomainSize"),
NodeItem("GeometryNodeAttributeStatistic"),
NodeItem("GeometryNodeAttributeTransfer"),
]),
@@ -749,7 +759,7 @@ geometry_node_categories = [
NodeItem("ShaderNodeMath"),
NodeItem("FunctionNodeBooleanMath"),
NodeItem("FunctionNodeRotateEuler"),
- NodeItem("FunctionNodeCompareFloats"),
+ NodeItem("FunctionNodeCompare"),
NodeItem("FunctionNodeFloatToInt"),
NodeItem("GeometryNodeSwitch"),
NodeItem("FunctionNodeRandomValue"),