Các mô hình trong Minecraft được mã hóa cứng. Không có khái niệm về phân cấp khối (chỉ có một danh sách các khối). Điều này có nghĩa là hình ảnh động được thực hiện theo thủ tục (theo cách rất cơ bản) hoặc giá trị được mã hóa cứng với phép nội suy.
Có một vài trình soạn thảo cho các mô hình Minecraft như Techne hoặc FMCModeler cho phép nhập / xuất mã mô hình Minecraft cho các mod, nhưng chúng không hỗ trợ hoạt ảnh vì có thể được xử lý khác nhau cho mỗi mô hình.
Đây là một mẫu nhanh được tạo bằng FMCModeler:
//variables init:
public ModelRenderer box;
//constructor:
box = new ModelRenderer(0, 0);
box.addBox(0F, 0F, 0F, 16, 16, 16);
//render:
box.render(f5);
Một cách tốt hơn để làm điều đó là xây dựng một trình tạo mô hình dựa trên khối đầy đủ với một số khái niệm về phân cấp khối để bạn có thể làm động các mô hình bằng các khung hình chính và nội suy.
Tôi hiện đang xây dựng một công cụ xây dựng trò chơi nhiều người chơi thực hiện điều đó (trong số những thứ khác, http://craftstud.io/ ). Nó đã cho phép xây dựng các mô hình kết cấu tĩnh phức tạp và nhiều hơn nữa đang trên đường.
Đây là một mô hình phức tạp được xây dựng với CraftStudio Như bạn có thể thấy, các khối được sắp xếp trong một cây bên phải:
Mỗi khối được tuần tự hóa vào đĩa / qua mạng với dữ liệu sau:
- ID duy nhất
- ID nút cha
- Vị trí (ảnh hưởng đến con cháu)
- Tỷ lệ (ảnh hưởng đến con cháu)
- Góc (ảnh hưởng đến con cháu)
- Bù đắp từ điểm mấu chốt
- Kích thước khối
- Khối bù kết cấu (bù tọa độ UV cho kết cấu)
Tôi dự định thêm hỗ trợ hoạt hình bằng cách lưu trữ bản đồ với tên hoạt hình làm khóa và danh sách các khung hình chính làm giá trị. Mỗi khung hình chính sẽ được liên kết với một khối và giá trị để tạo hiệu ứng. Giữa các khung hình chính, các giá trị phải được nội suy (theo tuyến tính cho vị trí hoặc hình cầu cho các góc, tìm kiếm lerp và slerp).