Luật của Wave Function Collapse: có những ô nào, mỗi ô hay gặp đến đâu, và ô nào được đứng cạnh ô nào theo từng hướng. Tiếp...
#include <njin_procgen.h>
Các thuộc tính Public | |
| std::vector< i32 > | tiles {} |
| Các ô (số thứ tự trong tileset; -1 là ô trống cũng là một ô). | |
| std::vector< f32 > | weights {} |
| Độ hay gặp của từng ô. | |
| std::vector< u64 > | allow {} |
| Luật kề, dạng bit: allow[(i * 4 + dir) * words + j / 64] có bit j % 64 nếu ô thứ j được đứng ở hướng dir của ô thứ i. | |
| i32 | words = 0 |
| Số từ 64 bit cho mỗi tập ô. | |
Luật của Wave Function Collapse: có những ô nào, mỗi ô hay gặp đến đâu, và ô nào được đứng cạnh ô nào theo từng hướng.
Dựng bằng wfc_learn() từ một mẫu, hoặc bằng tay với wfc_add_tile() và wfc_allow().
| std::vector<f32> njin::wfc_rules::weights {} |
Độ hay gặp của từng ô.
Lớn: xuất hiện nhiều.
| std::vector<u64> njin::wfc_rules::allow {} |
Luật kề, dạng bit: allow[(i * 4 + dir) * words + j / 64] có bit j % 64 nếu ô thứ j được đứng ở hướng dir của ô thứ i.
Dùng wfc_allow() thay vì sửa trực tiếp.