Thiết kế Grid Flow Graph
Tóm tắt sử dụng
Grid Flow Graph thường gồm các bước tạo path, rẽ nhánh, thêm item, thêm key-lock và finalize layout. Mỗi node trong graph biến đổi hoặc đánh dấu layout.
Khi generation thất bại, nguyên nhân thường là rule quá chặt, key-lock không có đường hợp lệ, hoặc kích thước grid không đủ cho graph.
Workflow Grid Flow
Grid Flow dùng graph để mô tả logic sinh dungeon trước, sau đó mới hiện thực hóa thành layout và marker.
Một graph thường bắt đầu bằng main path, thêm branch, gắn item/lock/key, rồi finalize layout để builder có thể chuyển thành dungeon.
Khi tạo dungeon trong scene, Dungeon object cần Grid Flow Builder, flow graph asset và theme asset tương thích với marker sinh ra từ graph.
Debug nên đi từ graph preview/layout trước. Nếu layout đã đúng nhưng scene sai, lỗi thường nằm ở theme hoặc prefab.
Các ràng buộc hay làm generation thất bại
Grid quá nhỏ cho số node/path trong graph.
Key-lock đặt sai thứ tự khiến key không nằm ở vùng có thể tới trước lock.
Branch hoặc main path có rule quá chặt, builder không tìm được layout hợp lệ.
Theme thiếu marker cho item, lock, entrance, exit hoặc room category bạn đã khai báo trong graph.
Đối chiếu với mục gốc
Trang gốc có các mục con sau. Bản tiếng Việt này giữ lại cấu trúc điều hướng và media để bạn đối chiếu thao tác trực tiếp: Setup; Create Grid; Create Main Path; Create Alternate Path; Create Treasure Room (Main); Create Treasure Room (Alt); Create Key Room; Create Key-Lock (Main)
Các mục trong trang gốc
- Setup
- Create Grid
- Create Main Path
- Create Alternate Path
- Create Treasure Room (Main)
- Create Treasure Room (Alt)
- Create Key Room
- Create Key-Lock (Main)
- Create Key-Lock (Treasure Main)
- Spawn Enemies (Main, Alt)
- Spawn Bonus (Treasure Chests)
- Spawn Key Guardian
Minh họa từ tài liệu gốc




















































































Ghi chú khi áp dụng trong Unity
- Luôn build thử với nhiều seed sau khi đổi graph, database hoặc theme.
- Nếu generation thất bại, kiểm tra builder config, asset graph, module/theme database và marker trước khi sửa code.
- Với gameplay runtime, hãy đợi dungeon build xong rồi mới spawn player, AI, item hoặc bake/update navigation.