Không biết chi tiết về việc triển khai cụ thể của bạn, thật khó để nói, nhưng nói chung, "xương" chỉ là một thuật ngữ khác cho "khớp" (vị trí 3D sẽ được tạo hình động) hoặc "tham chiếu cộng với khớp cha . "
Điều này
Tuy nhiên, nếu doanh biết được mối quan hệ giữa cha mẹ và con cái, bạn thậm chí sẽ cần xương để làm gì?
ngụ ý với tôi rằng bạn đang sử dụng định nghĩa sau trong hệ thống của mình (có các khớp biết cha mẹ của chúng) và do đó "xương" chỉ là một thuật ngữ khác cho những gì bạn đã có.
Ngoài ra, tại sao bạn cần một lớp riêng, Skeleton để đại diện cho một thực thể 2D (bất cứ điều gì) khi Skeleton chỉ là một mảng của các khớp?
Có vẻ như bạn đang hỏi tại sao bạn muốn có
struct Skeleton {
Array<Joint> bones;
};
thay vì
Array<Joint> skeleton;
Nếu đó là trường hợp, nó thường cho cùng một lý do bạn muốn có một cấu trúc cho một vectơ 3D thay vì vượt qua ba phao ở khắp mọi nơi. Nó gói gọn khái niệm logic mà bạn đang cố gắng thể hiện, cải thiện khả năng đọc ở một mức độ nào đó và cung cấp cho bạn một nơi để kết nối các chức năng liên quan khác nhau (chẳng hạn như, có thể cập nhật tất cả các khớp trong khung với các vị trí mới dựa trên một số dữ liệu hoạt hình đầu vào) .