2026-09-18 13:50:36 +00:00
..
2026-09-10 08:11:01 +08:00
2026-08-23 18:58:29 +08:00
2026-08-09 21:41:58 +08:00
2026-09-15 11:40:12 +08:00
2026-08-26 02:50:01 +08:00
2026-08-23 19:11:18 +08:00
2026-09-18 12:47:55 +08:00
2026-08-24 13:38:11 +08:00
2026-08-24 12:39:59 +08:00
2026-09-09 16:50:54 +08:00
2026-08-28 21:47:16 +08:00
2026-08-27 12:54:48 +08:00
2026-08-27 12:54:48 +08:00
2026-08-31 08:56:26 +08:00
2026-08-27 12:54:48 +08:00
2026-08-27 12:54:48 +08:00
2026-08-27 12:54:48 +08:00
2026-08-27 12:54:48 +08:00
2026-08-29 18:12:02 +08:00
2026-08-31 08:56:26 +08:00
2026-08-31 18:07:52 +08:00
2026-08-31 08:52:04 +08:00
2026-09-05 19:08:50 +08:00
2026-09-05 19:09:00 +08:00
2026-09-09 23:24:34 +08:00
2026-09-09 17:22:35 +08:00
2026-09-10 16:46:56 +08:00
2026-09-13 01:03:33 +08:00
2026-09-15 07:25:24 +08:00
2026-09-15 00:27:46 +08:00
2026-09-05 19:09:00 +08:00
2026-08-30 21:32:08 +08:00
2026-08-17 10:10:37 +08:00
2026-08-22 02:30:12 +08:00
2026-09-15 11:34:02 +08:00
2026-08-27 12:54:48 +08:00
2026-09-17 17:19:02 +08:00
2026-09-10 08:34:07 +08:00
2026-09-09 20:59:30 +08:00
2026-08-23 19:36:25 +08:00
2026-08-28 00:01:55 +08:00
2026-09-09 13:35:28 +08:00
2026-09-01 00:56:50 +08:00
2026-08-24 20:32:49 +08:00
2026-09-10 15:07:42 +08:00
2026-09-10 08:35:14 +08:00
2026-09-09 20:59:30 +08:00
2026-08-29 12:18:13 +08:00
feat(hexmap): port the Catlike Coding hex map as a module and interactive example Adds src/modules/hexmap, an editable pointy-top hex grid with 5x5 chunk dirty tracking, per-chunk mesh generation (terrain fans, blend strips, terraces, cliffs, water, river channels, roads, city walls, decorations and a fog overlay), A* pathfinding, reference-counted fog of war, a unit registry with destination-reserving travel, a versioned save payload and a procedural map generator ported from the reference MapGenerator. Ships the interactive example as a new examples/hex-terrain-3d directory; the unrelated mesh.hexterrain procgen example in examples/hex-terrain is left byte-identical to dev.
2026-09-18 10:09:33 +08:00
2026-08-26 03:45:07 +08:00
2026-08-31 17:55:05 +08:00
2026-08-26 08:22:30 +08:00
2026-08-28 15:02:13 +08:00
2026-08-27 12:54:48 +08:00
2026-08-28 15:02:13 +08:00
2026-08-28 15:02:13 +08:00
2026-08-24 12:39:59 +08:00
2026-08-17 13:58:03 +08:00
2026-08-24 23:46:35 +08:00
2026-09-17 19:07:02 +08:00
2026-09-09 23:27:04 +08:00
2026-08-16 21:49:40 +08:00
2026-08-31 08:50:20 +08:00
2026-08-23 16:33:32 +08:00
2026-08-25 08:04:16 +08:00
2026-08-25 08:04:16 +08:00
2026-08-16 13:34:12 +08:00
2026-08-09 21:41:58 +08:00
2026-08-13 10:01:04 +08:00
2026-08-11 02:12:33 +08:00
2026-08-22 10:38:12 +08:00
2026-08-24 13:38:11 +08:00
2026-08-17 22:43:08 +08:00
2026-08-17 22:45:18 +08:00
2026-08-27 12:54:48 +08:00
2026-08-24 15:42:17 +08:00
2026-08-18 21:08:19 +08:00
2026-08-10 13:02:57 +08:00
2026-09-03 21:43:18 +08:00
2026-09-15 15:17:58 +08:00
2026-09-13 12:29:16 +08:00
2026-09-11 08:26:36 +00:00
2026-08-29 09:23:46 +08:00
2026-08-14 10:15:07 +08:00
2026-08-11 00:28:49 +08:00
2026-08-10 00:43:11 +00:00
2026-09-06 17:56:12 +08:00
2026-09-11 14:15:29 +08:00
2026-08-16 03:56:07 +08:00
2026-09-11 08:08:33 +00:00
2026-09-15 11:32:53 +08:00
2026-08-29 03:13:27 +08:00
2026-08-24 22:47:23 +08:00
2026-09-03 00:58:22 +08:00
2026-08-09 21:41:58 +08:00
2026-09-11 16:17:20 +08:00
2026-09-02 11:27:57 +08:00
2026-08-13 10:01:04 +08:00
2026-08-09 21:41:58 +08:00
2026-08-27 12:54:48 +08:00
2026-09-18 13:50:36 +00:00
2026-08-09 16:49:59 +00:00
2026-08-27 12:54:48 +08:00
2026-08-29 18:12:02 +08:00
2026-08-12 17:35:09 +08:00
2026-08-23 19:17:12 +08:00
2026-08-10 13:03:46 +08:00
2026-08-25 13:04:58 +08:00
2026-09-10 08:10:55 +08:00
2026-08-25 22:15:01 +08:00
2026-09-02 08:22:52 +08:00
2026-09-09 20:59:30 +08:00
2026-09-10 14:40:37 +08:00
2026-08-27 12:54:48 +08:00
2026-08-12 20:25:41 +08:00
2026-09-15 07:21:29 +08:00
2026-08-30 03:36:53 +08:00