Thuộc Tính (Attributes)#

"thuộc tính" là một thuật ngữ chung để miêu tả dữ liệu được lưu trữ trên mỗi phần tử trong khối dữ liệu hình học. Ví dụ, mọi điểm đỉnh có thể có một con số hoặc một vectơ liên quan. Các thuộc tính có thể được thay đổi bằng cách kết nối một giá trị với nút "Đầu Ra Nhóm", song cũng có nhiều nút có thể thay đổi giá trị của các thuộc tính cụ thể.

Ghi chú

Các kiểu dữ liệu của thuộc tính và các phạm vi được chuyển đổi hoàn toàn nếu có thể, giống như các ổ cắm nút.

Thuộc Tính được Đặt Tên (Named Attributes)#

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

Tìm Kiến Thuộc Tính.#

Chức năng tìm kiếm thuộc tính cung cấp một phần nào ngữ cảnh về từng thuộc tính. Ở bên trái của trình đơn là nơi phạm vi thuộc tính được hiển thị, tiếp theo là tên thuộc tính. Ở bên phải của trình đơn là nơi kiểu dữ liệu thuộc tính được hiển thị.

Thuộc Tính Ẩn Danh (Anonymous Attributes)#

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

Các kết quả đầu ra của "Pháp Tuyến/Bình Thường" và "Xoay Chiều" là những ví dụ về các trường thuộc tính, tham chiếu đến một thuộc tính được lưu trữ trên một hình học.#

Thuộc tính ẩn danh là một tập hợp dữ liệu chung được lưu trữ trên một hình học không có tên. Thông thường, các thuộc tính được hiển thị trong giao diện của Blender đều có tên. Song, trong các nút hình học, các thuộc tính có thể được truyền xung quanh dùng các ổ cắm nút, và trong những trường hợp này, đầu ra "Trường Thuộc Tính" được kiến tạo, và được các nút sử dụng để tìm dữ liệu thuộc tính trong hình học đầu vào.

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 Nút Chỉ Số Mẫu Vật (Sample Index Node) or other similar nodes like the Nút Mẫu Vật Gần Nhất Bề Mặt (Sample Nearest Surface Node) can be used.

Các Kiểu Dữ Liệu Thuộc Tính (Attribute Data Types)#

Kiểu dữ liệu của thuộc tính là thể loại dữ liệu được lưu trữ tại mỗi phần tử.

Boolean (Lôgic Bool):

True or false value.

Số Nguyên (Integer):

32-bit integer.

Số Nguyên 8-Bit (8-Bit Integer):

Smaller integer with a range from -128 to 127.

Số Thực (Float):

Floating-point value.

Véctơ (Vector):

3D vector with floating-point values.

Véctơ 2D (2D Vector):

2D vector with floating-point values.

Màu Sắc (Color):

RGBA color with 32-bit floating-point values.

Màu Byte (Byte Color):

RGBA color with 8-bit positive integer values.

Quaternion (Quatenion):

Floating point Quaternion rotation.

Danh sách trên theo thứ tự từ ít nhất đến "phức tạp" nhất (Một số nguyên có thể chứa nhiều dữ liệu hơn một giá trị boolean, vì vậy nó phức tạp hơn). Khi nối các hình học biệt lập lại với nhau thì kiểu dữ liệu phức tạp hơn sẽ được ưu tiên khi các tên trùng khớp nhau. Chức năng này đặc biệt quan trọng khi kết hợp hình học với các thuộc tính được đặt tên với Nút Hội Nhập Hình Học (Join Geometry Node)

To store 2D Vectors (UV maps) and Byte Colors the Nút Lưu Thuộc Tính được Đặt Tên (Store Named Attribute Node) 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.

Những chuyển đổi hợp lệ:

  • Giữa màu và vectơ -- ánh xạ giữa các kênh màu và các thành phần vectơ.

  • Giữa màu và Float -- dữ liệu màu sắc được chuyển đổi thành thang độ xám tương đương của nó.

  • 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.

Các Phạm Vi Thuộc Tính (Attribute Domains)#

Phạm vi của thuộc tính ám chỉ đến thể loại phần tử hình học mà thuộc tính đó tương ứng với. Biết phạm vi của một thuộc tính là điều rất quan trọng vì nó xác định cách nó có thể được nội suy và được sử dụng trong các nút và tô bóng. Bạn có thể sử dụng Trình Biên Soạn Bảng Tính (Spreadsheet Editor) để xác định phạm vi của các thuộc tính.

  • "Điểm/Chấm" liên hệ đến các đơn địa điểm trong không gian với một vị trí:

    • Điểm đỉnh của khung lưới

    • Các điểm của một đám mây điểm

    • Xương điều khiển

  • Các thuộc tính phạm vi "cạnh" được liên hệ với các cạnh của khung lưới.

  • Các thuộc tính phạm vi "Mặt" được liên hệ với các mặt của khung lưới.

  • Các thuộc tính phạm vi "Góc Mặt" được liên hệ với các góc của các mặt của khung lưới. Một ví dụ là thuộc tính ánh xạ UV.

  • Các thuộc tính phạm vi "Chốt Trục" được liên hệ với một nhóm các điểm điều khiển đường cong được kết nối.

  • Các thuộc tính phạm vi "Thực Thể"" tồn tại trên các Thực Thể (Instances) trong một hình học. Chúng có thể được sử dụng để lưu trữ các giá trị khác nhau trên các bản sao của dữ liệu hình học. Các thuộc tính phạm vi thực thể chỉ được hỗ trợ trong các nút hình học mà thôi.

Attributes are automatically interpolated to other domains. For example, when the Nút Vị Trí (Position Node) is connected to the selection input of the Nút Đặt Nguyên Vật Liệu (Set Material Node) 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:

Nội Suy Phạm Vi Boolean (Boolean Domain Interpolation)#

Từ

Tới

Chuyển Đổi (Conversion)

Điểm (Point)

Edge (Cạnh)

Một cạnh được chọn nếu cả hai điểm đỉnh của nó đã được chọn.

Điểm (Point)

Face (Mặt)

Một mặt được chọn nếu toàn bộ các điểm đỉnh của nó cũng đã được chọn.

Điểm (Point)

Góc Cạnh (Corner)

Giá trị của mỗi góc chỉ đơn giản là một bản sao của giá trị tại điểm đỉnh của nó.

Điểm (Point)

Chốt Trục (Spline)

Một chốt trục được chọn nếu toàn bộ các điểm điều khiển của nó đã được chọn.

Edge (Cạnh)

Điểm (Point)

Một điểm đỉnh được chọn nếu bất kỳ cạnh kết nối nào đã được chọn rồi.

Edge (Cạnh)

Face (Mặt)

Một mặt được chọn nếu toàn bộ các cạnh của nó được chọn

Edge (Cạnh)

Góc Cạnh (Corner)

Một góc được chọn nếu hai cạnh liền kề của nó được chọn.

Face (Mặt)

Điểm (Point)

Một điểm đỉnh được chọn nếu bất kỳ các mặt nào kết nối được chọn.

Face (Mặt)

Edge (Cạnh)

Một cạnh được chọn nếu bất kỳ mặt kết nối nào đã được chọn.

Face (Mặt)

Góc Cạnh (Corner)

Giá trị của mỗi góc chỉ đơn giản là một bản sao của giá trị ở mặt của nó.

Góc Cạnh (Corner)

Điểm (Point)

Một điểm đỉnh được chọn nếu toàn bộ các góc mặt kết nối đã được chọn và nó không phải là một điểm đỉnh rời rạc.

Góc Cạnh (Corner)

Edge (Cạnh)

Một cạnh được chọn nếu toàn bộ các góc trên các mặt liền kề đã được chọn.

Góc Cạnh (Corner)

Face (Mặt)

Một mặt được chọn nếu toàn bộ các góc của nó đã được chọn.

Chốt Trục (Spline)

Điểm (Point)

Giá trị của mỗi điểm chỉ đơn giản là một bản sao của giá trị tương ứng của chốt trục.

Thuộc Tính Gắn Sẵn (Built-In Attributes)#

Các thuộc tính gắn sẵn luôn luôn tồn tại và không thể bị xóa đi. Chúng ta không thể thay đổi phạm vi và kiểu dữ liệu của chúng được.

Tên (Name)

Thể Loại (Type)

Phạm Vi (Domain)

Ghi Chú (Notes)

"vị trí"

Véctơ

Điểm/Chấm

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 Nút Biến Hóa Hình Học (Transform Geometry Node) and the Nút Đặt Vị Trí (Set Position Node).

"bán kính"

"Float"

Điểm/Chấm

Một thuộc tính gắn sẵn trên đám mây điểm được sử dụng để đặt kích thước cho các điểm trong cổng nhìn. Cái này cũng được gắn sẵn trên các đường cong, nơi nó điều khiển kích thước của mỗi điểm điều khiển đường cong khi được chuyển đổi thành khung lưới hoặc cho các hoạt động khác.

"id"

Số Nguyên

Điểm/Chấm

Được sinh kiến tạo bởi Phân bố các điểm trên các Mặt (Distribute Points on Faces) để cung cấp sự ổn định khi hình dạng của khung lưới đầu vào thay đổi và được sử dụng trên các thực thể để sinh kiến tạo nhòe mờ chuyển động. Giá trị được mong đợi là lớn, không có thứ tự. Thuộc tính này được sử dụng bởi các nút sinh kiến tạo ngẫu, chẳng hạn như Nút Giá Trị Ngẫu Nhiên (Random Value Node). Không giống như các thuộc tính gắn sẵn khác, thuộc tính này không bắt buộc và có thể xóa đi được.

"material_index"

Số Nguyên

Mặt

Được sử dụng để chỉ định khe nguyên vật liệu cho mọi mặt trong khung lưới.

crease

"Float"

Cạnh

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

sharp_edge

"Boolean"

Cạnh

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

sharp_face

"Boolean"

Mặt

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

"độ phân giải"

Số Nguyên

"Chốt Trục"

Xác định số điểm được tính toán giữa hai điểm điều khiển của một chốt trục. Chỉ có NURBS và các chốt trục Bézier mới có thuộc tính này, đối với chốt trục đa phân đoạn, giá trị luôn luôn là một.

"tuần hoàn"

"Boolean"

"Chốt Trục"

Xác định xem chốt trục có một phân đoạn kết nối các điểm điều khiển đầu tiên và cuối cùng của nó hay không.

"handle_left"

Véctơ

Điểm/Chấm

Miêu tả vị trí tay cầm bên trái của điểm điều khiển đường cong, ở bên điểm bắt đầu của đường cong. Chỉ tồn tại khi đường cong chứa đường cong Bézier.

"handle_right"

Véctơ

Điểm/Chấm

Miêu tả vị trí tay cầm bên phải của điểm điều khiển đường cong, ở bên kết thúc đường cong. Chỉ tồn tại khi đường cong chứa đường cong Bézier.

Quy Ước Đặt Tên (Naming Conventions)#

Các thuộc tính này không tồn tại theo mặc định, song được sử dụng ngầm bởi các phần nhất định của Blender. Kiểu dữ liệu của các thuộc tính này có thể được thay đổi, giống như bất kỳ thuộc tính nào ngoài các thuộc tính gắn sẵn. Song, Blender các có thể kỳ vọng là thuộc tính có một kiểu nhất định.

Tên (Name)

Thể Loại (Type)

Ghi Chú (Notes)

"tốc lực"

Véctơ

Được sử dụng để kiến tạo hiệu ứng nhòe mờ chuyển động khi kết xuất hoạt họa.

rest_position

Véctơ

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

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

sculpt_face_set

Số Nguyên

Used by the Sculpt Face Sets Feature.

sculpt_mask

"Float"

Used by the Sculpt Masking Feature.

Các Thuộc Tính Tùy Chỉnh (Custom Attributes)#

Các nhóm điểm đỉnh, ánh xạ UV và Thuộc Tính Màu là những cái có sẵn dưới dạng các thuộc tính trong các nút hình học. Chúng được tham chiếu bằng tên của chúng. Nên tránh sự sử dụng tên trùng lặp trong khi đặt tên (ví dụ: nhóm điểm đỉnh và ánh xạ UV trùng tên). Nếu có xung đột trong tên thì chỉ một trong các thuộc tính là có thể truy cập được trong các nút hình học mà thôi.

Các thuộc tính với bất kỳ tên nào khác cũng có thể được kiến tạo bởi các nút, khi tên được sử dụng lần đầu tiên.

Lưu ý rằng các nút hình học không phải lúc nào cũng tạo ra, ví dụ: các nhóm điểm đỉnh nếu một nút như Hội Nhập Hình Học (Join Geometry) được sử dụng chẳng hạn. Tương tự, nếu kiểu dữ liệu của thuộc tính nhóm điểm đỉnh bị thay đổi từ kiểu "Float" ban đầu, thì thuộc tính đó sẽ không còn là nhóm điểm đỉnh nữa.

Thao Tác Chuyển Đổi Thuộc Tính (Attribute Conversion Operator)#

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

Thao tác này được tìm thấy trong bảng "Thuộc Tính" của trình biên soạn tính chất, có thể thay đổi phạm vi hoặc kiểu dữ liệu của tính chất.

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.

Chế Độ (Mode)
Phổ Thông (Generic):

Nội suy và chuyển đổi thuộc tính giữa các phạm vi và kiểu dữ liệu được miêu tả trên trang này.

Vertex Group (Nhóm Điểm Đỉnh):

Kiến Tạo một Nhóm Điểm Đỉnh (Vertex Group) từ thuộc tính, tương ứng với thuộc tính float trên phạm vi điểm.

Ghi chú

Thao tác này chỉ hoạt động trên dữ liệu đối tượng "gốc/nguyên bản" mà thôi, không bao gồm kết quả của bộ điều chỉnh, vì vậy bất kỳ thuộc tính nào được cho thêm vào hoặc thay đổi bởi các nút hình học sẽ không gây ảnh hưởng. Để thay đổi kiểu của một thuộc tính được sinh tạo theo thủ tục, các bộ điều chỉnh phải được áp dụng.