Attributes(属性)

属性 は、ジオメトリデータブロックの要素ごとに格納されたデータを表す一般的な用語です。例えば、すべての頂点に番号やベクトルを関連付けることができます。 Group Output(グループ出力) ノードに値を接続することで属性を変更できますが、多くのノードで特定の属性の値を変更することもできます。

注釈

属性のデータ型とドメインは、ノードソケットと同様に、可能な場合は暗黙的に変換されます。

名前付き属性

Named attributes are created and used in other areas of Blender like shaders, painting, and UV mapping. In the modifier panel, a named attribute can be used for input by clicking the icon to the right of the value button. The string input input allows you to search and choose existing attributes from the modifier's input geometry.

../../_images/modeling_geometry-nodes_attribute-reference_search.png

属性検索。

属性検索は、各属性に関するコンテキストをいくつか提供します。メニューの左側に、属性ドメインとそれに続く属性名が表示されます。メニューの右側に、属性のデータ型が表示されます。

匿名属性

../../_images/modeling_geometry-nodes_attribute-reference_attribute-field.png

Normal(ノーマル)Rotation(回転) 出力は、ジオメトリに格納されている属性を参照する属性フィールドの例です。

匿名属性は、名前のないジオメトリに保存されている一般的なデータのセットです。通常、Blenderのインターフェースで公開される属性にはすべて名前が付いています。ただし、ジオメトリノードでは、属性をノードソケットで渡すことができます。このような場合、 属性フィールド 出力が作成されます。これは、ノードが入力ジオメトリ内の属性データを検索するために使用されます。

Anonymous attributes are still stored on the geometry like other attributes, and they are even automatically interpolated when the geometry changes with other nodes, except for a few cases. So generally, if the node link is still accessible, the attribute it references will be available too. However, anonymous attributes cannot be connected to a completely separate geometry that was created from a different source. To transfer attributes between separate geometries, the Sample Index Node or other similar nodes like the Sample Nearest Surface Node can be used.

属性のデータ型

属性のタイプは、各要素に格納されているデータの種類です。

Boolean(ブーリアン):

True or false value.

Integer(整数):

32-bit integer.

8ビット整数:

Smaller integer with a range from -128 to 127.

Float:

Floating-point value.

Vector(ベクトル):

3D vector with floating-point values.

2D Vector(2Dベクトル):

2D vector with floating-point values.

Color(カラー):

RGBA color with 32-bit floating-point values.

Byte Color(Byteカラー):

RGBA color with 8-bit positive integer values.

Quaternion(クォータニオン):

Floating point Quaternion rotation.

The above list is in the order of least to most "complex" (An integer can contain more data than a boolean, so it is more complicated). When joining separate geometries together, the more complex data type is preferred when there are matching names. This is particularly important when joining geometry with named attributes with the Join Geometry(ジオメトリ統合)ノード.

To store 2D Vectors (UV maps) and Byte Colors the Store Named Attributeノード must be used because there are no sockets for those types.

Data Conversion

Through the use of Geometry Nodes, data can be converted between types.

有効な変換:

  • Between color and vector -- mapping between color channels and vector components.

  • Between color and float -- the color data is converted to its grayscale equivalent.

  • Between float and integer -- integers simply become floats, floats are truncated.

  • Between float and vector -- when a float becomes a vector the value is used for each component. When a vector becomes a float the average of the components is taken.

  • Between float and boolean -- values greater than 0 are true, true maps to 1, and false maps to 0.

属性ドメイン

属性のドメインは、属性が対応するジオメトリ要素のタイプを指します。属性のドメインを知ることは、それがノードとシェーディングでどのように補間され、使用されるかを定義するため、重要です。 Spreadsheet(スプレッドシート)エディター を使用して、属性のドメインを決定できます。

  • Point(ポイント) ドメイン属性は、位置を持つ空間内の単一の場所に関連付けられています。
    • メッシュの頂点

    • ポイントクラウドのポイント

    • カーブ制御点

  • Edge(辺) ドメイン属性は、メッシュの辺に関連付けられています。

  • Face(面) ドメイン属性は、メッシュの面に関連付けられています。

  • Face Corner(面コーナー) ドメイン属性は、メッシュの面のコーナーに関連付けられています。例として、UVマップ属性があります。

  • Spline(スプライン) ドメイン属性は、接続されたカーブ制御点のグループに関連付けられています。

  • Instance(インスタンス) ドメイン属性は、ジオメトリ内の Instances(インスタンス) に存在します。これらを使用して、ジオメトリデータのコピーにさまざまな値を保存できます。インスタンスドメイン属性は、ジオメトリノードでのみサポートされます。

  • Layer domain attributes are associated with a Grease Pencil Layer.

Attributes are automatically interpolated to other domains. For example, when the Position(位置)ノード is connected to the selection input of the Set Material(マテリアル設定)ノード node, the values are interpolated from the Point domain to the Face domain. Normally, domain conversions use simple averages for values, but Boolean data type attributes have special rules for interpolation:

Boolean(ブーリアン)ドメインの補間

変換元

変換先

Conversion(変換)

Point(ポイント)

Edge(辺)

両方の頂点が選択されている場合、辺が選択されます。

Point(ポイント)

Face(面)

すべての頂点も選択されている場合は、面が選択されます。

Point(ポイント)

Corner(コーナー)

各コーナーの値は、その頂点の値の単なるコピーです。

Point(ポイント)

Spline(スプライン)

すべての制御点が選択されている場合、スプラインが選択されます。

Edge(辺)

Point(ポイント)

接続された辺が選択された場合、頂点が選択されます。

Edge(辺)

Face(面)

A face is selected if all of its edges are selected.

Edge(辺)

Corner(コーナー)

隣接する2つの辺が選択されている場合、コーナーが選択されます。

Face(面)

Point(ポイント)

接続された面のいずれかが選択された場合、頂点が選択されます。

Face(面)

Edge(辺)

接続された面のいずれかが選択されている場合は、辺が選択されます。

Face(面)

Corner(コーナー)

各コーナーの値は、その面の値の単なるコピーです。

Corner(コーナー)

Point(ポイント)

接続されているすべての面コーナーが選択されていて、それが孤立した頂点ではない場合、頂点が選択されます。

Corner(コーナー)

Edge(辺)

隣接する面のすべてのコーナーが選択されている場合、辺が選択されます。

Corner(コーナー)

Face(面)

すべてのコーナーが選択されている場合、面が選択されます。

Spline(スプライン)

Point(ポイント)

各点の値は、スプラインの対応する値の単なるコピーです。

組み込み属性

組み込み属性は常に存在し、削除することはできません。それらのデータ型とドメインは変更できません。

Name(名前)

Type(タイプ)

Domain(ドメイン)

ノート

position

Vector(ベクトル)

Point(ポイント)

Built-in attribute describing vertex or point locations, in the local space of a geometry. Any node that changes the location of points will adjust this attribute, like the Transform Geometry Node and the Set Position(位置設定)ノード.

radius

Float

Point(ポイント)

ビューポート内の点のサイズを設定するために使用されるポイントクラウドの組み込み属性。また、カーブに組み込まれており、メッシュに変換するとき、または他の操作のために、各カーブ制御点のサイズを制御します。

id

Integer(整数)

Point(ポイント)

入力メッシュの形状が変化したときに安定性を提供するために Distribute Points on Faces によって作成され、モーションブラーを作成するためにインスタンスで使用されます。値は、順序なしで大きくなると予想されます。この属性は、 Random Value Node など、ランダム性を生成するノードによって使用されます。他の組み込み属性とは異なり、この属性は必須ではなく、削除できます。

material_index

Integer(整数)

Face(面)

メッシュ内のすべての面のマテリアルスロットを指定するために使用されます。

sharp_edge

Boolean(ブーリアン)

Edge(辺)

Attribute determining if an edge should have flat (rather than smooth) shading enabled in the viewport or a render.

sharp_face

Boolean(ブーリアン)

Face(面)

Attribute determining if a face should have flat (rather than smooth) shading enabled in the viewport or a render.

resolution

Integer(整数)

Spline(スプライン)

スプラインの2つの制御点の間の評価された点の数を決定します。NURBSとベジエスプラインのみがこの属性を持ちます。ポリスプラインの場合、値は常に1です。

cyclic

Boolean(ブーリアン)

Spline(スプライン)

スプラインに、最初と最後の制御点に接続するセグメントがあるかどうかを決定します。

handle_left

Vector(ベクトル)

Point(ポイント)

カーブの始点側にある、カーブ制御点の左側のハンドルの位置を表します。カーブにベジエスプラインが含まれている場合にのみ存在します。

handle_right

Vector(ベクトル)

Point(ポイント)

カーブの終点側にある、カーブ制御点の右側のハンドルの位置を表します。カーブにベジエスプラインが含まれている場合にのみ存在します。

命名規則

これらの属性はデフォルトでは存在しませんが、Blenderの特定の部分によって暗黙的に使用されます。これらの属性のデータ型は、組み込み属性以外の属性と同じように変更できます。ただし、Blenderはこれらの属性に特定のタイプがあると期待している場合があります。

Name(名前)

Type(タイプ)

Domain(ドメイン)

ノート

velocity

Vector(ベクトル)

Point(ポイント)

アニメーションをレンダリングするときにモーションブラーを作成するために使用されます。

rest_position

Vector(ベクトル)

Point(ポイント)

Holds the position of points or vertices from before a geometry is deformed procedurally. Can be created automatically before Shape Keys and Modifiers are evaluated with the Add Rest Position option.

surface_uv_coordinate

2D Vector

Curve

Used to describe curve attachment locations on a mesh surface, typically used for the hair system.

crease_vert

Float

Point(ポイント)

Vertex attribute used by the Subdivision Surface modifier. The values are expected to be in a range of 0 and 1.

crease_edge

Float

Edge(辺)

Edge attribute used by the Subdivision Surface modifier. The values are expected to be in a range of 0 and 1.

uv_seam

Boolean(ブーリアン)

Edge(辺)

True if an edge is considered a boundary between UV islands when unwrapping.

bevel_weight_vert

Float

Point(ポイント)

Used as vertex control for the bevel modifier.

bevel_weight_edge

Float

Edge(辺)

Used as edge control for the bevel modifier.

sculpt_face_set

Integer(整数)

Face(面)

Used by the Sculpt Face Sets Feature.

sculpt_mask

Float

Point(ポイント)

Used by the Sculpt Masking Feature.

sculpt_face_set

Integer(整数)

Face(面)

Used by the Sculpt Face Sets Feature.

カスタム属性

頂点グループ、UVマップ、およびカラー属性は、ジオメトリノードの属性として使用できます。それらはそれらの名前で参照されます。名前の衝突(例えば、同じ名前の頂点グループとUVマップ)は避ける必要があります。名前の衝突がある場合、ジオメトリノードでアクセスできる属性は1つだけです。

他の名前の属性は、その名前を初めて使用するときにノードによって作成することもできます。

Join Geometry(ジオメトリ統合) のようなノードが使用されている場合、ジオメトリノードは必ずしも例えば頂点グループを生成するとは限らないことに注意してください 。同様に、頂点グループ属性のデータ型が最初の "Float" 型から変更された場合、その属性は頂点グループではなくなります。

属性変換オペレーター

../../_images/modeling_geometry-nodes_attribute-reference_convert.png

プロパティエディターの Attributes(属性) パネルにあるこのオペレーターは、属性のドメインやデータ型を変更できます。

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(汎用):

このページで説明しているドメインとデータ型の間で属性を補間や変換します。

Vertex Group(頂点グループ):

ポイントドメインのfloat属性に対応する属性から Vertex Group(頂点グループ) を作成します。

注釈

このオペレーターは、モディファイアーの結果を含まない 元の オブジェクトデータに対してのみ機能するため、ジオメトリノードによって追加や変更された属性は影響を受けません。手続き的に生成される属性のタイプを変更するには、モディファイアーを適用する必要があります。