Coding4Food LogoCoding4Food
Trang chủChuyên mụcĐã lưu
en
Coding4Food LogoCoding4Food
Trang chủChuyên mụcĐã lưu
Bảo mật|Điều khoản

© 2026 Coding4Food. Viết bởi dev, cho dev.

Tất cả tin tức
Công nghệCode Ra Tiền

Sốc não với thuật toán Wave Function Collapse: Gen map Hexagon xịn xò không cần dùng AI

10 tháng 3, 20264 phút đọc
adventure, treasure map, old world map, pirates, pirate treasure, map, compass, navigation, navigate, treasure hunt, treasure hunting, pirate map, adventure, adventure, adventure, treasure map, pirates, pirates, map, map, map, map, map, treasure hunt
Nguồn gốc: https://coding4food.com/post/wave-function-collapse-hex-map-procedural-generation. Nội dung thuộc bản quyền Coding4Food. Original source: https://coding4food.com/post/wave-function-collapse-hex-map-procedural-generation. Content is property of Coding4Food. This content was scraped without permission from https://coding4food.com/post/wave-function-collapse-hex-map-procedural-generationNguồn gốc: https://coding4food.com/post/wave-function-collapse-hex-map-procedural-generation. Nội dung thuộc bản quyền Coding4Food. Original source: https://coding4food.com/post/wave-function-collapse-hex-map-procedural-generation. Content is property of Coding4Food. This content was scraped without permission from https://coding4food.com/post/wave-function-collapse-hex-map-procedural-generation
Nguồn gốc: https://coding4food.com/post/wave-function-collapse-hex-map-procedural-generation. Nội dung thuộc bản quyền Coding4Food. Original source: https://coding4food.com/post/wave-function-collapse-hex-map-procedural-generation. Content is property of Coding4Food. This content was scraped without permission from https://coding4food.com/post/wave-function-collapse-hex-map-procedural-generationNguồn gốc: https://coding4food.com/post/wave-function-collapse-hex-map-procedural-generation. Nội dung thuộc bản quyền Coding4Food. Original source: https://coding4food.com/post/wave-function-collapse-hex-map-procedural-generation. Content is property of Coding4Food. This content was scraped without permission from https://coding4food.com/post/wave-function-collapse-hex-map-procedural-generation
wave function collapseprocedural generationhex maphacker newsthuật toán sinh mapgame dev
Chia sẻ bài viết:

Bình luận

Dạo này lướt mạng, đi đâu cũng thấy anh em khoe dùng AI generator để tạo map, vẽ background mượt như Sunsilk chỉ bằng vài câu prompt. Nhưng mà thú thật, mấy trò mì ăn liền đó thỉnh thoảng lại đẻ ra mấy cái dị tật đ*o chịu nổi, sửa còn cực hơn tự làm. Nay mò lên Hacker News, vớ được bài của lão Felix Turner chễm chệ 475 upvotes về trò "Building a Procedural Hex Map with Wave Function Collapse". Đọc xong tự nhiên thấy mấy thuật toán "chạy bằng logic thuần" nó vẫn ở một cái tầm gì đó rất ma giáo anh em ạ.

Cái quái gì là Wave Function Collapse? Tự hành xác hay phép thuật?

Cho mấy đồng đạo nào tối cổ chưa biết, Wave Function Collapse (WFC) không phải là thuyết lượng tử cao siêu gì đâu. Nó là một cái thuật toán sinh map (procedural generation) cực kỳ bá đạo, thường được chuộng trong giới làm game indie.

Hiểu nôm na thế này: Các ông định nghĩa các quy tắc rõ ràng (ví dụ: gạch cỏ không được nằm trực tiếp cạnh gạch dung nham, sông thì phải nối với sông). Sau đó, ném cho nó một mớ tiles, và nó sẽ từ từ tính toán, loại trừ các khả năng (collapse) như chơi Sudoku để lấp đầy bản đồ mà không bị "bể" logic.

Làm WFC trên lưới vuông (grid) bình thường đã đủ cho não anh em nhảy số rồi, đằng này tác giả còn chơi lớn làm trên Hex Map (lưới lục giác). Chơi hệ lục giác thì xịn thật, vì khoảng cách di chuyển giữa các ô đều nhau, nhìn tự nhiên hơn. Nhưng bù lại, số lượng cạnh và hàng xóm của một ô tăng lên, đồng nghĩa với việc code check logic ràng buộc sẽ dễ thành một đống bùi nhùi nếu các ông không tổ chức data structure đàng hoàng. Lão Felix đã bóc tách từng bước: từ việc định nghĩa tile, set socket (khớp nối) cho từng cạnh lục giác, đến việc xử lý backtracking khi thuật toán lỡ đi vào ngõ cụt. Khá là nể!

Giang cư mận Hacker News gáy gì? Phe Noise vs Phe WFC

Dạo qua một vòng các luồng tranh luận, thấy anh em dev chia phe combat cũng gắt lắm:

  • Phe "Hexagons are the Bestagons": Mấy chả này thì cuồng hình lục giác rồi. Khen nức nở vì mấy bài tutorial về WFC trước nay toàn làm trên grid vuông, nay có pháp sư tiên phong làm hệ hex thì vãn bối xin bái phục.
  • Phe "Dùng Perlin Noise cho lẹ": Một cơ số các senior thực dụng thì chê trò WFC này là overkill (chém trâu dùng đao mổ gà). Kiểu: "Tạo map thì tao táng Perlin Noise vào là xong, code WFC làm cái vẹo gì cho cắn RAM ra?". Cơ mà anh em quên mất WFC nó ngon ở chỗ quy tắc logic rạch ròi. Perlin Noise hợp làm địa hình cao thấp (đồi núi), chứ kêu nó gen ra một cái thành phố có đường sá nối nhau hợp lý thì Noise có mà vỡ mồm.
  • Phe trầm cảm vì bug: Vài đạo hữu kể lể chuyện ngày xưa ôm WFC vào game, cấu hình rule ngu một phát là thuật toán rơi vào contradiction (mâu thuẫn không thể giải), kết quả là văng mẹ nó app hoặc sinh ra vòng lặp vô tận.

Chốt hạ: Code dạo học được gì từ cái đống này?

Tóm cái váy lại, vụ này là một ví dụ điển hình của việc hiểu sâu về thuật toán. Giữa cái thời buổi mà ai cũng đè đầu cưỡi cổ API để gen đủ thứ trên đời, thì việc ngồi cày một cái logic thuật toán cốt lõi thế này giúp não mình bớt "phẳng" đi rất nhiều.

Chưa kể nếu anh em đang làm game hoặc app cần sinh data ngẫu nhiên nhưng phải hợp logic, thì WFC là vũ khí tối thượng. Code ngon rồi, đóng gói lại ném lên một con cloud vps nào đấy làm backend sinh map tự động cho user, khéo lại kiếm được bát phở mỗi ngày chứ đùa.

Nguồn hóng hớt: Building a Procedural Hex Map with Wave Function Collapse

Bỏ qua mấy trò AI gen map lỗi tùm lum đi, xem cao nhân Hacker News múa thuật toán Wave Function Collapse tạo bản đồ Hexagon mượt như Sunsilk đây này.

Chia sẻ bài viết:

Bài viết liên quan

technology, computer, internet, digital, hand, data, concept, network, finance, communication, web, abstract, screen, code, information, light, software, connection, development, science, chart
Công nghệChuyện Nghề

Huyền thoại Tony Hoare 'đăng xuất': Cha đẻ Quicksort và cú trượt tay 'Tỷ Đô' Null Pointer

Tin buồn cho cõi mạng IT: Đại tông sư Tony Hoare vừa qua đời. Nhìn lại di sản Quicksort và cái bug Null Pointer tỷ đô làm anh em trầm cảm bao năm qua.

11 thg 34 phút đọc
Đọc tiếp →
man, office, worker, desk, cartoon, computer, laptop, glasses, hunched
Drama ITCông nghệ

Hacker News Cấm Tiệt Dùng AI Viết Comment: Khi Sân Chơi Của Dev Từ Chối Văn Mẫu

Hacker News vừa ra luật cấm dùng AI viết comment hoặc chỉnh sửa. Anh em dev đang gào thét vì mớ văn mẫu sặc mùi ChatGPT. Cùng C4F bóc tách drama này.

12 thg 33 phút đọc
Đọc tiếp →
letter, writing, vintage, love, paper, text, calligraphy, handwriting, typography, abcd, telephone, study, typewriter, antique, book, report
Công nghệĐồ Nghề & Tech Stack

FontCrafter: Khi Dev Đem Nét Chữ 'Gà Bới' Lên Web Để Tra Tấn Đồng Nghiệp

Tool mới lên top Hacker News giúp anh em biến chữ viết tay cẩu thả thành font xịn xò. Trò vui cho indie dev hay thảm họa UI mới?

10 thg 33 phút đọc
Đọc tiếp →
judgment, punishment, justice, court, gavel, guilty, authority, courtroom, criminal, decision, desk, government, hammer, judicial, law, legal, professional, seat, state, table, trial, working, young, system, justice, justice, justice, justice, justice, court, court, court, gavel, law, law, legal, legal, legal, legal, legal
Drama ITCông nghệ

Tòa Mỹ chốt hạ: Đổi luật qua Email, xài tiếp là mặc định dính đòn (TOS Update)

Tòa phúc thẩm Mỹ vừa ra phán quyết: Các công ty công nghệ chỉ cần gửi email đổi TOS, user cứ login xài tiếp là mặc định đã đồng ý. Đỡ phải code UI nhưng user thì toang!

10 thg 34 phút đọc
Đọc tiếp →
macbook, laptop, google, display, screen, work, internet, browser, macbook pro, technology, freelancer, macintosh, computer, iphone, workplace, self-employed, blogger, seo, laptop, laptop, laptop, laptop, laptop, google, google, google, internet, computer, computer, computer, seo
Công nghệChuyện Nghề

FrameBook: Cú Tát Vào Mặt Sự Dư Thừa Của Facebook Hay Lại Một Trò Nghịch Ngầm?

Dự án FrameBook hốt hơn 300 upvote trên Hacker News vì dám 'chọc ngoáy' vào giao diện cồng kềnh của Meta. Cùng C4F soi xem có gì hot!

9 thg 33 phút đọc
Đọc tiếp →
spam, stop sign, junk, web, virus, gray virus, gray web, gray stop, spam, spam, spam, spam, spam
Drama ITCông nghệ

Hacker News Kêu Cứu: Pháp Sư Dùng Bot AI Xả Rác, Dân Tình Đòi "Khóa Mõm" Tà Đạo

Drama mới trên Hacker News: Lính mới xài ChatGPT spam văn mẫu ngập mặt khiến các lão làng đòi cấm cửa. Liệu đóng cửa bảo nhau hay sống chung với lũ?

9 thg 34 phút đọc
Đọc tiếp →