CHƯƠNG VI: HỆ THỐNG DIỄN HOẠT 6.1 Giới thiệu về hệ thống diễn hoạt
6.15. Tổ chức quảnlý diễn hoạt
Như ta đê biết, một nhđn vật có một khung xương vă kỉm theo lă một số câc diễn hoạt riíng biệt như đúng, đi, nhảy, tấn công,… chúng ta cần hệ thống diễn hoạt cho phĩp quản lý được tất cả câc diễn hoạt cho một nhđn vật.
Để thực hiện được yíu cầu đó ta phải tổ chức quản lý từ thấp đến cao, từ chi tiết đến tổng quât. Cụ thể ta xđy dựng lớp quản lý một diễn hoạt cho một khớp xương, dựa văo lớp năy ta xđy dựng lớp quản lý một diễn hoạt cho toăn bộ khung xương, vă cuối cùng dựa văo lớp vừa xđy dựng ta xđy dựng tiếp lớp quản lý tất cả câc diễn hoạt cho toăn bộ khung xương, vă cuối cùng dựa văo lớp vừa xđy dựng ta xđy sựng tiếplớp quản lý tất cả câc diễn hoạt cho một khung xương. Tại lớp tổng quât nhất (quản lý toăn bộ diễn hoạt) ta có thể thực hiện câc kết hợpcâc diễn hoạt lại với nhau. Quâ trình tích hợp minh hoạ theo sơ đồ lớp sau:
Trong lớp quản lý diễn hoạt cho một khớp xương ta cần có câc thông tin như sau:
Con trỏ chỉ đến khớp xương trong khung xương mă ta cần quản lý. Tất cả những thông tin về khớp xương sẽ được ta truy cập dựa vẵcn trỏ năy.
Phải lưu câc thông tin diễn hoạt của mộtkhớp xương. Thông tin năy lă một cấu trúc lưu thông tin diễn hoạt được nạp từ tập tin vă chính khớp
xương, về khớp xương cha, về danh sâch câc khung hình của diễn hoạt. Trong lớp quản lý năy ta cần phải cung cấp câc phương thức cho phĩp truy xuất đến vectorvij trí vă quaternion quay của câc khung hình trong chuỗi câc khung hình biến đổi. Chúng ra còn có thể thực hiện cập nhật lại trạng thâi cho khớp xương khi biết khớp xương đang ở văo thời điểm năo của diễn hoạt.
Quản lý diễn hoạt cho toăn bộ khung xương:
Việc quản lý cho toăn bộ khung xương cần có một danh sâch câc lớp quản lý cho một khớp xương. Trong lớp quản lý năy ta cần có một danh sâch câc lớp quản lý cho một khớp xương. Trong lớp quảnlý năy ta cần quản lý câc thông tin liín quan đến diễn hoạt cho khung xương như: khoảng thời gian trôi qua từ khi diễn hoạt từ khung hình thứ nhất, diễn hoạt có lawpj đi lặp lạikhông, khoảng câch di chuyển của khung xương như: khoảng thời gian trôi qua từ khi diễn hoạt từ khung hình thứ nhất, diễn hoạt có lặp đi lặp lại không, khoảng câch di chuyển củakhung xương kể rừ lần cập nhật trước vă tổng khoảng câch di chuyển của khung xương dể tử lầncập nhật trước vă tổng khoảng câch di chuyển của khung xương trong toăn bộ diễn hoạt.
Khi cần cập nhật diễn hoạtcho toăn bộ khung xương ta sẽ thực hiện cập nhật diễn hoạt cho từng khớp xương ở trong khung xương. Trong lớp năy ta cần phải cung cấp câc phương thức cho phĩp hiệu chỉnh thay đổi diễn hoạt nhưvề thời gian diễn hoạt, khoảng câch trong diễn hoạt.
Quản lý tất cả câc diễn hoạt cho khung xương:
Một khung xương có nhiều diễn hoạt, ta cần danh sâch câc đối tượng với mỗi đối tượng quản lý cho một diễn hoạt. Thông thường tại một thời điẻm ta có một diễn hoạt được kích hoạt. Tại lớp năy ta có thểthựchiện câc chứcnăng nđng cao như kết hợp câc diễn hoạt văo một khung xương.