Thực Thể (Instances)

../../_images/modeling_geometry-nodes_instances.png

Ba thể loại thực thể.

Ngoài việc lưu trữ dữ liệu thực như khung lưới hoặc đường cong, một hình học có thể lưu trữ các thực thể mà bản thân chúng có thể tham chiếu nhiều hình học hơn, hoặc một đối tượng, hoặc một tập hợp. Mục đích của việc thực thể hóa là cho phép bao gồm nhiều hình học hơn trong kết quả, mà không cần sao chép dữ liệu thực. Chức năng này là do trình kết xuất như Cycles có thể xử lý cùng một dữ liệu hình học ở nhiều vị trí khác nhau tốt hơn so với khi dữ liệu được nhân đôi.

Mỗi thực thể sẽ theo dõi xem nó tương ứng với hình dạng nào, và một Transform (Biến Hóa). Các thực thể cũng có thể lưu trữ thuộc tính "id", được sử dụng để làm nhòe mờ chuyển động chính xác khi các thực thể chuyển động trong hoạt họa.

Nút chính được sử dụng để tạo các thực thể trong các nút hình học là Nút Thực Thể Hóa trên Điểm (Instance on Points Node).

Cảnh báo

Hiện tại, quá trình thực thể hóa từ các nút hình học không thể hòa trộn với quá trình thực thể hóa từ bảng điều khiển Thực Thể Hóa (Instancing) trong trình biên soạn tính chất được.

Thực Thể Hóa Lồng Nhau (Nested Instancing)

Vì các thực thể có thể lưu trữ một hình học và một hình học có thể chứa các thực thể, nên chúng ta có thể thực hiện các thực thể hóa đệ quy. Nói cách khác, có thể thực thể hóa một thực thể, hoặc thậm chí một tập hợp các thực thể. Theo mặc định, Nút Thực Thể Hóa trên Điểm (Instance on Points Node) sẽ tạo các thực thể đệ quy bằng cách thực thể hóa trên các điểm hình học thực và hình học đã được thực thể hóa.

../../_images/modeling_geometry-nodes_instances-nested.png

Một nhóm nút tạo thực thể hóa đệ quy bằng cách nối nút thực thể hóa trên điểm (instance on points).

Ở đây, thực thể hóa đệ quy được sử dụng để phân phối hình học có chứa cả khung lưới và các thực thể. Hình dạng đầu ra chứa một khung lưới "thực" và một nhóm các thực thể. Mỗi thực thể chứa một khung lưới hình cầu và nhiều thực thể của hình học hình nón.

../../_images/modeling_geometry-nodes_instances-nested-tree.png

Cấu trúc cây của hình học thực thể cho ví dụ trên.

Điều làm cho phương pháp này hữu ích là hình học đầu ra chỉ chứa ba khung lưới duy nhất: bình diện, hình cầu và hình nón. Chức năng này sẽ làm cho hiệu suất hoạt động tốt hơn nhiều nếu các khung lưới phức tạp hơn.

Cảnh báo

Hiện tại phần mềm chỉ hỗ trợ tám mức độ thực thể hóa đệ quy cho kết xuất và cổng nhìn mà thôi. Mặc dù các cấu trúc cây sâu hơn của các thực thể có thể được tạo bên trong các nút hình học, song chúng phải được thực hiện ở phần cuối của cấu trúc cây nút.

Xử Lý Thực Thể (Instance Processing)

Hầu hết toàn bộ các nút xử lý hình học đều làm như vậy bằng cách xử lý từng hình học một trong cấu trúc cây các thực thể đầu vào của chúng một cách riêng biệt. Ví dụ, nếu a Nút Bề Mặt Phân Hóa (Subdivision Surface Node) được đặt ở cuối ví dụ trên thì nó sẽ chỉ phải phân chia ba khung lưới, thay vì mỗi một trường hợp của khung lưới. Một ví dụ quan trọng khác là xử lý với kết quả đầu ra của Nút Chuỗi Ký Tự thành Đường Cong (String to Curves Node), trong đó mỗi ký tự duy nhất chỉ phải được xử lý một lần.

Phương pháp này có thể cải thiện hiệu suất hoạt động rất nhiều, nhưng nó có nghĩa là đối với mọi trường hợp của một hình học nhất định, kết quả của một thao tác sẽ giống nhau. Để có kết quả đơn nhất cho mọi trường hợp, chúng ta có thể sử dụng nút Nút Chuyển các Thực Thể thành Thật (Realize Instances Node).