PGCRYPT/OpenBlender_Train huggingface dataset:
user: Show practical ways to work with NodeCompositorFileOutputItem(bpy_struct) in a Blender add-on or script – include code.

assistant: # NodeCompositorFileOutputItem(bpy_struct)

base class — [`bpy_struct`](bpy.types.bpy_struct.html#bpy.types.bpy_struct "bpy.types.bpy_struct")

*class* bpy.types.NodeCompositorFileOutputItem(*bpy_struct*)
:   color
    :   Color of the corresponding socket type in the node editor

        Type:
        :   float array of 4 items in [0, inf], default (0.0, 0.0, 0.0, 0.0), (readonly)

    format
    :   Type:
        :   [`ImageFormatSettings`](bpy.types.ImageFormatSettings.html#bpy.types.ImageFormatSettings "bpy.types.ImageFormatSettings"), (readonly)

    name
    :   Type:
        :   string, default “”, (never None)

    override_node_format
    :   Use a different format instead of the node format for this file

        Type:
        :   boolean, default False

    save_as_render
    :   Apply render part of display transform when saving byte image

        Type:
        :   boolean, default False

    socket_type
    :   Type:
        :   enum in [Node Socket Data Type Items](bpy_types_enum_items/node_socket_data_type_items.html#rna-enum-node-socket-data-type-items), default `'FLOAT'`

    vector_socket_dimensions
    :   Dimensions of the vector socket

        Type:
        :   int in [2, 4], default 0

    *classmethod* bl_rna_get_subclass(*id*, *default=None*, */*)
    :   Parameters:
        :   **id** (*str*) – The RNA type identifier.

        Returns:
        :   The RNA type or default when not found.

        Return type:
        :   [`bpy.types.Struct`](bpy.types.Struct.html#bpy.types.Struct "bpy.types.Struct") subclass

    *classmethod* bl_rna_get_subclass_py(*id*, *default=None*, */*)
    :   Parameters:
        :   **id** (*str*) – The RNA type identifier.

        Returns:
        :   The class or default when not found.

        Return type:
        :   type
user: Give a detailed overview of Distribute Points in Grid: syntax, arguments, return values, common patterns.

assistant: # Distribute Points in Grid

[image reference removed]

The *Distribute Points in Grid* node generates points within the active region
of a voxel grid. The number and placement of points can be controlled using
the grid’s density values and various distribution parameters.

This node is useful for scattering geometry procedurally inside a volumetric
region, such as distributing particles in a fog volume, populating points in
a simulation domain, or sampling areas defined by a signed distance field (SDF)
or density grid.
user: Provide the full official documentation entry for Space, preserving all code examples.

assistant: While object positions, vertex locations are not clamped, larger values become increasingly imprecise.
To get an idea of the precision you can work with using different scales.
Here’s a table of scales and their associated accuracy:

10:
:   1/1,048,576th

100:
:   1/131,072th

1,000:
:   1/16,384th

10,000:
:   1/1,024th

100,000:
:   1/128th

1,000,000:
:   1/16th
user: Describe Saving Defaults from the Blender manual or Python API, including usage steps and snippets.

assistant: The preferences are automatically saved when changed. This behavior can be changed by following the instructions under
[Auto-Save Preferences](introduction.xhtml#autosave-preferences)

Changing the default startup file can be done via File ‣ Defaults ‣ Save Startup File. See
[Startup File](../../interface/window_system/topbar.xhtml#startup-file).

There are two areas where Blender’s defaults are stored:

Preferences
:   The [Preferences](../../editors/preferences/introduction.xhtml#prefs-menu) file stores keymap, add-ons theme and other options.

Startup File
:   The [Startup File](../../interface/window_system/topbar.xhtml#startup-file) stores the scene and UI setup which are displayed at startup and when
    creating a new file (File ‣ New).
user: What is Inputs and how is it used in Blender Python scripting?

assistant: Selection
:   Faces to participate in the unwrap operation.
    UVs that are part of any other face will not be affected.

Seam
:   Edges to mark where the mesh is “cut” for the purposes of unwrapping.

Margin
:   The distance to leave between UV islands.

Fill Holes
:   Virtually fill holes in mesh before unwrapping, to better avoid overlaps and preserve symmetry.

Method
:   Angle Based:
    :   This method gives a good 2D representation of a mesh.

    Conformal:
    :   Uses LSCM (Least Squares Conformal Mapping). This usually gives a less accurate UV
        mapping than Angle Based, but works better for simpler objects.
user: Show practical ways to work with Introduction in a Blender add-on or script – include code.

assistant: # Introduction

The Dope Sheet offers a bird’s-eye view of the keyframes inside the scene.
It’s inspired by classical hand-drawn animation, where animators make use of a chart
showing exactly when each drawing, sound, and camera move will occur, and for how long.
It is also possible to show [Playback Controls](../../animation/animation_editors.xhtml#animation-editors-footer) to control the playhead.

[image reference removed]

The Dope Sheet.
user: Show practical ways to work with Developer Tools in a Blender add-on or script – include code.

assistant: # Developer Tools

These preferences are reserved for features that aid Blender and add-on development.
This category is hidden by default and is visible enabling
[Developer Extras](interface.xhtml#bpy-types-preferencesview-show-developer-ui).
user: Provide the full official documentation entry for Header, preserving all code examples.

assistant: A header is a small horizontal strip, which sits either at the top or bottom of an area.
All editors have a header acting as a container for menus and commonly used tools.
[Menus](../controls/buttons/menus.html#bpy-types-uipopupmenu) and buttons will change with the editor type and
the selected object and mode.

[image reference removed]

The Header of the 3D Viewport.

### Context Menu

`RMB` on a header reveals a context menu with a couple options:

Show Header
:   Toggles the visibility of the header.
    If a header is hidden, it can be made visible again by clicking or dragging
    the small arrow that appears at the top/bottom right of the editor.

Show Tool Settings
:   Toggles the visibility of the [Tool Settings](#tool-settings).

Show Menus
:   Toggles whether the [Menus](../controls/buttons/menus.html#bpy-types-uipopupmenu) are collapsed or not.

Flip to Bottom/Top
:   Toggles whether the header or Tool Settings appear on the top or bottom of the editor.

Vertical/Horizontal Split
:   Shows an indicator line that lets you select the area and position where to split.
    `Tab` switches between vertical/horizontal.

Maximize Area / Focus Mode
:   See [Maximize Area](areas.html#bpy-ops-screen-screen-full-area).

Duplicate Area into New Window
:   See [Duplicate Area into New Window](areas.html#bpy-ops-screen-area-dupli).

Close Area
:   Closes the area and replaces it with the expansion of a neighboring area.
user: Describe NodeEvaluateClosureOutputItems(bpy_struct) from the Blender manual or Python API, including usage steps and snippets.

assistant: # NodeEvaluateClosureOutputItems(bpy_struct)

base class — [`bpy_struct`](bpy.types.bpy_struct.html#bpy.types.bpy_struct "bpy.types.bpy_struct")

*class* bpy.types.NodeEvaluateClosureOutputItems(*bpy_struct*)
:   new(*socket_type*, *name*)
    :   Add an item at the end

        Parameters:
        :   - **socket_type** (enum in [Node Socket Data Type Items](bpy_types_enum_items/node_socket_data_type_items.html#rna-enum-node-socket-data-type-items)) – Socket Type, Socket type of the item
            - **name** (*string**,* *(**never None**)*) – Name

        Returns:
        :   Item, New item

        Return type:
        :   [`NodeEvaluateClosureOutputItem`](bpy.types.NodeEvaluateClosureOutputItem.html#bpy.types.NodeEvaluateClosureOutputItem "bpy.types.NodeEvaluateClosureOutputItem")

    remove(*item*)
    :   Remove an item

        Parameters:
        :   **item** ([`NodeEvaluateClosureOutputItem`](bpy.types.NodeEvaluateClosureOutputItem.html#bpy.types.NodeEvaluateClosureOutputItem "bpy.types.NodeEvaluateClosureOutputItem"), (never None)) – Item, The item to remove

    clear()
    :   Remove all items

    move(*from_index*, *to_index*)
    :   Move an item to another position

        Parameters:
        :   - **from_index** (*int in* *[**0**,* *inf**]*) – From Index, Index of the item to move
            - **to_index** (*int in* *[**0**,* *inf**]*) – To Index, Target index for the item

    *classmethod* bl_rna_get_subclass(*id*, *default=None*, */*)
    :   Parameters:
        :   **id** (*str*) – The RNA type identifier.

        Returns:
        :   The RNA type or default when not found.

        Return type:
        :   [`bpy.types.Struct`](bpy.types.Struct.html#bpy.types.Struct "bpy.types.Struct") subclass

    *classmethod* bl_rna_get_subclass_py(*id*, *default=None*, */*)
    :   Parameters:
        :   **id** (*str*) – The RNA type identifier.

        Returns:
        :   The class or default when not found.

        Return type:
        :   type
user: Describe Properties from the Blender manual or Python API, including usage steps and snippets.

assistant: Repeat Items
:   [List View](../../../interface/controls/templates/list_view.xhtml#ui-list-view) for adding, removing, reordering, and renaming the inputs of the zone.

    Socket Type
    :   The [data type](../attributes_reference.xhtml#attribute-data-types) of the selected input.

Inspection Index
:   The number of the iteration to show in [socket inspection](../inspection.xhtml#socket-inspection)
    and in the [Viewer Node](../output/viewer.xhtml).
user: Explain NodeCompositorFileOutputItems(bpy_struct) in complete detail according to the official Blender documentation.

assistant: # NodeCompositorFileOutputItems(bpy_struct)

base class — [`bpy_struct`](bpy.types.bpy_struct.html#bpy.types.bpy_struct "bpy.types.bpy_struct")

*class* bpy.types.NodeCompositorFileOutputItems(*bpy_struct*)
:   Collection of file output items

    new(*socket_type*, *name*)
    :   Add an item at the end

        Parameters:
        :   - **socket_type** (enum in [Node Socket Data Type Items](bpy_types_enum_items/node_socket_data_type_items.html#rna-enum-node-socket-data-type-items)) – Socket Type, Socket type of the item
            - **name** (*string**,* *(**never None**)*) – Name

        Returns:
        :   Item, New item

        Return type:
        :   [`NodeCompositorFileOutputItem`](bpy.types.NodeCompositorFileOutputItem.html#bpy.types.NodeCompositorFileOutputItem "bpy.types.NodeCompositorFileOutputItem")

    remove(*item*)
    :   Remove an item

        Parameters:
        :   **item** ([`NodeCompositorFileOutputItem`](bpy.types.NodeCompositorFileOutputItem.html#bpy.types.NodeCompositorFileOutputItem "bpy.types.NodeCompositorFileOutputItem"), (never None)) – Item, The item to remove

    clear()
    :   Remove all items

    move(*from_index*, *to_index*)
    :   Move an item to another position

        Parameters:
        :   - **from_index** (*int in* *[**0**,* *inf**]*) – From Index, Index of the item to move
            - **to_index** (*int in* *[**0**,* *inf**]*) – To Index, Target index for the item

    *classmethod* bl_rna_get_subclass(*id*, *default=None*, */*)
    :   Parameters:
        :   **id** (*str*) – The RNA type identifier.

        Returns:
        :   The RNA type or default when not found.

        Return type:
        :   [`bpy.types.Struct`](bpy.types.Struct.html#bpy.types.Struct "bpy.types.Struct") subclass

    *classmethod* bl_rna_get_subclass_py(*id*, *default=None*, */*)
    :   Parameters:
        :   **id** (*str*) – The RNA type identifier.

        Returns:
        :   The class or default when not found.

        Return type:
        :   type
user: How do I use Selection Mode in Blender? Include parameters, examples, warnings and best practices.

assistant: Vertex:
:   `1` Select vertices.

Edge:
:   `2` Select edges.

Face:
:   `3` Select faces.

If *Sync Selection* is enabled, you can hold `Shift` while clicking a selection mode to
activate multiple ones at the same time, or `Ctrl` to expand/contract the selection.
user: Show practical ways to work with CompositorNodeMovieClip(CompositorNode) in a Blender add-on or script – include code.

assistant: # CompositorNodeMovieClip(CompositorNode)

base classes — [`bpy_struct`](bpy.types.bpy_struct.html#bpy.types.bpy_struct "bpy.types.bpy_struct"), [`Node`](bpy.types.Node.html#bpy.types.Node "bpy.types.Node"), [`NodeInternal`](bpy.types.NodeInternal.html#bpy.types.NodeInternal "bpy.types.NodeInternal"), [`CompositorNode`](bpy.types.CompositorNode.html#bpy.types.CompositorNode "bpy.types.CompositorNode")

*class* bpy.types.CompositorNodeMovieClip(*CompositorNode*)
:   Input image or movie from a movie clip data-block, typically used for motion tracking

    clip
    :   Type:
        :   [`MovieClip`](bpy.types.MovieClip.html#bpy.types.MovieClip "bpy.types.MovieClip")

    *classmethod* is_registered_node_type()
    :   True if a registered node type

        Returns:
        :   Result

        Return type:
        :   boolean

    *classmethod* input_template(*index*)
    :   Input socket template

        Parameters:
        :   **index** (*int in* *[**0**,* *inf**]*) – Index

        Returns:
        :   result

        Return type:
        :   [`NodeInternalSocketTemplate`](bpy.types.NodeInternalSocketTemplate.html#bpy.types.NodeInternalSocketTemplate "bpy.types.NodeInternalSocketTemplate")

    *classmethod* output_template(*index*)
    :   Output socket template

        Parameters:
        :   **index** (*int in* *[**0**,* *inf**]*) – Index

        Returns:
        :   result

        Return type:
        :   [`NodeInternalSocketTemplate`](bpy.types.NodeInternalSocketTemplate.html#bpy.types.NodeInternalSocketTemplate "bpy.types.NodeInternalSocketTemplate")

    update()

    *classmethod* bl_rna_get_subclass(*id*, *default=None*, */*)
    :   Parameters:
        :   **id** (*str*) – The RNA type identifier.

        Returns:
        :   The RNA type or default when not found.

        Return type:
        :   [`bpy.types.Struct`](bpy.types.Struct.html#bpy.types.Struct "bpy.types.Struct") subclass

    *classmethod* bl_rna_get_subclass_py(*id*, *default=None*, */*)
    :   Parameters:
        :   **id** (*str*) – The RNA type identifier.

        Returns:
        :   The class or default when not found.

        Return type:
        :   type
user: What is UV Unwrap Node and how is it used in Blender Python scripting?

assistant: # UV Unwrap Node

[image reference removed]

The *UV Unwrap Node* generates a UV map islands based on a selection of seam edges.
The node implicitly performs a [Pack Islands](pack_uv_islands.html)
operation upon completion, because the results may not be generally useful otherwise.
user: How do I use Data in Blender? Include parameters, examples, warnings and best practices.

assistant: Fonts
:   Default location to browse for [text object](../../modeling/texts/index.html) font files.

Textures
:   Default location to browse for image textures.

Sounds
:   Default location to browse for sound files.

Temporary Files
:   The directory for storing temporary save files. The path must reference an existing directory
    or it will be ignored and the systems temporary directory will be used instead.
    When left blank, the systems temporary directory will be used (see [Temporary Directory](../../advanced/blender_directory_layout.html#temp-dir) for details).

### Render

Render Output
:   Where rendered images/videos are saved.

Render Cache
:   The location where cached render images are stored.
user: Give a detailed overview of Calculating Distortion: syntax, arguments, return values, common patterns.

assistant: Before using this node, one has to calculate the lens distortion of the clip. This can be done by adjusting
K1, K2 and K3 values in Movie Clip Editor ‣ Properties ‣ Lens.
For more information on how to edit those values,
[check this out](https://blender.stackexchange.com/questions/15620).
user: How do I use Settings in Blender? Include parameters, examples, warnings and best practices.

assistant: [image reference removed]

Canvas main panel.

Paint Surface
:   A [list](../../interface/controls/templates/list_view.xhtml#ui-list-view) of Dynamic Paint surfaces.
    These surfaces are basically layers of paint, that work independently from each other.
    You can define individual settings for them and bake them separately.

    Is Active
    :   The checkbox toggles whether surface is active at all.
        If not selected no calculations are done.

Below you can set surface type and adjust quality and timing settings.

Format
:   Each surface has a certain format and type.
    Format determines how data is stored and outputted.

    Vertex:
    :   Dynamic Paint operates directly on mesh vertex data.
        Results are stored by point cache and can be displayed in viewports.
        However, using vertex level also requires a highly subdivided mesh to work.

    Image Sequences:
    :   Dynamic Paint generates UV wrapped image files of defined resolution as output.

        Resolution
        :   You can adjust the output image dimensions for the *Image Sequences* surface type.
            For example using 256 will lead to 256×256 image output.
            Doubling the resolution will likely quadruple the baking time and vice versa.

        Anti-Aliasing
        :   [Anti-Aliasing](../../glossary/index.xhtml#term-Anti-Aliasing) to smooth paint edges using a 5× multisampling method.

Frame Start, End
:   Defines surface processing start and end frame.

Sub-Steps
:   Extra samples between frames. They are usually required when there is a very fast brush.
user: How do I use Spiral Node in Blender? Include parameters, examples, warnings and best practices.

assistant: # Spiral Node

[image reference removed]

The *Spiral* node generates a poly spline in a spiral shape.
It can be used to create springs or other similar objects.
By default the spiral twists in a clockwise fashion.
user: Explain Extrude Vertices in complete detail according to the official Blender documentation.

assistant: # Extrude Vertices

Extrude vertices as individual vertices.

|  |  |
| --- | --- |
| ../../../../_images/modeling_meshes_editing_vertex_extrude-vertices_before.png   Vertex selected. | ../../../../_images/modeling_meshes_editing_vertex_extrude-vertices_after.png   Vertices extrude. |
user: What is References and how is it used in Blender Python scripting?

assistant: |  |  |
| --- | --- |
| - [`CompositorNodeConvertToDisplay.display_settings`](bpy.types.CompositorNodeConvertToDisplay.html#bpy.types.CompositorNodeConvertToDisplay.display_settings "bpy.types.CompositorNodeConvertToDisplay.display_settings") - [`ImageFormatSettings.display_settings`](bpy.types.ImageFormatSettings.html#bpy.types.ImageFormatSettings.display_settings "bpy.types.ImageFormatSettings.display_settings") | - [`Scene.display_settings`](bpy.types.Scene.html#bpy.types.Scene.display_settings "bpy.types.Scene.display_settings") |
user: Explain MeshVertex(bpy_struct) in complete detail according to the official Blender documentation.

assistant: # MeshVertex(bpy_struct)

base class — [`bpy_struct`](bpy.types.bpy_struct.html#bpy.types.bpy_struct "bpy.types.bpy_struct")

*class* bpy.types.MeshVertex(*bpy_struct*)
:   Vertex in a Mesh data-block

    co
    :   Type:
        :   [`mathutils.Vector`](mathutils.html#mathutils.Vector "mathutils.Vector") of 3 items in [-inf, inf], default (0.0, 0.0, 0.0)

    groups
    :   Weights for the vertex groups this vertex is member of

        Type:
        :   [`bpy_prop_collection`](bpy.types.bpy_prop_collection.html#bpy.types.bpy_prop_collection "bpy.types.bpy_prop_collection") of [`VertexGroupElement`](bpy.types.VertexGroupElement.html#bpy.types.VertexGroupElement "bpy.types.VertexGroupElement"), (readonly)

    hide
    :   Type:
        :   boolean, default False

    index
    :   Index of this vertex

        Type:
        :   int in [0, inf], default 0, (readonly)

    normal
    :   Vertex Normal

        Type:
        :   [`mathutils.Vector`](mathutils.html#mathutils.Vector "mathutils.Vector") of 3 items in [-inf, inf], default (0.0, 0.0, 0.0), (readonly)

    select
    :   Type:
        :   boolean, default False

    undeformed_co
    :   For meshes with modifiers applied, the coordinate of the vertex with no deforming modifiers applied, as used for generated texture coordinates

        Type:
        :   [`mathutils.Vector`](mathutils.html#mathutils.Vector "mathutils.Vector") of 3 items in [-inf, inf], default (0.0, 0.0, 0.0), (readonly)

    *classmethod* bl_rna_get_subclass(*id*, *default=None*, */*)
    :   Parameters:
        :   **id** (*str*) – The RNA type identifier.

        Returns:
        :   The RNA type or default when not found.

        Return type:
        :   [`bpy.types.Struct`](bpy.types.Struct.html#bpy.types.Struct "bpy.types.Struct") subclass

    *classmethod* bl_rna_get_subclass_py(*id*, *default=None*, */*)
    :   Parameters:
        :   **id** (*str*) – The RNA type identifier.

        Returns:
        :   The class or default when not found.

        Return type:
        :   type
user: Describe Inputs from the Blender manual or Python API, including usage steps and snippets.

assistant: Index
:   The [index](../../geometry/read/input_index.xhtml) of the element in the selected domain
    to retrieve data from, i.e. “the fourth face”, or “the first control point”.

Value
:   The field to retrieve data from.
user: Show practical ways to work with Storyboarding App Template in a Blender add-on or script – include code.

assistant: # Storyboarding App Template

The *Storyboarding* app template provides a ready-to-use setup for creating storyboards
in Blender, combining 2D drawing and scene management tools in one workspace.

It is based on the *2D Animation* template, but adds a configured Video Sequence Editor (VSE)
for organizing shots using the *Sync Scene* feature.

[image reference removed]

The default Storyboarding App template.
user: Describe Empty Hair from the Blender manual or Python API, including usage steps and snippets.

assistant: Adds an empty high-performance curves object and automatically:

- Assigns the active object as the [Surface](../../sculpt_paint/curves_sculpting/introduction.xhtml).
- Set the surface object as the parent of the new object.
- Adds a Geometry Nodes modifier to deform the curves on the surface.
user: Explain Mist Pass in complete detail according to the official Blender documentation.

assistant: Mist can greatly enhance the illusion of depth in your rendering. To create mist,
Blender generates a render layer with a depth map ranging between 0.0 and 1.0
that can be used in the Compositor to generate a mist effect.

Start
:   The distance from the camera at which the mist starts to fade in.

Depth
:   The distance from *Start* of the mist, that it fades in over.
    Objects further from the camera than *Start + Depth* are completely hidden by the mist.

Falloff
:   The curve function that controls the rate of change of the mist’s strength further and further into the distance.

    Quadratic:
    :   Uses the same calculation as light falloff (\(1\over{x^2}\)) and provides the smoothest
        transition from transparent (0.0) to opaque (1.0).

    Linear:
    :   Has a steeper start than quadratic (\(1\over{x}\)).

    Inverse Quadratic:
    :   Has the steepest start (\(1\over{\sqrt{x}}\)) and approaches 1.0 faster than the other two functions.

[image reference removed]

Mist example
([blend-file](https://archive.blender.org/wiki/2015/index.php/File:25-Manual-World-Mist-Example1.blend)).
user: Show practical ways to work with Remove Named Attribute Node in a Blender add-on or script – include code.

assistant: # Remove Named Attribute Node

[image reference removed]

The *Remove Named Attribute* node deletes an attribute with a certain name from its geometry input.
Any attribute that exists on geometry data will be automatically propagated when the geometry storing it
is changed, which can be an expensive operation, so using this node can be a simple way to optimize
the performance of a geometry node tree or even to lower the memory usage of the entire scene.

Almost all named attributes can be removed. For certain [Built-In Attributes](../attributes_reference.xhtml#geometry-nodes-builtin-attributes),
removing it will mean that a default value will be used instead. For example, removing the
[cyclic](../curve/read/is_spline_cyclic.xhtml) attribute on curves means that
all curves will be non-cyclic.
user: How do I use Bpy.Types.Bevelmodifier in Blender? Include parameters, examples, warnings and best practices.

assistant: how_render Modifier.show_in_editmode Modifier.show_on_cage Modifier.show_expanded Modifier.is_active Modifier.use_pin_to_last Modifier.is_override_data Modifier.use_apply_on_spline Modifier.execution_time Modifier.persistent_uid Inherited Functions ¶ bpy_struct.as_pointer bpy_struct.driver_add bpy_struct.driver_remove bpy_struct.get bpy_struct.id_properties_clear bpy_struct.id_properties_ensure bpy_struct.id_properties_ui bpy_struct.is_property_hidden bpy_struct.is_property_overridable_library bpy_struct.is_property_readonly bpy_struct.is_property_set bpy_struct.items bpy_struct.keyframe_delete bpy_struct.keyframe_insert bpy_struct.keys bpy_struct.path_from_id bpy_struct.path_from_module bpy_struct.path_resolve bpy_struct.pop bpy_struct.property_overridable_library_set bpy_struct.property_unset bpy_struct.rna_ancestors bpy_struct.type_recast bpy_struct.values Modifier.bl_rna_get_subclass Modifier.bl_rna_get_subclass_py Next BezierSplinePoint(bpy_struct) Previous BakeSettings(bpy_struct) Copyright &#169; Blender Authors Made with Furo Report issue on this page On this page BevelModifier(Modifier) BevelModifier BevelModifier.affect BevelModifier.angle_limit BevelModifier.custom_profile BevelModifier.edge_weight BevelModifier.face_strength_mode BevelModifier.harden_normals BevelModifier.invert_vertex_group BevelModifier.limit_method BevelModifier.loop_slide BevelModifier.mark_seam BevelModifier.mark_sharp BevelModifier.material BevelModifier.miter_inner BevelModifier.miter_outer BevelModifier.offset_type BevelModifier.profile BevelModifier.profile_type BevelModifier.segments BevelModifier.spread BevelModifier.use_clamp_overlap BevelModifier.vertex_group BevelModifier.vertex_weight BevelModifier.vmesh_method BevelModifier.width BevelModifier.width_pct BevelModifier.bl_rna_get_subclass() BevelModifier.bl_rna_get_subclass_py() Inherited Properties Inherited Functions
user: How do I use Open Shading Language in Blender? Include parameters, examples, warnings and best practices.

assistant: If Open Shading Language is chosen as the rendering backend,
node shaders are translated to OSL code and then compiled and executed by the OSL runtime.
In the process it applies its own extensive set of optimizations, both at compile time and run-time.

Open Shading Language can optimize out Script nodes if their outputs are unused or constant,
even if their OSL shaders have side effects like debug tracing and message passing,
which may be confusing. For that reason message passing with `setmessage` and `getmessage`
should generally not be used for passing information forward in the graph;
explicitly passing information through sockets should be preferred.
user: Provide the full official documentation entry for Animation, preserving all code examples.

assistant: |  |  |
| --- | --- |
| `I` | Insert a [keyframe](../../animation/keyframes/introduction.xhtml). |
| `Alt`-`I` | Clear the keyframe. |
| `Shift`-`Alt`-`I` | Clear all keyframes. |
| `Ctrl`-`D` | Assign a [driver](../../animation/drivers/introduction.xhtml). |
| `Ctrl`-`Alt`-`D` | Clear the driver. |
| `K` | Add the property to the current [keying set](../../animation/keyframes/keying_sets.xhtml). |
| `Alt`-`K` | Remove the property from the current keying set. |
user: Give a detailed overview of Inputs: syntax, arguments, return values, common patterns.

assistant: Format
:   A string using either python format style or Blender’s format specifier.
    For example, `Count: {}` inserts the first input value in place of the {}.

Additional input values (Float, Integer, or String) can be managed in the Format Items list in the sidebar.
user: Show practical ways to work with Tool Context in a Blender add-on or script – include code.

assistant: Because tool node groups have different settings than modifier node groups, you need to change
the [Node Tree Sub-Type](../../editors/geometry_node.xhtml#bpy-types-spacenodeeditor-node-tree-sub-type) in the Geometry Node Editor’s header
to *Tool* in order to edit them.

When this type is selected, the [data-block menu](../../interface/controls/templates/data_block.xhtml#ui-data-block) in the editor’s
header will only show the node groups that have the
[Tool Usage](../../interface/controls/nodes/groups.xhtml#bpy-types-geometrynodetree-is-tool) enabled.

- If you create a new node group while in the *Tool* editor type, the *Tool* Usage will be
  enabled automatically.
- If you want to convert an existing modifier node group, you need to manually enable the
  *Tool* Usage in the Sidebar (and optionally disable the *Modifier* Usage) before switching
  to the *Tool* editor type. Also make sure to set up the [Supported Modes & Object Types](#modeling-geometry-nodes-tools-contexts).
user: Explain Track Preview Widget in complete detail according to the official Blender documentation.

assistant: The widget in this panel is called “Track Preview” and it displays the content of the pattern area.
This helps to check how accurately the feature is being tracked
(controlling that there is no sliding off original position)
and also helps to move the track back to the correct position.
The track can be moved directly using this widget by mouse dragging.

If an anchor is used
(the position in the image which is tracking is different from the position which is used for parenting),
a preview widget will display the area around the anchor position.
This configuration helps in masking some things when there is no good feature at position where
the mask corner should be placed. Details of this technique will be written later.

There is small area below the preview widget which can be used to enlarge the vertical size of
preview widget (the area is highlighted with two horizontal lines).
user: Give a detailed overview of Inputs: syntax, arguments, return values, common patterns.

assistant: UV
:   The UV map to modify.

Selection
:   Faces to consider when packing islands.
    UVs that are part of any other face will not be affected.

Margin
:   The distance to leave between UV islands.

Rotate
:   Allow Rotating islands for best fit.

Method
:   The method to use when considering the shape of each island.

    Bounding Box:
    :   Uses the simple bounding box of the island.

    Convex Hull):
    :   Takes into account the boundary (Convex Hull) of the island.
        This method will not place islands inside holes.

    Exact Shape:
    :   Use the complete shape of the island, including filling any holes or concave regions around the island.
user: Give a detailed overview of NODE_AST_compositor(AssetShelf): syntax, arguments, return values, common patterns.

assistant: # NODE_AST_compositor(AssetShelf)

base classes — [`bpy_struct`](bpy.types.bpy_struct.html#bpy.types.bpy_struct "bpy.types.bpy_struct"), [`AssetShelf`](bpy.types.AssetShelf.html#bpy.types.AssetShelf "bpy.types.AssetShelf")

*class* bpy.types.NODE_AST_compositor(*AssetShelf*)
:   *classmethod* bl_rna_get_subclass(*id*, *default=None*, */*)
    :   Parameters:
        :   **id** (*str*) – The RNA type identifier.

        Returns:
        :   The RNA type or default when not found.

        Return type:
        :   [`bpy.types.Struct`](bpy.types.Struct.html#bpy.types.Struct "bpy.types.Struct") subclass

    *classmethod* bl_rna_get_subclass_py(*id*, *default=None*, */*)
    :   Parameters:
        :   **id** (*str*) – The RNA type identifier.

        Returns:
        :   The class or default when not found.

        Return type:
        :   type
user: How do I use Simplification in Blender? Include parameters, examples, warnings and best practices.

assistant: # Simplification

The *Simplification* modifier merges stroke vertices that lie close to one another,
like the *Decimate* modifier for meshes.

Tolerance
:   Measure for how close points have to be to each other to be merged.
    A higher tolerance means more vertices are merged.

[image reference removed]
user: Provide the full official documentation entry for Options, preserving all code examples.

assistant: [image reference removed]

Opacity Modifier.

Mode
:   The color transformation will be applied to the stroke/fill color or stroke Hardness.
    When Hardness is selected the opacity affects the stroke’s transparency (alpha) from the center to the border.

    Stroke & Fill, Stroke, Fill, or Hardness

Uniform Opacity
:   When enabled, makes the opacity equal for the entire strokes.

    Strength
    :   Absolute opacity for the stroke points.

Opacity Factor
:   Controls the opacity value of the stroke points.
    A value of 1.0 respect the original alpha value of the points,
    a shift less than 1.0 make the points more transparent than originally,
    and a shift greater than 1.0 make the points more opaque than originally.

    Sets value to 2.0 makes the points alpha fully opaque.

### Influence

See [Influence Filters](../introduction.xhtml#grease-pencil-modifier-influence-filters).
user: Give a detailed overview of Attribute Conversion Operator: syntax, arguments, return values, common patterns.

assistant: [image reference removed]

This operator found in the *Attributes* panel of the property editor can change the
domain or data type of an attribute.

Due to ongoing development in the area of attributes, many areas of Blender can not yet work with
the generic (identified with a name, stored on any domain with any data type) attributes used by
geometry nodes. That makes this operator an essential workaround in some cases where existing
tools must be used with data generated from geometry nodes.

Mode
:   Generic:
    :   Interpolate and convert the attribute between the domains and data types described on this page.

    Vertex Group:
    :   Create a [Vertex Group](../meshes/properties/vertex_groups/index.xhtml)
        from the attribute, which corresponds to a float attribute on the point domain.
user: Explain Outputs in complete detail according to the official Blender documentation.

assistant: Geometry
:   The output geometry containing the generated hair curves.

Curves
:   A separate output of the generated curve data for further processing or inspection.

Surface Normal
:   The surface normal direction at each curve’s attachment point.
user: Explain CURVES_UL_attributes(UIList) in complete detail according to the official Blender documentation.

assistant: # CURVES_UL_attributes(UIList)

base classes — [`bpy_struct`](bpy.types.bpy_struct.html#bpy.types.bpy_struct "bpy.types.bpy_struct"), [`UIList`](bpy.types.UIList.html#bpy.types.UIList "bpy.types.UIList")

*class* bpy.types.CURVES_UL_attributes(*UIList*)
:   draw_item(*_context*, *layout*, *_data*, *attribute*, *_icon*, *_active_data*, *_active_propname*, *_index*)

    filter_items(*_context*, *data*, *property*)

    *classmethod* bl_rna_get_subclass(*id*, *default=None*, */*)
    :   Parameters:
        :   **id** (*str*) – The RNA type identifier.

        Returns:
        :   The RNA type or default when not found.

        Return type:
        :   [`bpy.types.Struct`](bpy.types.Struct.html#bpy.types.Struct "bpy.types.Struct") subclass

    *classmethod* bl_rna_get_subclass_py(*id*, *default=None*, */*)
    :   Parameters:
        :   **id** (*str*) – The RNA type identifier.

        Returns:
        :   The class or default when not found.

        Return type:
        :   type
user: Explain Gizmos in complete detail according to the official Blender documentation.

assistant: The *Glare* node provides an interactive gizmo in the Node Editor.
To use it, enable [Active Node Gizmo](../../../editors/compositor.xhtml#bpy-types-spacenodeeditor-show-gizmo-active-node) and
select the *Glare* node.

For the *Sun Beams* type, a cross-shaped gizmo appears in the image preview to set the *Sun Position*.
user: How do I use Navigation in Blender? Include parameters, examples, warnings and best practices.

assistant: ### Lost in Space

When navigating your scene, you may accidentally navigate away from your scene and find yourself with a blank
viewport. There are two ways to fix this:

1. Select an object in the [Outliner](../editors/outliner/index.xhtml), then zoom to that object with
   View ‣ Frame Selected or `NumpadPeriod`.
2. Use `Home` to fit all objects into the 3D Viewport.

### Invisible Limit Zooming In

Sometimes, when navigating, you may be trying to zoom in but it seems that you have hit a limit to how far you can
zoom. This is because Blender uses a central point to orbit around.

In practice, this is good for modeling an object which you rotate many times to see it from all sides (like a potter
using a wheel). However, this makes it awkward to explore a scene or model an object from the ‘inside’, for example.

#### Solutions

- Use [View Dolly](../editors/3dview/navigate/navigation.xhtml#bpy-ops-view3d-dolly).
- Use [Walk/Fly Navigation](../editors/3dview/navigate/walk_fly.xhtml#dview-fly-walk).
- Use [Auto Depth](../editors/preferences/navigation.xhtml#bpy-types-preferencesinput-use-mouse-depth-navigate) and [Zoom to Mouse Position](../editors/preferences/navigation.xhtml#bpy-types-preferencesinput-use-zoom-to-mouse). These tools will make sure the distance is always the value under
  the mouse cursor.
- Use [Zoom Region](../editors/3dview/navigate/navigation.xhtml#bpy-ops-view3d-zoom-border) as it also resets the center point when zooming.
- Center the view around the mouse cursor `Alt`-`MMB`. This will take the position under the cursor and make it
  your viewpoint center.
- Use an NDOF, also known as a 3D mouse, see [configuring peripherals](../getting_started/configuration/hardware.xhtml#hardware-ndof) for more information.
user: Explain GeometryNodeSimulationInput(GeometryNode) in complete detail according to the official Blender documentation.

assistant: # GeometryNodeSimulationInput(GeometryNode)

base classes — [`bpy_struct`](bpy.types.bpy_struct.html#bpy.types.bpy_struct "bpy.types.bpy_struct"), [`Node`](bpy.types.Node.html#bpy.types.Node "bpy.types.Node"), [`NodeInternal`](bpy.types.NodeInternal.html#bpy.types.NodeInternal "bpy.types.NodeInternal"), [`GeometryNode`](bpy.types.GeometryNode.html#bpy.types.GeometryNode "bpy.types.GeometryNode")

*class* bpy.types.GeometryNodeSimulationInput(*GeometryNode*)
:   Input data for the simulation zone

    paired_output
    :   Zone output node that this input node is paired with

        Type:
        :   [`Node`](bpy.types.Node.html#bpy.types.Node "bpy.types.Node"), (readonly)

    *classmethod* is_registered_node_type()
    :   True if a registered node type

        Returns:
        :   Result

        Return type:
        :   boolean

    *classmethod* input_template(*index*)
    :   Input socket template

        Parameters:
        :   **index** (*int in* *[**0**,* *inf**]*) – Index

        Returns:
        :   result

        Return type:
        :   [`NodeInternalSocketTemplate`](bpy.types.NodeInternalSocketTemplate.html#bpy.types.NodeInternalSocketTemplate "bpy.types.NodeInternalSocketTemplate")

    *classmethod* output_template(*index*)
    :   Output socket template

        Parameters:
        :   **index** (*int in* *[**0**,* *inf**]*) – Index

        Returns:
        :   result

        Return type:
        :   [`NodeInternalSocketTemplate`](bpy.types.NodeInternalSocketTemplate.html#bpy.types.NodeInternalSocketTemplate "bpy.types.NodeInternalSocketTemplate")

    pair_with_output(*output_node*)
    :   Pair a zone input node with an output node.

        Parameters:
        :   **output_node** ([`NodeInternal`](bpy.types.NodeInternal.html#bpy.types.NodeInternal "bpy.types.NodeInternal")) – Output Node, Zone output node to pair with

        Returns:
        :   Result, True if pairing the node was successful

        Return type:
        :   boolean

    *classmethod* bl_rna_get_subclass(*id*, *default=None*, */*)
    :   Parameters:
        :   **id** (*str*) – The RNA type identifier.

        Returns:
        :   The RNA type or default when not found.

        Return type:
        :   [`bpy.types.Struct`](bpy.types.Struct.html#bpy.types.Struct "bpy.types.Struct") subclass

    *classmethod* bl_rna_get_subclass_py(*id*, *default=None*, */*)
    :   Parameters:
        :   **id** (*str*) – The RNA type identifier.

        Returns:
        :   The class or default when not found.

        Return type:
        :   type
user: Show practical ways to work with Enabling Add-on in a Blender add-on or script – include code.

assistant: This add-on is enabled by default. In case it is not:

1. Open Blender and go to [Add-ons](../../editors/preferences/addons.xhtml) section of the [Preferences](../../editors/preferences/index.xhtml).
2. Search “UV Layout” and check the *Enable Add-on* checkbox.
user: Describe Inputs from the Blender manual or Python API, including usage steps and snippets.

assistant: Closure
:   The closure to evaluate.
    This input expects a connection from a [Closure Zone](../../../../interface/controls/nodes/types/utilities/closure/closure.xhtml).
    If no closure is connected, the node operates in *pass-through mode* (see below).

### Interface

The node can define additional inputs manually, which are matched by name to the corresponding inputs of the connected
closure. When the closure is connected, these sockets automatically sync to reflect the closure’s defined interface.
user: Explain Bake Pass Filter Type Items in complete detail according to the official Blender documentation.

assistant: # Bake Pass Filter Type Items

NONE:
:   None.

EMIT:
:   Emit.

DIRECT:
:   Direct.

INDIRECT:
:   Indirect.

COLOR:
:   Color.

DIFFUSE:
:   Diffuse.

GLOSSY:
:   Glossy.

TRANSMISSION:
:   Transmission.
user: Show practical ways to work with Linked in a Blender add-on or script – include code.

assistant: Select geometry connected to already selected elements.
This is often useful when a mesh has disconnected, overlapping parts,
where isolating it any other way would be tedious.
To give more control, you can also enable delimiters in the [Adjust Last Operation](../../../interface/undo_redo.xhtml#bpy-ops-screen-redo-last) panel,
so the selection is constrained by seams, sharp edges, materials or UV islands.

With *Pick Linked* you can also select connected geometry directly under the cursor,
using the `L` shortcut to select or `Shift`-`L` to deselect linked.
This works differently in that it uses the geometry under the cursor instead of the existing selection.
user: Show practical ways to work with Mix Color Node in a Blender add-on or script – include code.

assistant: # Mix Color Node

The *Mix Node* mixes values, colors and vectors inputs
using a factor to control the amount of interpolation.
The *Color* mode has additional blending modes.

[image reference removed]
user: Show practical ways to work with Bpy.Ops.Brush in a Blender add-on or script – include code.

assistant: a scalar Parameters : scalar ( float in [ 0 , 2 ] , ( optional ) ) – Scalar, Factor to scale brush size by bpy.ops.brush. stencil_control ( * , mode = 'TRANSLATION' , texmode = 'PRIMARY' ) ¶ Control the stencil brush Parameters : mode (enum in [ 'TRANSLATION' , 'SCALE' , 'ROTATION' ], (optional)) – Tool texmode (enum in [ 'PRIMARY' , 'SECONDARY' ], (optional)) – Tool bpy.ops.brush. stencil_fit_image_aspect ( * , use_repeat = True , use_scale = True , mask = False ) ¶ When using an image texture, adjust the stencil size to fit the image aspect ratio Parameters : use_repeat ( boolean , ( optional ) ) – Use Repeat, Use repeat mapping values use_scale ( boolean , ( optional ) ) – Use Scale, Use texture scale values mask ( boolean , ( optional ) ) – Modify Mask Stencil, Modify either the primary or mask stencil bpy.ops.brush. stencil_reset_transform ( * , mask = False ) ¶ Reset the stencil transformation to the default Parameters : mask ( boolean , ( optional ) ) – Modify Mask Stencil, Modify either the primary or mask stencil Next Buttons Operators Previous Boid Operators Copyright &#169; Blender Authors Made with Furo Report issue on this page On this page Brush Operators asset_activate() asset_delete() asset_edit_metadata() asset_load_preview() asset_revert() asset_save() asset_save_as() scale_size() stencil_control() stencil_fit_image_aspect() stencil_reset_transform()
user: Show practical ways to work with Mask Display in a Blender add-on or script – include code.

assistant: # Mask Display

This popover controls how masks are displayed in Mask mode.

Spline
:   Toggles the display of the mask splines. Note that if they’re hidden,
    you won’t be able to edit them.

    Edge Display Type
    :   Line style of the splines.

Overlay
:   Visualizes masks by shading the whole clip.

    Overlay Mode
    :   Alpha Channel:
        :   Displays just the masks as a grayscale image. Excluded areas are black,
            while included areas are white.

        Combined:
        :   Displays the clip with excluded areas darkened.

Blending Factor
:   How much excluded areas are darkened when using the “Combined” *Overlay Mode*.
user: How do I use Inputs in Blender? Include parameters, examples, warnings and best practices.

assistant: Image
:   Standard color input.

Brightness
:   An additive-type factor by which to increase the overall brightness
    of the image. Use a negative number to darken an image.

Contrast
:   A scaling type factor by which to make brighter pixels brighter, but keeping the darker pixels dark.
    Higher values make details stand out. Use a negative number to decrease the overall contrast in the image.
user: Describe Newtonian from the Blender manual or Python API, including usage steps and snippets.

assistant: # Newtonian

The particles will move according to classical (Newtonian) mechanics.
Particles start their life with the specified initial velocities and angular velocities,
and move according to external forces.
The response to environment and to forces is computed differently,
according to the given integrator chosen by the animator.

[image reference removed]

Newtonian Physics settings.
user: How do I use General Conventions in Blender? Include parameters, examples, warnings and best practices.

assistant: - Use a three-space indentation.
- Limit line length to 120 characters.
- Use italics for button and menu names.
- Avoid using Unicode characters unless strictly necessary.
- Prefer simple sentence structures for clarity.
- Avoid heavily wrapped text (shorter paragraphs and clear sentences are recommended).
user: Describe Absolute Shape Keys from the Blender manual or Python API, including usage steps and snippets.

assistant: [image reference removed]

Absolute Shape Keys options.

See [Relative or Absolute Shape Keys](introduction.xhtml#animation-shapekeys-relative-vs-absolute).

With absolute shape keys, the value shown for each shape in the list represents
the *Evaluation Time* at which that shape key will be active.

Re-Time Shape Keys (clock icon)
:   Absolute shape keys are timed, by order in the list, at a constant interval.
    This button resets the timing for the keys. Useful if keys were removed or re-ordered.

Interpolation
:   Controls the interpolation between shape keys.

    Linear, Cardinal, Catmull-Rom, B-Spline

    [image reference removed]

    Different types of interpolation.

    The red line represents interpolated values between keys (black dots).

Evaluation Time
:   Controls the shape key influence. Scrub to see the effect of the current configuration.
    Typically, this property is keyed for animation or rigged with a driver.