Một lưới tam giác do game tự dựng, cho model_create(): địa hình sinh theo seed, hình ghép lúc chạy. Tiếp...
#include <njin_3d.h>
Các thuộc tính Public | |
| const vec3 * | positions = nullptr |
| Vị trí vertex_count đỉnh. | |
| const vec3 * | normals = nullptr |
| Pháp tuyến từng đỉnh (độ dài 1). | |
| const rgba * | colors = nullptr |
| Màu từng đỉnh, nhân với màu vật liệu. | |
| const vec2 * | texcoords = nullptr |
| Toạ độ ảnh (UV) từng đỉnh, cho ảnh của vật liệu (model_material_set()): một mảnh cắt từ lưới đã có UV giữ nguyên ảnh của nó. | |
| u32 | vertex_count = 0 |
| Số đỉnh. | |
| const u32 * | indices = nullptr |
| Ba chỉ số một tam giác, ngược chiều kim đồng hồ khi nhìn từ mặt trước. | |
| u32 | index_count = 0 |
| Số chỉ số, bội của 3. | |
Một lưới tam giác do game tự dựng, cho model_create(): địa hình sinh theo seed, hình ghép lúc chạy.
Các con trỏ chỉ cần sống đến khi model_create() trả về.
| const vec3* njin::mesh3d_data::normals = nullptr |
Pháp tuyến từng đỉnh (độ dài 1).
nullptr thì engine tự tính: mỗi đỉnh lấy trung bình các tam giác chung nó, nên mặt cong trông mịn.
| const rgba* njin::mesh3d_data::colors = nullptr |
Màu từng đỉnh, nhân với màu vật liệu.
nullptr là trắng.
| const vec2* njin::mesh3d_data::texcoords = nullptr |
Toạ độ ảnh (UV) từng đỉnh, cho ảnh của vật liệu (model_material_set()): một mảnh cắt từ lưới đã có UV giữ nguyên ảnh của nó.
nullptr là (0, 0) mọi đỉnh, tức chỉ có màu.
| const u32* njin::mesh3d_data::indices = nullptr |
Ba chỉ số một tam giác, ngược chiều kim đồng hồ khi nhìn từ mặt trước.
nullptr thì mỗi ba đỉnh liên tiếp là một tam giác. Có chỉ số thì tối đa 65535 đỉnh (chỉ số 16 bit của raylib): chia lưới lớn thành nhiều model.