GPv3_ images and text updates #104991

Merged
Matias Mendiola merged 5 commits from mendio/blender-manual:GPv3-updates into main 2024-10-25 20:13:19 +02:00
90 changed files with 692 additions and 595 deletions
Showing only changes of commit 52c0402bda - Show all commits

View File

@ -1,15 +1,15 @@
.. index:: Compositor Nodes; Color Space .. index:: Compositor Nodes; Color Space
.. _bpy.types.CompositorNodeConvertColorSpace: .. _bpy.types.CompositorNodeConvertColorSpace:
**************** ***********************
Color Space Node Convert Colorspace Node
**************** ***********************
.. figure:: /images/compositing_node-types_CompositorNodeConvertColorSpace.webp .. figure:: /images/compositing_node-types_CompositorNodeConvertColorSpace.webp
:align: right :align: right
:alt: Color Space Node. :alt: Color Space Node.
The *Color Space Node* converts images between :term:`color spaces <Color Space>`. The *Convert Colorspace* node converts images between :term:`color spaces <Color Space>`.
.. note:: .. note::
@ -28,7 +28,7 @@ Properties
========== ==========
From, To From, To
The color space of the input image and the color space to convert the image to. The color space of the input image and the color space to convert it to.
The list of color spaces depends on the active :ref:`OCIO config <ocio-config>`. The list of color spaces depends on the active :ref:`OCIO config <ocio-config>`.
The default supported color spaces are described in detail here: The default supported color spaces are described in detail here:

View File

@ -9,40 +9,35 @@ Alpha Over Node
:align: right :align: right
:alt: Alpha Over Node. :alt: Alpha Over Node.
The *Alpha Over* node is used to layer images on top of one another. The *Alpha Over* node is used to layer an image on top of another with alpha blending.
Where the foreground image pixels have an alpha greater than 0, it will be overlaid over the background image.
Inputs Inputs
====== ======
Factor Factor
Controls the transparency of the foreground image. The alpha of the foreground image, going from 0 (fully transparent) to 1 (fully opaque).
A factor less than 1 will make the foreground more transparent.
Image Image
Input for the *background* image. The background image.
Image Image
Input for the *foreground* image. The foreground image.
Properties Properties
========== ==========
Convert Premultiplied Convert Premultiplied
Converts foreground image to :term:`Premultiplied Alpha` format. The *Alpha Over* node expects the foreground image to use :term:`Premultiplied Alpha`.
If it uses :term:`Straight Alpha` instead, you can enable this checkbox to convert it.
The *Alpha Over* node is designed to work with premultiplied alpha color format. Premultiplied
Use this checkbox when you know that your image has :term:`Straight Alpha` color values, Interpolate between :term:`Premultiplied Alpha` and :term:`Straight Alpha`.
to perform the correct over operation. Result will still be premultiplied alpha.
Premultiply When set to 1, the foreground color values will be multiplied by the alpha;
Mix between using :term:`Premultiplied Alpha` or :term:`Straight Alpha`.
When set to 1, the foreground color values will be multiplied by alpha, i.e. premultiplied;
this is equivalent to enabling *Convert Premultiplied*. this is equivalent to enabling *Convert Premultiplied*.
When set to 0, color values does not change. When set to 0, the color values do not change.
If *Premultiply* is not zero, *Convert Premultiplied* will be ignored. If *Premultiplied* is not zero, *Convert Premultiplied* will be ignored.
.. note:: This is a legacy option. .. note:: This is a legacy option.
@ -51,7 +46,7 @@ Outputs
======= =======
Image Image
Standard color output. The blended result.
Examples Examples
@ -60,8 +55,9 @@ Examples
Overlay Overlay
------- -------
In the node tree below, *Color Ramp* node is used to add an alpha channel to the black-and-white swirl image. In the node tree below, the :doc:`/compositing/types/color/color_ramp` is used to convert an opaque,
Then *Alpha Over* node is used to overlay it on top of another image. grayscale swirl image to a red one with transparency. Then, the *Alpha Over* node is used to overlay
it on top of another image.
.. figure:: /images/compositing_types_converter_color-ramp_create-alpha-mask.png .. figure:: /images/compositing_types_converter_color-ramp_create-alpha-mask.png
:width: 600px :width: 600px
@ -72,15 +68,11 @@ Then *Alpha Over* node is used to overlay it on top of another image.
Fade In Fade In
------- -------
In the next example, the *Factor* is used to make a "Fade In" effect. The example below uses the :doc:`/compositing/types/input/scene/time_curve` to gradually increase the
This effect can be animated by adding a *Time* node inputted in the *Factor* socket as shown below. *Alpha Over* node's *Factor* from 0 to 1 over the course of 30 frames. This will result in the text
Over the course of 30 frames, the *Alpha Over* node outputs an image that fading in on top of the background image.
starts with the pure background image, and the title slowly appearing.
.. figure:: /images/compositing_types_color_alpha-over_example.png .. figure:: /images/compositing_types_color_alpha-over_example.png
:width: 600px :width: 600px
Animated fade in effect using Alpha Over. Animated fade in effect using Alpha Over.
Note the *Convert Premultiply* checkbox is enabled,
since as the foreground used a PNG image that has straight alpha.

View File

@ -9,49 +9,64 @@ Dilate/Erode Node
:align: right :align: right
:alt: Dilate/Erode Node. :alt: Dilate/Erode Node.
The *Dilate/Erode node* expands and shrinks masks, using a morphological operator. Expands or shrinks a mask using a morphological operator.
Inputs Inputs
====== ======
Mask Mask
Single color channel (or a black-and-white image) input. A grayscale image.
Properties Properties
========== ==========
Mode Mode
Step, Threshold, Distance, Feather Steps
Sets each pixel to the maximum (for dilation) or minimum (for erosion) value that's found
within a square surrounding it. This approach keeps the original gray levels and is best
suited for masks that contain sharp corners; rounded shapes such as circles will look more
square-like in the output.
Despite the name, this is not an iterative process; the dilation/erosion is only performed
once regardless of the chosen *Distance*.
Threshold
Makes all the pixels fully black or white depending on whether they're darker or brighter
than 50% gray. Then, sets each pixel to the maximum (for dilation) or minimum
(for erosion) value that's found within a circle surrounding it. This approach loses the
original gray levels. Shape wise, it's well-suited for masks that contain rounded corners;
sharp ones will be rounded off.
Distance Distance
The Distance is the filter radius. Sets each pixel to the maximum (for dilation) or minimum (for erosion) value that's found
A positive value of Distance dilates (expands) the influence of a pixel on its surrounding pixels. within a circle surrounding it. This approach preserves the original gray levels and
A negative value erodes (shrinks) its influence. is well-suited for masks that contain rounded corners.
Feather
Blurs the image.
Distance
The size of the surrounding area to look at for each pixel; or in other words, how much to
dilate (for positive values) or erode (for negative values) the mask.
Edge Edge
Edge to inset. For the *Threshold* mode, determines how much to blur the edges after dilation/erosion.
.. TODO2.8 Explain.
Falloff Falloff
Falloff type the feather. For the *Feather* mode, determines the brightness curve of the blurred edges.
.. TODO2.8 Explain.
Outputs Outputs
======= =======
Mask Mask
The filtered mask output. The resulting mask.
Example Example
======= =======
In this example, we wanted to take the rather boring array of ball bearings and In the image below, notice that:
add some variation to it. So, we dilated the red and eroded the green, leaving the blue alone.
If we had dilated both red and green... (hint: red and green make yellow). * The light gray disk has turned white and the dark gray rectangle has turned black
The amount of influence is increased by increasing the *Distance* values. because of the *Threshold* mode.
`Blend-file available here <https://archive.blender.org/wiki/2015/uploads/5/51/Derotest.blend>`__. * The shapes have become thicker -- dilated because of the positive *Distance*.
* The shapes appear blurred because of the positive *Edge*.
.. figure:: /images/compositing_types_filter_dilate-erode_example.png .. figure:: /images/compositing_types_filter_dilate-erode_example.png

View File

@ -4,10 +4,7 @@
Asset Browser Asset Browser
************* *************
This section describes the *Asset Browser*, which is the main interface for organizing and using assets. The *Asset Browser* is the main interface for organizing and using assets.
The Asset Browser was introduced in Blender 3.0, and will be improved and
expanded over multiple upcoming releases.
.. seealso:: .. seealso::
@ -34,49 +31,62 @@ Interface
Main Region Main Region
----------- -----------
The main region of the Asset Browser acts similar to the :doc:`/editors/file_browser` built into Blender. The center region of the Asset Browser lists the assets contained in the selected catalog.
It shows the assets contained in the selected catalog.
Click an asset to select and activate it. Box select by dragging :kbd:`LMB` or Click :kbd:`LMB` to select a single asset. Additionally hold :kbd:`Ctrl` to add/remove that asset
extend the selection with :kbd:`Shift-LMB` to select multiple assets. to/from the selection, or :kbd:`Shift` to select a range of assets. You can also drag :kbd:`LMB`
Every asset has a context menu. to perform a box select.
The region has a context menu with the following operations:
Source List Region Refresh Asset Library :kbd:`R`
------------------ Refreshes the list.
Clear Asset
See :ref:`bpy.ops.asset.clear`.
Clear Asset (Set Fake User)
See :ref:`assets-clear-set-fake-user`.
Open Blend File
Opens the blend-file containing the asset.
Display Size
Changes the size of the preview thumbnails.
The Source List region can be used for navigating and `Using Assets`_. Asset Library Region
--------------------
The region on the left lets you select an asset library and shows its catalogs.
You can show/hide this region by pressing :kbd:`T`.
.. _bpy.types.FileAssetSelectParams.asset_library_reference: .. _bpy.types.FileAssetSelectParams.asset_library_reference:
Asset Library Asset Library
Shows the active :doc:`asset library </files/asset_libraries/index>`, The :doc:`asset library </files/asset_libraries/introduction>` whose catalogs to show.
and allows switching between asset libraries.
:All Libraries: Show assets from all of the listed asset libraries. :All Libraries: Show catalogs from all available libraries.
:Current File: :Current File:
Show the assets currently available in this Blender session, Show the catalogs in the current blend-file (even if that file is not yet part of
regardless of whether it is part of an asset library or not. an asset library). See :ref:`asset-library-current-file` for more information.
See :ref:`asset-library-current-file` for more information. :Essentials: Show the catalogs that come bundled with Blender.
:Essentials: Show the basic building blocks and utilities coming with Blender.
Any libraries that you added in the :ref:`File Path Preferences <bpy.types.UserAssetLibrary>`
are listed here too.
.. _bpy.ops.asset.bundle_install: .. _bpy.ops.asset.bundle_install:
Copy Asset Bundle to Library Copy Bundle to Asset Library
Shown when the Library selector is set to Current File, Shown when *Asset Library* is set to *Current File* and the current blend-file is an
the current blend-file file is considered an :ref:`Asset Bundle <asset-bundles>`, :ref:`asset bundle <asset-bundles>` that's not yet part of an asset library.
and is not yet located inside any asset library.
The Copy Asset Bundle operator makes it simple to copy the file into the asset library. Lets you select a target asset library, then opens a File Browser in that library's root
The catalogs of the asset bundle will be merged into the asset library. folder so you can save the current blend-file there. Once saved, the assets in the blend-file
become available as part of the library.
Catalog Catalogs
Tree view that shows the :doc:`catalogs </files/asset_libraries/catalogs>` of the active asset library. Tree view that shows the :doc:`catalogs </files/asset_libraries/catalogs>` of the selected
Selecting a catalog limits shown assets to assets only from the selected library. asset library. A catalog is a group of assets; when you select one, only the assets in that
catalog and its child catalogs will be listed.
Catalogs can be renamed by double clicking on there name. You can rename a catalog by double-clicking it, or assign it to a different parent catalog
Catalogs can also be nested inside others by dragging and dropping one catalog into another. by dragging and dropping.
The "All" catalogs is built-in asset library that contains all other asset libraries.
Add-ons and features like the :doc:`/animation/armatures/posing/editing/pose_library` Add-ons and features like the :doc:`/animation/armatures/posing/editing/pose_library`
can show custom panels here. can show custom panels here.
@ -88,12 +98,13 @@ can show custom panels here.
Asset Details Region Asset Details Region
-------------------- --------------------
The Asset Details region on the right shows metadata of the active asset. The region on the right shows the metadata of the active asset.
**Only metadata of assets contained in the current blend-file can be edited**. You can show/hide this region by pressing :kbd:`N` or clicking the gear icon in the header.
*Only metadata of assets contained in the current blend-file can be edited*.
Name Name
The asset data-block name. This name is unique for the asset data type within The asset's name. Unique for the asset data type within the same blend-file.
the same blend-file.
.. _bpy.types.WindowManager.asset_path_dummy: .. _bpy.types.WindowManager.asset_path_dummy:
@ -103,14 +114,24 @@ Source
.. _bpy.ops.asset.open_containing_blend_file: .. _bpy.ops.asset.open_containing_blend_file:
Open Blend File Open Blend File
This button will start a new Blender instance and open the blend-file that contains the asset. Opens the blend-file that contains the asset in a new Blender instance.
In the background Blender will keep monitoring that new Blender instance; When this instance is closed, the Asset Browser will be automatically refreshed.
when it is quit, the Asset Browser will be refreshed to show any updated assets.
.. _bpy.types.AssetMetaData.license:
License
Optional name of the license under which this asset is distributed.
Not used by Blender itself.
.. _bpy.types.AssetMetaData.copyright:
Copyright
Optional copyright notice. Not used by Blender itself.
.. _bpy.types.AssetMetaData.description: .. _bpy.types.AssetMetaData.description:
Description Description
Optional field for the asset description. Not used by Blender itself. Optional asset description. Not used by Blender itself.
.. _bpy.types.AssetMetaData.author: .. _bpy.types.AssetMetaData.author:
@ -126,12 +147,12 @@ Shows the preview image of the asset. See :ref:`asset-previews`.
.. _bpy.ops.ed.lib_id_load_custom_preview: .. _bpy.ops.ed.lib_id_load_custom_preview:
Load Custom Preview Load Custom Preview
Opens a window with the File Browser to select an image for the asset preview. Opens a File Browser where you can select a new image for the asset preview.
.. _bpy.ops.ed.lib_id_generate_preview: .. _bpy.ops.ed.lib_id_generate_preview:
Generate Preview Generate Preview
Generate/update a preview for the asset. Autogenerate a new preview for the asset.
Preview Preview
Menu of additional preview operators. Menu of additional preview operators.
@ -139,8 +160,8 @@ Preview
.. _bpy.ops.ed.lib_id_generate_preview_from_object: .. _bpy.ops.ed.lib_id_generate_preview_from_object:
Render Active Object Render Active Object
Generates a preview by based on the 3D Viewport's :term:`Active` object. Generates a preview based on the 3D Viewport's :term:`Active` object.
This is useful for node groups, particularly for geometry nodes, This is useful for node groups,
which cannot automatically generate their own preview. which cannot automatically generate their own preview.
@ -152,8 +173,8 @@ Tags
^^^^ ^^^^
Panel for viewing and editing asset tags. Panel for viewing and editing asset tags.
These do not have any meaning to Blender, and can be chosen freely. These do not have any meaning to Blender and can be chosen freely.
When using the search field to filter the assets, those assets whose tags (partially) match When using the search field to filter the assets, the assets whose tags (partially) match
the search term will also be shown. the search term will also be shown.
.. note:: .. note::
@ -168,7 +189,7 @@ Using Assets
============ ============
As a general rule, **an asset can be used by dragging it from the Asset Browser to the desired location**. As a general rule, **an asset can be used by dragging it from the Asset Browser to the desired location**.
Objects and worlds can be dragged from the Asset Browser into the scene, Objects and worlds can be dragged from the Asset Browser into the scene.
Materials can be dragged onto the object that should use them. Materials can be dragged onto the object that should use them.
Geometry nodes can also be dragged onto objects to add a :doc:`/modeling/modifiers/generate/geometry_nodes`. Geometry nodes can also be dragged onto objects to add a :doc:`/modeling/modifiers/generate/geometry_nodes`.
The use of pose assets is different, and is described in :doc:`/animation/armatures/posing/editing/pose_library`. The use of pose assets is different, and is described in :doc:`/animation/armatures/posing/editing/pose_library`.
@ -180,19 +201,20 @@ depending on the following configuration of the Asset Browser:
Import Method Import Method
Determines how data is managed when an asset is imported. Determines how data is managed when an asset is imported.
This option can be found in the center of the Asset Browser header. This option can be found in the center of the Asset Browser header
(when an asset library other than *Current File* or *Essentials* is selected):
:Follow Preferences: Follow Preferences
Use the import method set in the Preferences. Use the import method set in the :ref:`File Path Preferences <bpy.types.UserAssetLibrary.import_method>`.
:Link: Link
*Same as* :menuselection:`File --> Link...` *Same as* :menuselection:`File --> Link...`
The asset will be linked to the current blend-file, and thus be read-only. The asset will be linked to the current blend-file, and thus be read-only.
Later changes to the asset file will be reflected in all files that link it in. Later changes to the asset file will be reflected in all files that link it.
:Append: Append
*Same as* :menuselection:`File --> Append...` *Same as* :menuselection:`File --> Append...`
All of the asset and all its dependencies will be appended to the current file. The asset and all its dependencies will be copied into the current file.
Dragging a material into the scene three times will result in three independent copies. Dragging a material into the scene three times will result in three independent copies.
Dragging an object into the scene three times will also result in three independent copies. Dragging an object into the scene three times will also result in three independent copies.
@ -202,11 +224,11 @@ Import Method
Since the file now has its own copy of the asset, later changes to Since the file now has its own copy of the asset, later changes to
the asset file will not be reflected in the file it's appended to. the asset file will not be reflected in the file it's appended to.
:Append (Reuse Data): Append (Reuse Data)
*Specific to the Asset Browser*. *Specific to the Asset Browser*.
The first time an asset is used, it will be appended, including its dependencies, The first time an asset is used, it will be appended, including its dependencies,
just like described previously. However, Blender will keep track of where it originated, just as described previously. However, Blender will keep track of where it originated,
and the next time the asset is used, as much data as possible will be reused. and the next time the asset is used, as much data as possible will be reused.
Dragging a material into the scene three times will only load it once, Dragging a material into the scene three times will only load it once,
and just assign the same material three times. and just assign the same material three times.
@ -224,8 +246,8 @@ Import Method
Some asset types such as collections can be created as an instanced collection. Some asset types such as collections can be created as an instanced collection.
This is done by enabling the *Instance* option after dragging collection assets into the 3D Viewport. This is done by enabling the *Instance* option after dragging collection assets into the 3D Viewport.
By enabling this option an empty object is added that uses an instance of the collection. By enabling this option, an empty object is added that uses an instance of the collection.
If this option is disabled then the full collection hierarchy will be added to the scene. If this option is disabled, the full collection hierarchy will be added to the scene.
Collection Assets from the current file will always be instanced. Collection Assets from the current file will always be instanced.
@ -248,16 +270,11 @@ Asset Previews
Preview panel in the Asset Browser. Preview panel in the Asset Browser.
Preview images are typically automatically generated when you Preview images are typically generated automatically when you :ref:`mark a data-block as an asset <bpy.ops.asset.mark>`.
:ref:`mark a data-block as asset <bpy.ops.asset.mark>`. The auto-generated Objects are captured from their local -Y axis, while collections are captured from the global -Y axis
preview tries to capture the object from the front. However this only works if (as these don't have a local axis).
the geometry is laid out so that it matches what Blender considers to be the
front. That is, the geometry that should be the front needs to point down the -Y
axis of the object. The rotation may have to be applied to get the expected
result. Collection assets use the global -Y axis as the front (instead of the
local one, as collections themselves don't have a rotation).
It's also possible to load image files from drive, to replace the auto-generated previews. If the auto-generated preview image isn't sufficient, you can replace it by a custom one.
For previews of pose assets, see :ref:`poselib-preview-images`. For previews of pose assets, see :ref:`poselib-preview-images`.
@ -274,10 +291,10 @@ files need to be :doc:`packed </files/blend/packed_data>` into the current blend
Asset bundles can be copied to an asset library via the :ref:`Asset Browser <bpy.ops.asset.bundle_install>`: Asset bundles can be copied to an asset library via the :ref:`Asset Browser <bpy.ops.asset.bundle_install>`:
- Open the asset bundle blend-file. - Open the asset bundle blend-file.
- Switch its Asset Browser to *Current File* (if it's not set at that already). - Switch its Asset Browser to *Current File* (if it's not set to that already).
- Click on *Copy Bundle to Asset Library*. - Click on *Copy Bundle to Asset Library*.
- Choose the asset library to copy it to. - Choose the asset library to copy it to.
- A File Browser will open, showing the files of the selected asset library. - A File Browser will open at the root folder of the selected asset library.
Choose the desired location of the blend-file, and click the *Copy to Asset Library* button. Choose the desired location of the blend-file, and click the *Copy to Asset Library* button.
- The blend-file will be saved at the chosen location, and any :doc:`catalogs </files/asset_libraries/catalogs>` of - The blend-file will be saved at the chosen location, and any :doc:`catalogs </files/asset_libraries/catalogs>` of
the asset bundle will be merged into the target asset library. the asset bundle will be merged into the target asset library.

View File

@ -140,6 +140,12 @@ Summary
Only Show Selected Only Show Selected
Only show keyframes belonging to objects/bones/... that are selected. Only show keyframes belonging to objects/bones/... that are selected.
.. note::
If this option is enabled, the Dope Sheet may not show all :doc:`material </render/materials/introduction>`
keyframes of the selected objects. Instead, it only shows the keyframes belonging to the selected nodes
in the :doc:`/editors/shader_editor`.
Show Hidden Show Hidden
Show keyframes from objects/bones/... that are hidden. Show keyframes from objects/bones/... that are hidden.
Only Show Errors Only Show Errors

View File

@ -8,23 +8,22 @@
File Browser File Browser
************ ************
The File Browser is used in all the file-related operations. These include: The File Browser is used in all file-related operations. These include:
- Opening and saving blend-files. - Opening and saving blend-files.
- Browsing inside other blend-files, when appending or linking data-blocks, - Browsing the content of other blend-files when appending or linking data-blocks
see :doc:`Linked Libraries </files/linked_libraries/index>`. (see :doc:`Linked Libraries </files/linked_libraries/index>`).
- Importing from/exporting to other file formats. - Importing from/exporting to other file formats.
- Picking new locations for existing file paths (images, videos, fonts...). - Updating the locations of previously imported media (images, videos, fonts...).
The most common way to use this editor is through modal operators (like opening or saving a blend-file). The most common way to use this editor is through modal operators (like opening or saving a blend-file).
The File Browser will appear in a new window, waiting for the operation to complete, The File Browser will appear in a new window, wait for you to select a file, and then close again.
and then close returning the main window.
You can use the File Browser as any other editor type, to browse through the file system. You can also use the File Browser like a regular, permanently visible editor. In fact,
The main purpose of this is to be able to drag-and-drop from the File Browser into other editors. the predefined Video Editing :doc:`workspace </interface/window_system/workspaces>` uses it this way.
This lets you drag-and-drop media from the browser straight into e.g. the
- Images into the :ref:`editors-3dview-index` (to set as background or apply as material texture). :doc:`3D Viewport </editors/3dview/introduction>` or the
- Media files into the :doc:`/video_editing/index`. :doc:`Video Sequencer </editors/video_sequencer/introduction>`, saving you some overhead.
.. figure:: /images/editors_file-browser_editor.png .. figure:: /images/editors_file-browser_editor.png
@ -37,12 +36,8 @@ Interface
Main Region Main Region
----------- -----------
The main region of the File Browser acts similar to the file browser built into you operating system. The main region lists files, folders, or blend-file contents.
The region contains an array of files, folders, or internal blend-file data in a grid or list of items. Hovering over an item will show a tooltip with extra information.
`Navigating`_, `selecting`_, and `editing`_ of these items works just as it would in your operating system's file
browser.
Hovering over items will show a tooltip with extra information about the file.
.. _file_browser-previews: .. _file_browser-previews:
@ -57,8 +52,8 @@ In its *Thumbnail* display mode, the File Browser supports many types of preview
- Blend-files - Blend-files
- Internal :doc:`Data-blocks </files/data_blocks>` - Internal :doc:`Data-blocks </files/data_blocks>`
In order to get previews for data-blocks, there previews must be generated. In order to get previews for data-blocks, these must first be generated.
See :doc:`Blend-files Previews </files/blend/previews>` for how to generate and manage Blender data previews. See :doc:`/files/blend/previews`.
.. figure:: /images/editors_file-browser_previews.png .. figure:: /images/editors_file-browser_previews.png
:align: center :align: center
@ -67,24 +62,24 @@ See :doc:`Blend-files Previews </files/blend/previews>` for how to generate and
The File Browser in *Thumbnail* mode. The File Browser in *Thumbnail* mode.
File Path Region Directory Region
---------------- ----------------
The File Path is above the main region and can aid in navigating and adjust how items are displayed. Above the file list, there's a textbox showing the current folder path, along with buttons for navigating.
.. _bpy.ops.file.previous: .. _bpy.ops.file.previous:
Previous Folder :kbd:`Backspace`, :kbd:`Alt-Left` Previous Folder :kbd:`Backspace`, :kbd:`Alt-Left`
Move to previous folder (in navigation history). Move to previous folder in navigation history.
.. _bpy.ops.file.next: .. _bpy.ops.file.next:
Next Folder :kbd:`Shift-Backspace`, :kbd:`Alt-Right` Next Folder :kbd:`Shift-Backspace`, :kbd:`Alt-Right`
Move to next folder (in navigation history). Move to next folder in navigation history.
.. _bpy.ops.file.parent: .. _bpy.ops.file.parent:
Parent File :kbd:`P`, :kbd:`Alt-Up` Parent Directory :kbd:`P`, :kbd:`Alt-Up`
Move up to parent directory. Move up to parent directory.
.. _bpy.ops.file.refresh: .. _bpy.ops.file.refresh:
@ -94,30 +89,29 @@ Refresh File List :kbd:`R`, :kbd:`NumpadPeriod`
.. _bpy.ops.file.directory_new: .. _bpy.ops.file.directory_new:
Create Directory :kbd:`I` Create New Directory :kbd:`I`
Will ask you to confirm and create a new directory inside current one, Create a new directory inside the current one.
scroll to it in the main view, and let you enter its name.
.. _bpy.types.FileSelectParams.directory: .. _bpy.types.FileSelectParams.directory:
File Path :kbd:`Ctrl-L` Directory :kbd:`Ctrl-L`
Text field for the current folder path. The current folder path.
:kbd:`Tab` will auto-complete an existing path. :kbd:`Tab` will auto-complete an existing path.
If you type a nonexistent directory path, you will be prompted to create that new directory. If you type a nonexistent path, you will be prompted to create it.
.. _bpy.types.FileSelectParams.filter_search: .. _bpy.types.FileSelectParams.filter_search:
Search :kbd:`Ctrl-F` Search :kbd:`Ctrl-F`
Filter items by name. Filter items by name.
The wildcard ``*`` will match anything, e.g. ``bl*er`` will match both ``blender`` and ``blogger``. The wildcard ``*`` will match anything, e.g. ``bl*er`` will match both ``blender`` and ``blogger``.
There is always an implicit wildcard at start and end of the search text, There is always an implicit wildcard at the start and end of the search text,
so ``blender`` will also match ``test_blender_file.blend``. so ``blender`` will also match ``test_blender_file.blend``.
This field can also be used to filter some specific file extension (e.g. ``.png`` will list all PNG files). This field can also be used to filter some specific file extension (e.g. ``.png`` will list all PNG files).
.. _bpy.types.FileSelectParams.display_type: .. _bpy.types.FileSelectParams.display_type:
Display Mode Display Mode
Controls how files are displayed. Control how files are displayed.
:Vertical List: Displays files and folders in a vertical list. :Vertical List: Displays files and folders in a vertical list.
:Horizontal List: Displays files and folders in a horizontal list. :Horizontal List: Displays files and folders in a horizontal list.
@ -129,18 +123,18 @@ Display Settings
.. _bpy.types.FileSelectParams.display_size: .. _bpy.types.FileSelectParams.display_size:
Display Size Size
The size of the thumbnails. The size of the thumbnails.
.. _bpy.types.FileSelectParams.recursion_level: .. _bpy.types.FileSelectParams.recursion_level:
Recursion Recursions
The number of directory levels to show at once in a flat way. The number of directory levels to show at once in a flat way.
:None: List only the current directory content. :None: List only the current directory's content.
:Blend File: List the whole content of a blend-file (only available when linking or appending data-blocks). :Blend File: List the whole content of a blend-file (only available when linking or appending data-blocks).
:One Levels: List all subdirectories' content, one level of recursion. :One Level: List all subdirectories' content, one level of recursion.
:Two Levels: List all subdirectories' content, two level of recursion. :Two Levels: List all subdirectories' content, two levels of recursion.
:Three Levels: List all subdirectories' content, three levels of recursion. :Three Levels: List all subdirectories' content, three levels of recursion.
.. hint:: .. hint::
@ -149,14 +143,12 @@ Recursion
even if you have arranged them in a nice set of directories to avoid having hundreds of even if you have arranged them in a nice set of directories to avoid having hundreds of
files in a single place. files in a single place.
In the *Append/Link* case, showing the content of the whole blend-file will allow you In the *Append/Link* case, showing the content of the whole blend-file lets you
to link different types of data-blocks in a single operation. link different types of data-blocks in a single operation.
.. warning:: .. warning::
The more levels you show at once, the more time it will take to list them all The more levels you show at once, the more time it will take to list them all.
(typically, it will be exponential, showing three levels at once
may take three orders of magnitude more time to be fully listed).
.. _bpy.types.FileSelectParams.sort_method: .. _bpy.types.FileSelectParams.sort_method:
@ -174,8 +166,8 @@ Sort By
Filter Settings Filter Settings
^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^
On the right side of the file path are the filtering options.
The toggle with the funnel icon controls whether filtering is enabled or not. The toggle with the funnel icon controls whether filtering is enabled or not.
The dropdown button next to it shows the filtering options.
File Types File Types
Filters files by categories, like folders, blend-files, images, etc. Filters files by categories, like folders, blend-files, images, etc.
@ -194,37 +186,34 @@ Show Hidden :kbd:`H`
Execution Region Execution Region
---------------- ----------------
These controls are at the bottom of the editor.
.. _bpy.types.FileSelectParams.filename: .. _bpy.types.FileSelectParams.filename:
File Name File Name
Text field to edit the file name and extension. Text field to edit the file name and extension. Turns red to warn you about overwriting an existing file.
When saving, if the background is red, a file with same name already exists in the folder.
:kbd:`Tab` will auto-complete to existing names in the current directory. :kbd:`Tab` will auto-complete to existing names in the current directory.
Increment Filename ``-``, ``+`` Increase/Decrease Number ``+``, ``-``
Removes/Decreases or adds/increases a trailing number to your file name Adds/increases or removes/decreases a trailing number in your file name
(used e.g. to store different versions of a file). (used e.g. to store different versions of a file).
.. _bpy.ops.file.cancel: .. _bpy.ops.file.cancel:
Cancel :kbd:`Esc` Cancel :kbd:`Esc`
Cancels the file selection (and the underlying operation), and closes the File Browser. Closes the File Browser and cancels the operation.
Using the *Back to Previous* button in the :doc:`Topbar </interface/window_system/topbar>`
will have the same effect.
.. _bpy.ops.file.execute: .. _bpy.ops.file.execute:
Confirm :kbd:`Return` Confirm :kbd:`Return`
The main button to validate the operation, which defines its name. Confirm the current directory and file name. You can also double-click a file or data-block
Double-clicking on a non-directory item will have the same effect. in the main region.
Source List Region Quick Access Region
------------------ -------------------
The left region displays different ways to quickly access some directories. The region on the left contains a few panels that let you quickly jump to certain directories with a single click.
The region is divided into separate panels each containing a :ref:`UI List <ui-list-view>` of directories.
Clicking on one of the directories will immediately navigate to that folder.
.. _bpy.types.SpaceFileBrowser.bookmarks: .. _bpy.types.SpaceFileBrowser.bookmarks:
@ -232,9 +221,7 @@ Clicking on one of the directories will immediately navigate to that folder.
Bookmarks Bookmarks
^^^^^^^^^ ^^^^^^^^^
Contains folders that you want to be able to access often without having to navigate to them in the File Browser. A custom list of folders that you use often. You can use the buttons to the right of the list to add/remove/move items.
To the right of that list are buttons to perform basic management actions on your bookmarks,
e.g. add/remove an entry, move it up or down in the list, etc.
.. _bpy.types.SpaceFileBrowser.system_bookmarks: .. _bpy.types.SpaceFileBrowser.system_bookmarks:
@ -242,7 +229,7 @@ e.g. add/remove an entry, move it up or down in the list, etc.
System System
^^^^^^ ^^^^^^
Contains OS-defined common directories, like the main user folder... Common directories such as the home directory in Linux or the "Documents" folder in Windows.
.. _bpy.types.SpaceFileBrowser.system_folders: .. _bpy.types.SpaceFileBrowser.system_folders:
@ -250,7 +237,7 @@ Contains OS-defined common directories, like the main user folder...
Volumes Volumes
^^^^^^^ ^^^^^^^
Contains all OS-defined available volumes, e.g. drives or network mounts. Drives and network mounts.
.. _bpy.types.SpaceFileBrowser.recent_folders: .. _bpy.types.SpaceFileBrowser.recent_folders:
@ -258,7 +245,7 @@ Contains all OS-defined available volumes, e.g. drives or network mounts.
Recent Recent
^^^^^^ ^^^^^^
Contains recently accessed folders. Recently accessed folders.
.. _bpy.ops.file.reset_recent: .. _bpy.ops.file.reset_recent:
@ -272,7 +259,7 @@ Operator Options Region
----------------------- -----------------------
The right region shows the options of the calling operator. The right region shows the options of the calling operator.
Besides common actions listed below, many import/export add-ons will also expose their options there. Besides the common actions listed below, many import/export add-ons will also expose their options there.
Open, Save, Save As Blender File Open, Save, Save As Blender File
See :doc:`/files/blend/open_save`. See :doc:`/files/blend/open_save`.
@ -290,16 +277,16 @@ Relative Path
Header Region Header Region
------------- -------------
The header only contains two menus, one with you standard editor *View* controls The header only contains two menus, one with the standard editor *View* controls
and the other to list a few `Selecting`_ operators for the sake of discoverability. and the other to list a few `Selecting`_ operators for the sake of discoverability.
Often it is hidden as most of the functionality is contained in the regions described previously. These menus are not visible when the browser is in a modal window.
Navigating Navigating
========== ==========
Entering a Directory Entering a Directory :kbd:`Return`
A single :kbd:`LMB` click on a directory enters it. Double-click a directory to enter it.
Parent Directory :kbd:`P` Parent Directory :kbd:`P`
Takes you up one level of directory. Takes you up one level of directory.
@ -308,26 +295,24 @@ File Drop
--------- ---------
You can also drag and drop a file or directory from your file manager into the Blender File Browser. You can also drag and drop a file or directory from your file manager into the Blender File Browser.
This will move it to the directory of the dropped file, and the file will be selected. This will navigate to the item and select it.
Selecting Selecting
========= =========
Select Select
Both :kbd:`LMB` and :kbd:`RMB` clicks work. Click :kbd:`LMB` to select a single item. Additionally hold :kbd:`Ctrl` to add/remove that item
Holding :kbd:`Shift` will extend the items selection. to/from the selection, or :kbd:`Shift` to select a range of items.
(De)select All :kbd:`A`
Toggles selecting all files.
Dragging Dragging
Dragging with :kbd:`LMB` starts a :ref:`box selection <tool-select-box>`. Dragging with :kbd:`LMB` starts a :ref:`box selection <tool-select-box>`.
.. note:: .. note::
You can always select several entries in the File Browser, You can always select several entries in the File Browser --
the last selected one is considered as the active one. the last selected one is considered the active one.
If the calling operation expects a single path (like e.g. the main blend-file *Open* one), If the calling operation expects a single path (like e.g. the main blend-file *Open* one),
it will get that active item's path, other selected ones will just be ignored. it will get that active item's path, and the other selected items will be ignored.
Arrow Keys Arrow Keys
@ -335,22 +320,19 @@ Arrow Keys
It is also possible to select/deselect files by "walking" through them using the arrow keys: It is also possible to select/deselect files by "walking" through them using the arrow keys:
- Just using an arrow key, the next file in the chosen direction will be selected and all others deselected. - Press an arrow key to select the next/previous file in the list and deselect all the others.
- Holding down :kbd:`Shift` while doing this does not deselect anything so it extends to the selection, - Hold :kbd:`Shift` to keep the current selection (and add to it).
plus it allows to deselect files by navigating into a block - Hold :kbd:`Shift-Ctrl` to invert the selection as you pass over it.
of already selected ones (minimum two files in sequence).
- Holding down :kbd:`Shift-Ctrl` further selects/deselects all files in between.
If no file is selected, the arrow key navigation selects the first or last file in the directory, If no file is selected, the arrow key navigation selects the first or last file in the directory,
depending on the arrow direction. depending on the arrow direction.
If you select a directory and hit :kbd:`Return`, you will go into that directory
(and highlighting 'parent' ``..`` entry will bring you up one level).
Editing Editing
======= =======
The following operations are available in the file list's context menu.
.. _bpy.ops.file.external_operation: .. _bpy.ops.file.external_operation:
External External
@ -375,7 +357,7 @@ External
.. _bpy.ops.file.delete: .. _bpy.ops.file.delete:
Delete Files :kbd:`Delete`, :kbd:`X` Delete :kbd:`Delete`, :kbd:`X`
Delete the currently selected files or directories by moving them to the operating system's "trash". Delete the currently selected files or directories by moving them to the operating system's "trash".
Note, on Linux deleting directories requires KDE or GNOME. Note, on Linux deleting directories requires KDE or GNOME.
@ -383,4 +365,4 @@ Delete Files :kbd:`Delete`, :kbd:`X`
.. _bpy.ops.file.rename: .. _bpy.ops.file.rename:
Rename :kbd:`F2` Rename :kbd:`F2`
Change the name for the currently selected file or directory. Change the name of the currently selected file or directory.

View File

@ -105,7 +105,7 @@ Copy/Paste
Copy and pastes imaged to/from a computers operating system. Copy and pastes imaged to/from a computers operating system.
Currently, only PNG files are supported and is only supported on Windows and Linux running Wayland. Currently, only PNG files are supported and Linux support requires Wayland.
.. _bpy.ops.image.save: .. _bpy.ops.image.save:

View File

@ -7,7 +7,8 @@
Spreadsheet Spreadsheet
*********** ***********
The Spreadsheet editor is used to inspect geometry attributes. The Spreadsheet editor is used to inspect the geometry attributes of the :term:`active` object,
typically in order to debug :doc:`geometry nodes </modeling/geometry_nodes/introduction>`.
.. figure:: /images/editors_spreadsheet_interface.png .. figure:: /images/editors_spreadsheet_interface.png
:align: center :align: center
@ -21,42 +22,45 @@ Header
.. _bpy.types.SpaceSpreadsheet.object_eval_state: .. _bpy.types.SpaceSpreadsheet.object_eval_state:
Object Evaluation State Object Evaluation State
Display the data of an object at different states of its evaluation. The state for which to display data.
:Evaluated: Display data from the object with all modifiers applied. :Evaluated: Display data from the object with all modifiers applied.
:Original: Display data from the original object without any modifiers applied. :Original: Display data from the original object without any modifiers applied.
:Viewer Node: Display data from the active Viewer node of the active object. :Viewer Node: Display the data that's fed into the active :doc:`/modeling/geometry_nodes/output/viewer`.
You can also toggle between *Evaluated* and *Viewer Node* by clicking the eye icon in the
Viewer node's header.
.. _bpy.types.SpaceSpreadsheet.display_context_path_collapsed: .. _bpy.types.SpaceSpreadsheet.display_context_path_collapsed:
Breadcrumbs Breadcrumbs
The breadcrumbs show three key parts of the path the evaluated object Shows the name of the active object, and (if *Object Evaluation State* is set to *Viewer Node*)
takes before showing the information in the `Main Region`_. the name of the Geometry Nodes modifier and the active Viewer node.
In the order from left to right, the first item displayed is the :term:`Active` object.
The next two items are displayed when the *Viewer* node evaluation state is chosen.
The first of these next items is the name of the Geometry Nodes modifier,
the last item shown is the name of the active Viewer node.
Clicking the arrow between items hides the name of the active modifier. You can click one of the arrows between the names to hide the modifier.
.. _bpy.ops.spreadsheet.toggle_pin: .. _bpy.ops.spreadsheet.toggle_pin:
Toggle Pin Toggle Pin
Usually, the editor displays data from the active object. Click to "lock" the editor to the currently active object, and have it keep displaying that
When an object is pinned, its data remains visible, even if another object becomes active. object's data even if another object becomes active. Click again to unlock.
.. _bpy.types.SpaceSpreadsheet.show_only_selected: .. _bpy.types.SpaceSpreadsheet.show_only_selected:
Selected Only Selected Only
This option is only available if the object is in Edit Mode. This option is only available if the object is in Edit Mode.
When checked, only data for the selected mesh elements is shown. When checked, only data for the selected geometry elements is shown.
.. _bpy.types.SpaceSpreadsheet.use_filter:
Use Filter
Whether to use the filters that are defined in the Sidebar (see below).
Main Region Main Region
=========== ===========
The main view allows you to view the actual spreadsheet. The main view shows the actual spreadsheet.
Row indices and column names remain visible when scrolling down or to the side. Column names and row indices remain visible when scrolling down or to the side.
.. note:: .. note::
@ -70,35 +74,11 @@ Row indices and column names remain visible when scrolling down or to the side.
Data Set Region Data Set Region
=============== ===============
With the Data Set region on the left you can choose which geometry component and geometry domain to view. With region on the left, you can choose what to display data for.
For each attribute domain its size is displayed, for example the number of faces. The top tree lets you pick from the hierarchy of geometries, such as a mesh inside an instance.
The bottom tree lets you pick a domain, such as mesh vertices or curve splines.
Mesh Each tree item shows the number of elements inside.
Mesh component containing point, corner, face and edge data.
:Vertex: Display attributes that are stored per vertex.
:Edge: Display attributes that are stored per edge.
:Face: Display attributes that are stored per face.
:Face Corner: Display attributes that are stored per face corner.
Curve
Display curve data which are the attributes on splines and control points.
:Control Point: Display attributes that are stored per control point.
:Spline: Display attributes that are stored per spline.
Point Cloud
Point cloud component containing only point data.
:Point: Display attributes that are stored per point.
Volume Grids
Display OpenVDB volume grid data, each grid will be represented
with the *Grid Name*, the *Data Type*, and the *Class*.
The class can be either of: Fog Volume, Level Set, or Unknown.
Instances
Display which objects and collections are instanced and their transforms.
Sidebar Sidebar
@ -106,44 +86,45 @@ Sidebar
.. _bpy.ops.spreadsheet.add_row_filter_rule: .. _bpy.ops.spreadsheet.add_row_filter_rule:
The Sidebar contains row filters, which allow not including rows based on their value. In the Sidebar, you can define filters so that only the rows matching these filters
The *Add Row Filter* button adds a new row filter. are displayed. Click *Add Row Filter* and set up the properties described below.
.. _bpy.types.SpaceSpreadsheetRowFilter.enabled: .. _bpy.types.SpaceSpreadsheetRowFilter.enabled:
Enabled Enabled
Each row filter can be enabled or disabled. Disabled row filters are grayed out, and aren't used for filtering. Uncheck to temporarily disable the filter.
.. _bpy.types.SpaceSpreadsheetRowFilter.column_name: .. _bpy.types.SpaceSpreadsheetRowFilter.column_name:
Column Column
Row filters hide rows based on the values of the selected column. The name of the column to filter on. If there is no column with the specified name,
The choice of name in the Column field determine which column is chosen. the filter will be grayed out and ignored.
If the column is not currently available, the row filter will be grayed out.
.. TODO 3.0 relink Attribute Convert node replacement tip: If you want to filter on an attribute from another domain, you can use the
:doc:`/modeling/geometry_nodes/attribute/store_named_attribute` to create a copy
To filter values based on a geometry attribute on a different domain, that's converted to the current domain, then filter on that.
the :doc:`Attribute Convert </modeling/geometry_nodes/attribute/attribute_convert>` node
can be used to move an attribute's values to any of a geometry component's other domains.
.. _bpy.types.SpaceSpreadsheetRowFilter.operation: .. _bpy.types.SpaceSpreadsheetRowFilter.operation:
Operation Operation
For spreadsheet column types besides Boolean columns and name or "string" columns, For numerical columns, you can select one of the following comparison operators.
it is possible to choose which operation to filter with. Other columns only support *Equal To*.
:Equal To: Display the row when data values are within the provided threshold from the row filter's value. :Equal To: Only display rows whose value for the column is equal to the filter value
:Greater Than: Display the row when data values are greater than the row filter's value. (within the specified threshold).
:Less Than: Display the row when data values are less than the row filter's value. :Greater Than: Only display rows whose value for the column is greater than the filter value.
:Less Than: Only display rows whose value for the column is less than the filter value.
Value
The filter value to compare the row value to.
.. _bpy.types.SpaceSpreadsheetRowFilter.threshold: .. _bpy.types.SpaceSpreadsheetRowFilter.threshold:
Threshold Threshold
The distance from the row filter's value for the equality operation. How much the row's value is allowed to deviate from the filter value before it is excluded.
Status Bar Status Bar
========== ==========
The status bar shows how many rows and columns there are and how many have been filtered out. The status bar shows how many rows and columns there are, and how many rows remain after filtering.

View File

@ -304,6 +304,12 @@ Sync Visible Range
Only Show Selected Only Show Selected
Only show keyframes related to the selected items. Only show keyframes related to the selected items.
This could be objects, bones, nodes, and so on. This could be objects, bones, nodes, and so on.
.. note::
If this option is enabled, the Timeline may not show all :doc:`material </render/materials/introduction>`
keyframes of the selected objects. Instead, it only shows the keyframes belonging to the selected nodes
in the :doc:`/editors/shader_editor`.
Only Show Errors Only Show Errors
Only show curves and drivers that are disabled or have errors. Only show curves and drivers that are disabled or have errors.
Useful for debugging. Useful for debugging.

View File

@ -41,6 +41,8 @@ Keep Shape
When enabled, the smoothing algorithm will try to maintain as close as possible the overall When enabled, the smoothing algorithm will try to maintain as close as possible the overall
shape of the original stroke. shape of the original stroke.
Smooth Ends
Smooth the ends of the strokes.
Influence Influence
--------- ---------

View File

@ -277,6 +277,7 @@ Face Mark Filtering
------------------- -------------------
.. figure:: /images/grease-pencil_modifiers_generate_line-art_face-mark-filtering-panel.png .. figure:: /images/grease-pencil_modifiers_generate_line-art_face-mark-filtering-panel.png
:align: right
Face Mark Filtering subpanel. Face Mark Filtering subpanel.
@ -412,12 +413,17 @@ Bake
Bake Line Art Bake Line Art
Bakes Line Art strokes for active Grease Pencil object within the *start*, *end* frame range in scene. Bakes Line Art strokes for active Grease Pencil object within the *start*, *end* frame range in scene.
Bake Line Art (All) bakes all Grease Pencil objects that contains at least one Line Art modifier. After baking, baked Line Art modifiers will be deactivated automatically.
Bake All
Bakes all Grease Pencil objects that contains at least one Line Art modifier.
After baking, baked Line Art modifiers will be deactivated automatically. After baking, baked Line Art modifiers will be deactivated automatically.
Clear Baked Line Art Clear Baked Line Art
Clears baked line art frames within the scene frame range for active Grease Pencil object. Clears baked line art frames within the scene frame range for active Grease Pencil object.
Clear Baked Line Art (All) applies the same operation for all Grease Pencil objects that
Clear All
Clears baked line art for all Grease Pencil objects that
contains at least one Line Art modifier. contains at least one Line Art modifier.
.. warning:: .. warning::

View File

@ -20,10 +20,6 @@ They work by changing how an object is displayed and rendered, but not the geome
You can add several modifiers to a single object forming the modifier stack You can add several modifiers to a single object forming the modifier stack
and *Apply* a modifier if you wish to make its changes permanent. and *Apply* a modifier if you wish to make its changes permanent.
.. figure:: /images/grease-pencil_modifiers_introduction_menu.png
Grease Pencil Modifiers menu.
There are four types of modifiers for Grease Pencil: There are four types of modifiers for Grease Pencil:
Edit Edit

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
manual/images/node-types_GeometryNodeMergeLayers.webp (Stored with Git LFS) Normal file

Binary file not shown.

BIN
manual/images/node-types_GeometryNodeWarning.webp (Stored with Git LFS) Normal file

Binary file not shown.

View File

@ -1,5 +1,9 @@
<svg xmlns="http://www.w3.org/2000/svg" width="560px" height="110px" viewBox="0.5 0.5 560 110"> <svg xmlns="http://www.w3.org/2000/svg" width="560px" height="110px" viewBox="0.5 0.5 560 110">
<g fill="#FFFFFF">
<rect x="0" y="0" width="560" height="110"/>
</g>
<g stroke="#000"> <g stroke="#000">
<rect fill="#FFE76D" x="22" y="52" width="140" height="30" rx="6"/> <rect fill="#FFE76D" x="22" y="52" width="140" height="30" rx="6"/>
<rect fill="#AEC6ED" x="182" y="39" width="80" height="55" rx="6"/> <rect fill="#AEC6ED" x="182" y="39" width="80" height="55" rx="6"/>

Before

Width:  |  Height:  |  Size: 1.2 KiB

After

Width:  |  Height:  |  Size: 1.2 KiB

View File

@ -1,5 +1,9 @@
<svg xmlns="http://www.w3.org/2000/svg" width="584px" height="170px" viewBox="0.5 0.5 584 170"> <svg xmlns="http://www.w3.org/2000/svg" width="584px" height="170px" viewBox="0.5 0.5 584 170">
<g fill="#FFFFFF">
<rect x="0" y="0" width="584" height="170"/>
</g>
<g stroke="#000"> <g stroke="#000">
<g fill="#FFE76D"> <g fill="#FFE76D">

Before

Width:  |  Height:  |  Size: 1.8 KiB

After

Width:  |  Height:  |  Size: 1.8 KiB

View File

@ -12,6 +12,7 @@
fill_curve.rst fill_curve.rst
fillet_curve.rst fillet_curve.rst
interpolate_curves.rst interpolate_curves.rst
merge_layers.rst
resample_curve.rst resample_curve.rst
reverse_curve.rst reverse_curve.rst
subdivide_curve.rst subdivide_curve.rst

View File

@ -0,0 +1,46 @@
.. index:: Geometry Nodes; Merge Layers
.. _bpy.types.GeometryNodeMergeLayers:
*****************
Merge Layers Node
*****************
.. figure:: /images/node-types_GeometryNodeMergeLayers.webp
:align: right
:alt: Merge Layers node.
Combines multiple :doc:`Grease Pencil Layers </grease_pencil/properties/layers>` into a single layer.
.. seealso::
:ref:`Merge Layers Operator <bpy.ops.grease_pencil.layer_merge>`
Inputs
======
Grease Pencil
The grease pencil object with multiple layers to combine.
Selection
Operate of a subset of layers by setting the field layer index value to *true*.
By default, all layers are selected.
Group ID
The index numbers of the layer to be merged.
This input is only visible when using *By Group ID* Mode.
Properties
==========
Mode
Determines how to choose which layers are merged.
:By Name: Combine all layers which have the same name.
:By Group ID: Provide a custom group ID for each layer and all layers with the same ID will be merged into one.
Outputs
=======
Grease Pencil
The grease pencil object with combined layers.

View File

@ -1,38 +0,0 @@
.. index:: Geometry Nodes; Curve Handle Position
.. _bpy.types.GeometryNodeInputCurveHandlePositions:
**************************
Curve Handle Position Node
**************************
.. figure:: /images/node-types_GeometryNodeInputCurveHandlePositions.webp
:align: right
:alt: Curve Handle Position node.
The *Curve Handle Position* node outputs the position of each of a Bézier spline's handles.
If the curve does not contain Bézier splines, the node will output zero.
The node to set this data is the :doc:`/modeling/geometry_nodes/curve/write/set_handle_positions`.
Inputs
======
Relative
Output the handle positions relative to the corresponding control point
instead of in the local space of the geometry.
Properties
==========
This node has no properties.
Outputs
=======
Left
The position of the each control point's left handle.
Right
The position of the each control point's right handle.

View File

@ -0,0 +1,38 @@
.. index:: Geometry Nodes; Curve Handle Position
.. _bpy.types.GeometryNodeInputCurveHandlePositions:
***************************
Curve Handle Positions Node
***************************
.. figure:: /images/node-types_GeometryNodeInputCurveHandlePositions.webp
:align: right
:alt: Curve Handle Position node.
Gets the two handle positions of each control point in a Bézier spline.
You can use the :doc:`/modeling/geometry_nodes/curve/write/set_handle_positions`
to change these positions.
Inputs
======
Relative
Output the handle positions relative to the control point
instead of in the local space of the geometry.
Properties
==========
This node has no properties.
Outputs
=======
Left
The position of the control point's left handle.
Right
The position of the control point's right handle.

View File

@ -6,7 +6,7 @@
.. toctree:: .. toctree::
:maxdepth: 1 :maxdepth: 1
curve_handle_position.rst curve_handle_positions.rst
curve_length.rst curve_length.rst
curve_tangent.rst curve_tangent.rst
curve_tilt.rst curve_tilt.rst

View File

@ -40,8 +40,8 @@ Mode
The final normals are calculated to have the smallest twist around The final normals are calculated to have the smallest twist around
the curve tangent across the whole curve. the curve tangent across the whole curve.
:Z-Up: :Z-Up:
The final normals are calculated so that they is perpendicular to the Z axis and the tangent. The final normals are calculated so that they are perpendicular to the Z axis and the tangent.
If a series of points is vertical, the X axis is used If a series of points is vertical, the X axis is used.
:Free: :Free:
Use the stored custom normal attribute (``custom_normal``) as the final normals. Use the stored custom normal attribute (``custom_normal``) as the final normals.

View File

@ -11,7 +11,7 @@ Set Handle Positions Node
The *Set Handle Positions* node sets the positions for the handles of :ref:`Bézier curves <curve-bezier>`. The *Set Handle Positions* node sets the positions for the handles of :ref:`Bézier curves <curve-bezier>`.
They can be used to alter the generated shape of the curve. They can be used to alter the generated shape of the curve.
The input node for this data is the :doc:`/modeling/geometry_nodes/curve/read/curve_handle_position`. The input node for this data is the :doc:`/modeling/geometry_nodes/curve/read/curve_handle_positions`.
See the :ref:`Bézier curves <curve-bezier-handle-type>` page for more details. See the :ref:`Bézier curves <curve-bezier-handle-type>` page for more details.
.. note:: .. note::

View File

@ -9,8 +9,8 @@ Split To Instances Node
:align: right :align: right
:alt: Split to Instance node. :alt: Split to Instance node.
The *Split to Instances* node splits up geometry elements into :doc:`/modeling/geometry_nodes/instances`, Splits a selection of geometry elements (such as faces) into groups,
based on a Group ID. then turns each group into an :doc:`instance </modeling/geometry_nodes/instances>`.
Inputs Inputs
@ -20,44 +20,48 @@ Geometry
Standard geometry input. Standard geometry input.
Selection Selection
Boolean field that is true for parts of the geometry to be evaluated. Boolean field indicating which geometry elements to include.
Parts not in the selection will not be in the node's output.
Group ID Group ID
ID field (integer) used to distinguish different groups. Integer field indicating which group each element belongs to. Elements with the
same ID will be moved into the same output instance.
Properties Properties
========== ==========
Domain Domain
The domain on which the selection and group ID fields are evaluated. The type of geometry to extract and split.
This is also the domain on which the *Selection* and *Group ID* fields are evaluated.
:Point: :Point:
The fields are evaluated on points, control points, and vertices. Points, spline control points, and vertices.
:Edge: :Edge:
The fields are evaluated on the edges of the mesh component. Mesh edges.
:Faces: :Face:
The fields are evaluated on the faces of the mesh component. Mesh faces.
:Spline: :Spline:
The fields are evaluated on the splines in the curve component. Curve splines.
:Instances: :Instance:
The fields are evaluated on the top-level instances. Realized instances are ignored. Top-level instances. Realized instances are ignored.
:Layer:
Grease Pencil layers.
.. note:: .. note::
When selecting a domain that doesn't modify all components, the unmodified Geometry that doesn't match the selected domain will be removed.
components will not be present in the output. For example, if you choose *Edge*, any faces, splines, and instances in the input
geometry will be lost.
Output Output
====== ======
Instances Instances
input geometry splitted up as instances. The instances containing the grouped geometry elements.
Group ID Group ID
ID field from the input Group ID Group ID of each instance.
Examples Examples
@ -66,8 +70,10 @@ Examples
.. figure:: /images/modeling_geometry-nodes_geometry_split-to-instances_example.png .. figure:: /images/modeling_geometry-nodes_geometry_split-to-instances_example.png
:align: center :align: center
Here, a grid is split into instances based on a voronoi texture, then translated randomly in Z. In the example above, we start with a grid of 1000x1000 square faces serving as "pixels."
Note that the GroupID field expects different integers values (0, 1, 2, 3…), not floats (0.1, 0.2, 0.3), Then, we group these faces into patches by assigning them a group ID sampled from a Voronoi texture,
which is why the color needs to be multiplied by 1000. and move each resulting instance by a random amount along the Z axis.
Note that, because the texture outputs floating point values between 0 and 1 while the group ID
is an integer, all the values would be rounded to 0 or 1 and we would only get two groups.
To get more variation, we multiply the texture value by 1000.

View File

@ -9,8 +9,8 @@ Extrude Mesh Node
:align: right :align: right
:alt: Extrude Mesh node. :alt: Extrude Mesh node.
The *Extrude Mesh Node* generates new vertices, edges, or faces, on selected geometry The *Extrude Mesh Node* generates new edges or faces on the selected geometry elements
and transforms them based on an offset. and moves them by a certain offset.
The operations are similar to the :doc:`extrude tools </modeling/meshes/editing/mesh/extrude>` The operations are similar to the :doc:`extrude tools </modeling/meshes/editing/mesh/extrude>`
in mesh edit mode, though there are some differences. Most importantly, the node never keeps the back-faces in mesh edit mode, though there are some differences. Most importantly, the node never keeps the back-faces
@ -24,27 +24,23 @@ Mesh
Standard geometry input. Standard geometry input.
Selection Selection
Whether to extrude each element. A boolean field indicating which elements should be extruded.
True values mean elements will be extruded, false values mean elements will remain unchanged.
Offset Offset
The amount to translate the new geometry on each axis. The default value of the "Offset" input The translation vector for each extruded element. By default, this is the element's
is the mesh's :doc:`normals </modeling/geometry_nodes/geometry/read/normal>`. To change the distance, :doc:`normal </modeling/geometry_nodes/geometry/read/normal>`.
the *Scale* input can be used. However, when an input is computed for this directly, the length
of the input vectors is used.
.. tip:: .. tip::
Because the default input is the mesh's normals, they may need to be calculated just for this node. If all the elements are extruded in the same direction, you may be able to improve performance
If the extrusion is only in one direction anyway, a potential performance improvement is to connect by connecting a :doc:`/modeling/geometry_nodes/input/constant/vector` to this input,
a :doc:`/modeling/geometry_nodes/input/constant/vector` instead. thereby skipping the normal calculation.
Scale Offset Scale
The factor used to scale elements or groups of elements. Scaling factor for the above translation vector.
Individual :guilabel:`Face Mode Only` Individual :guilabel:`Face Mode Only`
Whether to extrude each face individually rather than extruding connected groups of faces together as regions. Whether to extrude each face individually rather than extruding connected groups of faces together.
A quad side face will be generated on each side of every selected face.
Properties Properties
@ -52,16 +48,16 @@ Properties
Mode Mode
:Vertices: :Vertices:
This mode is quite simple, it just attaches new edges and vertices to the selected vertices. Attaches a new freestanding edge to each selected vertex.
:Edges: :Edges:
Attach new quad faces to the selected edges. Vertices shared by the Attaches a new quad face to each selected edges. Vertices shared by the
original selected vertices are also shared in the duplicated edges. original selected edges are also shared in the duplicated edges.
.. note:: .. note::
Depending on the situation, the normals of the new faces may be arbitrary. If the selected Depending on the situation, the normals of the new faces may be arbitrary. If the selected
edges only have one selected face, then the node can pick a consistent orientation for the edges each have only one connected face, then the node can pick a consistent orientation for the
new faces, but if there is more than one connected face, or no connected faces, the normals new faces, but if there is more than one connected face, or no connected faces, the normals
may have to be adjusted afterwards. may have to be adjusted afterwards.
@ -70,9 +66,9 @@ Mode
depending on the *Individual* boolean input. depending on the *Individual* boolean input.
When the *Individual* input is false, the node will find regions of connected faces and generate When the *Individual* input is false, the node will find regions of connected faces and generate
new "side" faces on the boundaries of those regions. If the whole mesh is selected and it is already new "side" faces on the boundaries of those regions. Any vertices, edges or faces on the *inside*
a :term:`Manifold` shape, then result will just be that the whole mesh moves. Any vertices, edges of the regions simply are moved, not duplicated. If the whole mesh is selected and it is already
or faces on the *inside* of the face regions are just moved, they are not duplicated. a :term:`Manifold` shape, then the result will just be that the whole mesh gets resized.
Output Output
@ -82,15 +78,12 @@ Mesh
Standard geometry output. Standard geometry output.
Top Top
A boolean field output containing the top new top geometry. The :ref:`domain <attribute-domains>` A boolean field indicating the "top" elements in the extrusion. In *Vertex* mode, these are the new vertices;
depends on the selected mode. In *Vertex* mode, this is a selection of the new vertices. in *Edge* mode, the new edges; and in *Face* mode, the moved faces.
In *Edge* mode, this is a selection of the duplicated edges
and in *Face* mode, it is a selection of the new faces.
Side Side
A boolean field output containing the "side" of the new geometry. In *Vertex* mode, it selects A boolean field indicating the "side" elements in the extrusion. In *Vertex* mode, these are the new edges;
the new edges, in *Edge* mode, the new faces, and in *Face* mode, the new side faces are selected, in *Edge* mode, the new faces; and in *Face* mode, too, the newly generated faces (as opposed to the moved ones).
which are all of the new faces that aren't in the *Top* selection.
Examples Examples
@ -100,7 +93,7 @@ Examples
:align: center :align: center
Here, the selection outputs are used to set materials on certain faces of the mesh. Here, the selection outputs are used to set materials on certain faces of the mesh.
A :doc:`/modeling/geometry_nodes/utilities/random_value` node can be used to limit the A :doc:`/modeling/geometry_nodes/utilities/random_value` is used to limit the
extrusion to a random set of faces. extrusion to a random set of faces.
@ -126,7 +119,7 @@ Vertex Mode
The new edges created in vertex mode use the average value of all connected edges. The new edges created in vertex mode use the average value of all connected edges.
* New **vertices** have copied values from their original vertices * New **vertices** have copied values from their original vertices.
* New **edges** have the average value of any connected original edges. * New **edges** have the average value of any connected original edges.
For boolean attributes, edges are selected if any connected edges were selected. For boolean attributes, edges are selected if any connected edges were selected.

View File

@ -44,13 +44,13 @@ Operation
Solver Solver
Algorithm used to calculate the Boolean intersections. Algorithm used to calculate the Boolean intersections.
:Fast: :Float:
Uses a mathematically simple solver which offers the best performance; Uses a mathematically simple solver which offers the best performance;
however, this solver lacks support for overlapping geometry. however, this solver lacks support for overlapping geometry.
:Exact: :Exact:
Uses a mathematically complex solver which offers the best results Uses a mathematically complex solver which offers the best results
and has full support for overlapping geometry; and has full support for overlapping geometry;
however, this solver is much slower than the *Fast Solver*. however, this solver is much slower than the *Float Solver*.
Output Output

View File

@ -9,29 +9,27 @@ Scale Elements Node
:align: right :align: right
:alt: Scale Elements node. :alt: Scale Elements node.
The *Scale Elements Node* scales groups of connected edges and faces. Scales the selected faces or edges, letting you specify a scaling factor and pivot point for each one.
When multiple selected faces/edges share the same vertices, they are scaled together. Connected faces/edges are scaled together using their average factor and pivot point.
The center and scaling factor is averaged in this case.
Inputs Inputs
====== ======
Mesh Geometry
Standard geometry input. Standard geometry input.
Selection Selection
Whether to scale each edge or face. Boolean field indicating which elements to scale.
True values mean the element will be scaled, false means it will be unaffected.
Scale Scale
The factor used to scale elements or groups of elements. The scaling factor for each element.
Center Center
Origin of the scaling for each element. If multiple elements are connected, their center is averaged. The pivot point for each element.
Axis :guilabel:`Single Axis Mode Only` Axis :guilabel:`Single Axis Mode Only`
Axis in which to scale the element. This input is normalized internally, so the length does not matter. Axis along which to scale each element. This vector is normalized internally, so the length does not matter.
Properties Properties
@ -40,18 +38,18 @@ Properties
Domain Domain
The element type to transform. The element type to transform.
:Face: Scale individual faces or neighboring face islands. :Face: Scale faces.
:Edge: Scale individual edges or neighboring edge islands. :Edge: Scale edges.
Scale Mode Scale Mode
:Uniform: Scale elements by the same factor in every direction. :Uniform: Scale elements by the same factor in every direction.
:Single Axis: Scale elements in a single direction defined by the *Direction* input. :Single Axis: Scale elements in a single direction defined by the *Axis* input.
Output Output
====== ======
Mesh Geometry
Standard geometry output. Standard geometry output.
Examples Examples
@ -61,4 +59,4 @@ Examples
:align: right :align: right
The node is useful when combined with the :doc:`/modeling/geometry_nodes/mesh/operations/extrude_mesh`, The node is useful when combined with the :doc:`/modeling/geometry_nodes/mesh/operations/extrude_mesh`,
especially in *Individual* mode, where face islands don't need to be scaled together. especially in *Individual* mode where connected faces aren't extruded together.

View File

@ -9,27 +9,28 @@ Cone Node
:align: right :align: right
:alt: Cone node. :alt: Cone node.
The *Cone* node generates a cone mesh that is optionally truncated. Generates a cone mesh that is optionally truncated.
Inputs Inputs
====== ======
Vertices Vertices
Number of points on the circle at the top and bottom. Number of vertices in the top and/or bottom circle of the cone.
No geometry is generated if the number is below three. No geometry is generated if the number is below three.
Side Segments Side Segments
Number of edges running vertically along the side of the cone. Number of vertically stacked face loops that make up the cone's sides.
Increasing this will add horizontal cuts.
No geometry is generated if the number is below one. No geometry is generated if the number is below one.
Fill Segments Fill Segments
Number of concentric rings used to fill the round faces at the top and bottom. Number of concentric rings in the top and/or bottom.
No geometry is generated if the number is below one. No geometry is generated if the number is below one.
Radius Top Radius Top
The distance of the vertices in the top circle from the Z axis. The radius of the cone's top circle.
If this is zero, the vertices in the circle are merged into one. If this is zero, the circle is reduced to a single vertex.
Radius Bottom Radius Bottom
Same as *Radius Top* but for the bottom circle. Same as *Radius Top* but for the bottom circle.
@ -39,7 +40,7 @@ Depth
.. note:: .. note::
If the top and bottom radii are zero, this node will output a single line. If the top and bottom radii are both zero, this node will output a single line.
Properties Properties
@ -49,8 +50,8 @@ Fill Type
How the circles at the top and bottom are filled with faces when their radius is larger than zero. How the circles at the top and bottom are filled with faces when their radius is larger than zero.
:None: Do not fill the circles. :None: Do not fill the circles.
:N-Gon: Fill the innermost segment of the circles with a single face. :N-Gon: Fill the innermost circles with a single face.
:Triangles: Fill the innermost segment of the circles with triangles connected to a new vertex on the Z axis. :Triangles: Fill the innermost circles with triangles connected to a vertex in the center.
Outputs Outputs
@ -60,20 +61,18 @@ Mesh
Standard geometry output. Standard geometry output.
Top Top
A boolean attribute field with a selection of the faces on the top of the cone. If the *Fill Type* A boolean field with a selection of the faces on the top of the cone. If the *Fill Type*
property is set to none, then this will be a selection of the top edges instead. If *Radius Top* is set to *None*, this will be a selection of the top edges instead. If *Radius Top*
is zero, this will be a selection of the top vertex. is zero, this will be a selection of the top vertex.
Side Side
A boolean attribute field with a selection of the faces on the side of the cone. A boolean field with a selection of the faces on the side of the cone.
Bottom Bottom
A boolean attribute field with a selection of the faces on the bottom of the cone. If the *Fill Type* A boolean field with a selection of the faces on the bottom of the cone. If the *Fill Type*
property is set to none, then this will be a selection of the bottom edges instead. If *Radius Bottom* is set to *None*, this will be a selection of the bottom edges instead. If *Radius Bottom*
is zero, this will be a selection of the bottom vertex. is zero, this will be a selection of the bottom vertex.
UV Map UV Map
A 2D vector representing the default X/Y coordinates of the :term:`UV Map` for the primitive's shape. The default UV coordinate of each face corner. This can be connected to the
This can be connected to the :doc:`/modeling/geometry_nodes/attribute/store_named_attribute`, :doc:`/modeling/geometry_nodes/attribute/store_named_attribute` for populating a :term:`UV Map`.
to be used once the Geometry Nodes Modifier get applied.
The UV map must be stored on the face corner in order to be accessed.

View File

@ -14,7 +14,7 @@ The cost used to define "shortest" can be set to anything. By default there is a
for every edge, but a typical input would be the length of each edge. for every edge, but a typical input would be the length of each edge.
The output is encoded with vertex indices, and is meant to be used on the vertex domain. The output is encoded with vertex indices, and is meant to be used on the vertex domain.
For each vertex, the *Next Vertex Input* output stores the index of the following vertex For each vertex, the *Next Vertex Index* output gives the index of the following vertex
in the path to the "closest" endpoint. in the path to the "closest" endpoint.
The node is implemented with `Dijkstra's algorithm <https://en.wikipedia.org/wiki/Dijkstra%27s_algorithm>`__. The node is implemented with `Dijkstra's algorithm <https://en.wikipedia.org/wiki/Dijkstra%27s_algorithm>`__.
@ -59,4 +59,4 @@ Next Vertex Index
(as defined by the cost input). (as defined by the cost input).
Total Cost Total Cost
The remaining cost before an end vertex is reached by following the next vertex indices The remaining cost before an end vertex is reached.

View File

@ -8,4 +8,5 @@ Nodes that output to outside the node tree.
.. toctree:: .. toctree::
:maxdepth: 1 :maxdepth: 1
warning.rst
viewer.rst viewer.rst

View File

@ -0,0 +1,36 @@
.. index:: Geometry Nodes; Warning
.. _bpy.types.GeometryNodeWarning:
************
Warning Node
************
.. figure:: /images/node-types_GeometryNodeWarning.webp
:align: right
:alt: Warning Node.
Outputs a custom message that can be referenced in the
:ref:`modifiers-geometry-nodes-warnings` panel of the Geometry Nodes Modifier.
This allows node groups to communicate expectations about input values.
Inputs
======
Show
Present the warning in the :ref:`modifiers-geometry-nodes-warnings` panel.
Properties
==========
Warning Type
The type of message to display, the type affects the icon displayed.
Outputs
=======
Show
A passthrough of the *Show* input.

View File

@ -59,7 +59,7 @@ Trailing
The running total of values in the corresponding group, starting at zero. The running total of values in the corresponding group, starting at zero.
Total Total
The total of all of the values in the corresponding group The total of all the values in the corresponding group.
Examples Examples
@ -85,7 +85,7 @@ Table
+-------+-------------+---------+----------+-------+ +-------+-------------+---------+----------+-------+
A few examples of input values and the node's results. One important take-away from this table A few examples of input values and the node's results. One important take-away from this table
is that the specific values for the *Group Input* does not matter; it only matters that the is that the specific values for the *Group Input* do not matter; it only matters that the
values are shared between elements. values are shared between elements.
Stacking Boxes Stacking Boxes

View File

@ -9,8 +9,7 @@ Invert Matrix Node
:align: right :align: right
:alt: Invert Matrix node. :alt: Invert Matrix node.
The *Invert Matrix* node returns the mathematical Returns the `inverse <https://mathworld.wolfram.com/MatrixInverse.html>`__ of the given matrix.
`inverse matrix <https://mathworld.wolfram.com/MatrixInverse.html>`__.
Inputs Inputs
@ -32,11 +31,11 @@ Outputs
Matrix Matrix
The inverted matrix. The inverted matrix.
Invertible Invertible
Returns true if the matrix cannot be inverted. Returns whether the matrix could be inverted.
For example. this can happen when a transformation matrix has a scale of zero. This can be false when a transformation matrix has a scale of zero, for example.
See `Invertible matrix <https://en.wikipedia.org/wiki/Invertible_matrix>`__ for more information. See `Invertible matrix <https://en.wikipedia.org/wiki/Invertible_matrix>`__ for more information.
.. important:: .. important::
When a matrix is invertible, the `identity matrix <https://en.wikipedia.org/wiki/Identity_matrix>`__ When a matrix is not invertible, the `identity matrix <https://en.wikipedia.org/wiki/Identity_matrix>`__
is returned. is returned.

View File

@ -9,17 +9,21 @@ Project Point Node
:align: right :align: right
:alt: Project Point node. :alt: Project Point node.
The *Project Point* node projects a position vector using a :term:`Transformation Matrix`, Applies a projection matrix to a point. Specifically, this node turns the given
using location, rotation, scale, and perspective divide. Euclidean vector (X, Y, Z) into the homogeneous vector (X, Y, Z, 1),
multiplies the given projection matrix by it,
and turns the resulting homogeneous vector back into a Euclidean one by dividing
it by the absolute value of its W component. This last step is also known as
perspective division.
Inputs Inputs
====== ======
Vector Vector
The position vector vector to transform. The position vector to project.
Transformation Transformation
The transformation matrix. The projection matrix.
Properties Properties

View File

@ -0,0 +1,43 @@
.. index:: Geometry Nodes; Axis to Rotation
.. _bpy.types.FunctionNodeAxesToRotation:
*********************
Axes to Rotation Node
*********************
.. figure:: /images/node-types_FunctionNodeAxesToRotation.webp
:align: right
:alt: Axis to Rotation node.
Creates a rotation based on two axis directions.
.. tip::
In many cases, these directions are a normal and tangent on a mesh or curve.
Inputs
======
Primary Axis
The desired direction of the primary axis.
Secondary Axis
The desired direction of the secondary axis. Ideally, this is orthogonal to the primary direction.
Properties
==========
Primary Axis
The axis (X, Y or Z) that should be aligned exactly to the primary direction.
Secondary Axis
The axis that should be aligned as closely as possible to the secondary direction.
Outputs
=======
Rotation
The rotation that results in the given axes being aligned to the given directions.

View File

@ -1,47 +0,0 @@
.. index:: Geometry Nodes; Axis to Rotation
.. _bpy.types.FunctionNodeAxesToRotation:
*********************
Axis to Rotation Node
*********************
.. figure:: /images/node-types_FunctionNodeAxesToRotation.webp
:align: right
:alt: Axis to Rotation node.
The *Axis to Rotation* node creates a rotation from a primary and secondary axis.
The node rotates one axis (X, Y, or Z) to the given primary axis direction.
Then it rotates around that primary direction to align the second axis to the given secondary direction.
Ideally, both input axes are orthogonal.
.. tip::
In many cases, the primary and secondary axis inputs are a normal and tangent of a mesh or curve.
Inputs
======
Primary Axis
The amount of rotation around the primary axis.
Secondary Axis
The amount of rotation around the secondary axis.
Properties
==========
Primary Axis
Axis that is aligned exactly to the provided primary direction.
Secondary Axis
Axis that is aligned as well as possible given the alignment of the primary axis.
Outputs
=======
Rotation
Standard rotation value.

View File

@ -7,7 +7,7 @@
:maxdepth: 1 :maxdepth: 1
align_rotation_to_vector.rst align_rotation_to_vector.rst
axis_to_rotation.rst axes_to_rotation.rst
axis_angle_to_rotation.rst axis_angle_to_rotation.rst
euler_to_rotation.rst euler_to_rotation.rst
invert_rotation.rst invert_rotation.rst

View File

@ -9,33 +9,31 @@ Rotate Rotation Node
:align: right :align: right
:alt: Rotate Euler node. :alt: Rotate Euler node.
The *Rotate Rotate Rotation* node applies an additional rotation amount to a rotation value. The *Rotate Rotation* node applies an additional rotation to a given one.
To rotate a :term:`Euler Rotation`, first use the :doc:`/modeling/geometry_nodes/utilities/rotation/euler_to_rotation` To rotate an :term:`Euler Rotation`, first use the :doc:`/modeling/geometry_nodes/utilities/rotation/euler_to_rotation`.
Inputs Inputs
====== ======
Rotation Rotation
The rotation to rotate. The starting rotation.
Rotate By Rotate By
Specifies how much a rotation is rotated. The additional rotation.
Properties Properties
========== ==========
Space Space
Base orientation for the rotation. :Global: Rotate in :term:`Global Space`.
:Local: Rotate in :term:`Local Space`.
:Global: Rotate a rotation in :term:`Global Space`.
:Local: Rotate a rotation in :term:`Local Space`.
Outputs Outputs
======= =======
Rotation Rotation
The rotated rotation. The resulting rotation.

View File

@ -9,14 +9,14 @@ Rotation to Quaternion Node
:align: right :align: right
:alt: Rotation to Quaternion node. :alt: Rotation to Quaternion node.
The *Rotation to Quaternion* node converts a standard rotation socket value to a The *Rotation to Quaternion* node converts a standard rotation value to a
:ref:`quaternion rotation <quaternion mode>` rotation. :ref:`quaternion rotation <quaternion mode>`.
Inputs Inputs
====== ======
Rotation Rotation
Standard rotation socket value. Standard rotation value.
Outputs Outputs

View File

@ -18,14 +18,18 @@ Inputs
Value Value
Floating-point value to be converted. Floating-point value to be converted.
Decimals Decimals :guilabel:`Float Data Type`
Integer value used to determine the precision of the output value. Integer value used to determine the precision of the output value.
Properties Properties
========== ==========
This node has no properties. Data Type
The type of numerical value to convert to a string.
:Float: Convert a floating-point value to a string.
:Integer: Convert a 32-bit integer to a string.
Outputs Outputs

View File

@ -42,6 +42,17 @@ Inputs
node the input is connected to. node the input is connected to.
.. _modifiers-geometry-nodes-warnings:
Warnings
--------
Nodes that show a warning message in the node editor will also show that message here.
Custom warning messages can be created using the :doc:`/modeling/geometry_nodes/output/warning`.
Output Attributes Output Attributes
----------------- -----------------

View File

@ -17,7 +17,7 @@ When moving, rotating or scaling, if you only want certain axes to be affected,
you can restrict the transformation to those axes. you can restrict the transformation to those axes.
By default the constraint keys are :kbd:`X`, :kbd:`Y` and :kbd:`Z`. By default the constraint keys are :kbd:`X`, :kbd:`Y` and :kbd:`Z`.
This constraint can be restricted to plane if :kbd`Shift` This constraint can be restricted to a plane if :kbd:`Shift`
is pressed or automatically detected if :kbd:`MMB` is pressed. is pressed or automatically detected if :kbd:`MMB` is pressed.
It is worth noting that if you press the same contraint hotkey a second time, It is worth noting that if you press the same contraint hotkey a second time,

View File

@ -68,43 +68,31 @@ Edit the Simulation
Switch to *Particle Edit* from the *Mode* select menu in the header of the 3D Viewport Switch to *Particle Edit* from the *Mode* select menu in the header of the 3D Viewport
to edit the particle's paths/Keyframes. You may need to press :kbd:`T` from within the 3D Viewport to edit the particle's paths/Keyframes. You may need to press :kbd:`T` from within the 3D Viewport
to see the *Particle Edit* panel. Move to the frame you want to edit and use the various *Particle Edit* to see the *Particle Edit* toolbox. Move to the frame you want to edit and use the various
tools to edit your simulation. Work slowly, previewing your changes with :kbd:`Alt-A`, tools to edit your simulation.
and save often so that you can go back to the previous version should something happen,
or that you do not like the latest changes you have made.
.. tip:: To be able to clearly see what you are working on:
#. Open the Options panel in the Toolbar.
#. Select *Point select mode* (see below) in the header of the 3D Viewport.
This will display key points along the particle path.
.. _particle-edit-selecting: .. _particle-edit-selecting:
Selecting Selecting
========= =========
- Single: :kbd:`LMB`. .. tip::
Switch to the *Point select mode* (see below) in the header of the 3D Viewport to be able to
see and select the keypoints.
- Select single: :kbd:`LMB`.
- Add to/remove from selection: :kbd:`Shift-LMB`.
- All: :kbd:`A`. - All: :kbd:`A`.
- None :kbd:`Alt-A` - None: :kbd:`Alt-A`.
- Invert :kbd:`Ctrl-I` - Invert: :kbd:`Ctrl-I`.
- Box select: :kbd:`B`. - Box select: :kbd:`B`.
- Circle Select :kbd:`C`. - Circle Select: :kbd:`C`.
- Lasso Select :kbd:`Ctrl-Alt-LMB`. - Lasso Select: :kbd:`Ctrl-Alt-LMB`.
- Select Linked: Move the mouse over a keypoint and press :kbd:`L`. - Select Linked: Move the mouse over a path and press :kbd:`L` to add all its points to the selection.
- Unselect Linked: Move the mouse over a path and press :kbd:`Shift-L` to remove all its points
from the selection.
- Root/Tips: :menuselection:`Select --> Roots / Tips`. - Root/Tips: :menuselection:`Select --> Roots / Tips`.
.. tip:: Selections
Selections are extremely useful for modifying only the particles that you want.
Hover over a particle path and press :kbd:`L` to link-select it,
hover over the next and press :kbd:`L` to add that path to the selection.
To remove a path, hold :kbd:`Shift` and press :kbd:`L`. To Deselect all press :kbd:`A`.
The method to select individual points is the same as in Edit Mode.
:kbd:`RMB` to select, :kbd:`Shift-RMB` to add/remove a point from the selection.
.. _bpy.ops.particle.select_random: .. _bpy.ops.particle.select_random:

View File

@ -86,7 +86,7 @@ Lasso Mask
:Mode: Sculpt Mode :Mode: Sculpt Mode
:Menu: :menuselection:`Mask --> Lasso Mask` :Menu: :menuselection:`Mask --> Lasso Mask`
:Shortcut: :kbd:`Shift-Ctrl-LMB` :Shortcut: :kbd:`Ctrl-RMB`
Can be used to create a free-form mask, similar to the :ref:`Lasso Mask <tool-lasso-mask>` tool. Can be used to create a free-form mask, similar to the :ref:`Lasso Mask <tool-lasso-mask>` tool.
This is very commonly used. This is very commonly used.