Commit graph

236 commits

Author SHA1 Message Date
Serkyo bb4e591a09 fix(net): split chunk stream reader and writer to avoid frame desync 2026-07-22 14:45:41 +02:00
Serkyo 20d36624c7 fix(net): enable QUIC keep-alive to survive backpressure stalls 2026-07-22 05:27:01 +02:00
Serkyo f465cfeeaf fix(net): bound chunk delivery channel to apply backpressure 2026-07-22 05:27:01 +02:00
Serkyo a20d98a107 feat(renderer): cull chunk meshes outside the view frustum 2026-07-22 05:17:41 +02:00
Serkyo e5d39be400 ci(workspace): guard against raw blobs that should be git lfs 2026-07-22 04:26:35 +02:00
Serkyo 57d8729470 chore(assets): store compiled shaders via git lfs 2026-07-22 04:23:46 +02:00
Serkyo e7c7dc5aea
Merge pull request #6 from Cryoforge-Nexus/feat/chunk-streaming-slice
feat(client): stream and render server-authoritative chunks end-to-end
2026-07-22 04:01:51 +02:00
Serkyo d01f45ec18 chore(client): modified the radius of chunk generated from 4 to 8 2026-07-22 03:29:40 +02:00
Serkyo 653fd24e15 docs(server): document client-server chunk delivery transport 2026-07-22 00:17:18 +02:00
Serkyo 0a2049bbc9 feat(client): render server-streamed chunks around the camera 2026-07-22 00:17:18 +02:00
Serkyo e00ceecab6 feat(net): expose the client chunk stream to the winit loop 2026-07-22 00:06:46 +02:00
Serkyo 9dc7bba3a9 feat(server): stream chunks to clients for their subscribed region 2026-07-22 00:01:57 +02:00
Serkyo 40b97d095e feat(net): carry chunk subscribe and delivery on the chunk stream 2026-07-21 23:53:15 +02:00
Serkyo d12f7ac034 chore(shared): reformat protocol re-exports for rustfmt 1.97 2026-07-21 22:18:58 +02:00
Serkyo 25b088ce0b refactor(server): move region files to 3D (rx, ry, rz) grid 2026-07-21 22:13:58 +02:00
Serkyo b3f10d8f12 feat(shared): add chunk subscribe and delivery message types 2026-07-21 21:57:55 +02:00
Serkyo ce79449a6c refactor(shared): split protocol into stub and control submodule 2026-07-21 21:57:38 +02:00
Serkyo 8cfee29b53 fix(renderer): silence release-build warnings from debug-only validation 2026-07-16 03:01:02 +02:00
Serkyo fd6ec10ce5 fix(renderer): recreate swapchain on resize and out-of-date present 2026-07-16 02:54:23 +02:00
Serkyo 2bf140cf02 feat(client): stream local chunk meshes around camera 2026-07-16 02:24:27 +02:00
Serkyo 60fe2fc294 feat(client): upload origin chunk via renderer insert_mesh 2026-07-16 00:05:30 +02:00
Serkyo 5efe937168 feat(assets): apply per-chunk world offset in voxel vertex shader 2026-07-16 00:05:30 +02:00
Serkyo dd8a969828 feat(renderer): render keyed collection of chunk meshes with per-chunk offset 2026-07-16 00:05:30 +02:00
Serkyo 2ca9ae801d
Merge pull request #5 from Cryoforge-Nexus/feat/networking-foundation
feat(net): QUIC transport foundation — endpoints, codec, and handshake
2026-07-15 18:52:24 +02:00
Serkyo bb33247f96 chore(net): modified doc comments 2026-07-15 18:48:21 +02:00
Serkyo 7620c3b54e feat(client): connect to server and complete handshake 2026-07-14 01:38:58 +02:00
Serkyo e941415836 feat(server): accept QUIC client connections 2026-07-14 01:38:58 +02:00
Serkyo e9d6854e7a feat(net): add threaded tokio runtime bridge for connections 2026-07-14 01:38:50 +02:00
Serkyo 30a45f1c41 docs(net): trim handshake pack-validation TODO comment 2026-07-14 01:18:53 +02:00
Serkyo 7b3908dd7f test(workspace): relocate all tests into per-crate src/tests via #[path] 2026-07-14 00:42:42 +02:00
Serkyo 8e7cd15085 feat(net): perform synvael handshake and graceful disconnect 2026-07-13 23:40:53 +02:00
Serkyo 092d546c52 docs(workspace): standardize function doc sections and enforce # Errors 2026-07-13 21:09:27 +02:00
Serkyo c6d8d1bd70 refactor(net): move NetError into its own error module 2026-07-13 19:56:19 +02:00
Serkyo aa9dc18efe feat(net): add QUIC endpoints with synvael ALPN and self-signed TLS 2026-07-13 14:26:19 +02:00
Serkyo f83a0f1232 chore(shared): add reasons to expect attributes 2026-07-13 00:39:49 +02:00
Serkyo 343ea7605b chore(server): add reasons to expect attributes 2026-07-13 00:39:49 +02:00
Serkyo 6b3ae06031 chore(renderer): add reasons to expect attributes 2026-07-13 00:39:49 +02:00
Serkyo 8a5c662e10 chore(client): add reasons to expect attributes 2026-07-13 00:39:49 +02:00
Serkyo f7e986cb24 feat(net): add length-prefixed postcard frame codec 2026-07-13 00:27:51 +02:00
Serkyo 339c0efe5a feat(shared): support server-pushed resource packs 2026-07-12 16:01:39 +02:00
Serkyo 5c61ecc209 docs(workspace): adopt declarative-first principle for content 2026-07-12 15:49:33 +02:00
Serkyo 41ba2e5d5c feat(shared): add network control-protocol message types 2026-07-12 13:33:36 +02:00
Serkyo ae33251c70 Merge branch 'dev' into feat/networking-foundation
# Conflicts:
#	Cargo.lock
2026-07-12 01:04:16 +02:00
Serkyo fef3d1d549 chore(net): removed redundant licence-file 2026-07-12 01:02:33 +02:00
Serkyo aaff38c784 docs(workspace): add ADR-0010 for net crate and async runtime 2026-07-12 01:02:32 +02:00
Serkyo eb696385b4 Merge branch 'dev' of github.com:Cryoforge-Nexus/Synvael into dev 2026-07-12 00:48:03 +02:00
Serkyo 81c578ad0a chore(workspace): removed redundant license-file 2026-07-12 00:46:25 +02:00
Serkyo eefc9a2a5a docs(workspace): unwrap pre-wrapped module doc comments 2026-07-12 00:41:34 +02:00
Serkyo 2891ff1feb refactor(workspace): centralize serde/postcard/thiserror pins and use concise dep inheritance 2026-07-12 00:41:34 +02:00
Serkyo f0d2269e8f chore(workspace): scaffold net crate for QUIC transport 2026-07-12 00:28:45 +02:00