Serkyo
dae0bafcd3
refactor(client): abstract chunk mesh upload behind a MeshSink trait
2026-07-26 20:19:27 +02:00
Serkyo
2abe08bf57
chore(client): add crossbeam-channel dependency
2026-07-26 20:14:38 +02:00
Serkyo
5e1b4de98b
test(client): relocate chunk streaming tests into src/tests
2026-07-23 03:45:21 +02:00
Serkyo
79543002b1
feat(client): retain chunk voxels and re-mesh neighbours on load and drop
2026-07-23 03:40:16 +02:00
Serkyo
d2f4beb5af
refactor(client): mesh chunks via the renderer and drop the client copy
2026-07-23 02:49:14 +02:00
Serkyo
f465cfeeaf
fix(net): bound chunk delivery channel to apply backpressure
2026-07-22 05:27:01 +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
0a2049bbc9
feat(client): render server-streamed chunks around the camera
2026-07-22 00:17:18 +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
7620c3b54e
feat(client): connect to server and complete handshake
2026-07-14 01:38:58 +02:00
Serkyo
8a5c662e10
chore(client): add reasons to expect attributes
2026-07-13 00:39:49 +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
2891ff1feb
refactor(workspace): centralize serde/postcard/thiserror pins and use concise dep inheritance
2026-07-12 00:41:34 +02:00
Serkyo
82cb8513be
chore(workspace): inherit license-file and normalize package key order
2026-07-11 23:52:20 +02:00
Serkyo
0fedd1b30b
chore(workspace): refactored the way some comments were written across the repository
2026-07-10 17:38:07 +02:00
Serkyo
7ce3bb8577
refactor(server): propagate config-load errors via anyhow
2026-07-08 15:14:45 +02:00
Serkyo
e940cf560e
chore(workspace): centralize shared deps and unify glam to 0.33
2026-07-08 15:05:55 +02:00
Serkyo
8045c3cae3
refactor(workspace): use #[expect] over #[allow] for lint suppressions
2026-07-07 01:28:56 +02:00
Serkyo
ea6fbf1624
feat(client): add free-fly camera with wasd and mouse-look
2026-07-06 00:20:57 +02:00
Serkyo
102c75a514
refactor(workspace): rename project codename from Catalyst to Synvael
2026-06-27 22:57:08 +02:00
Serkyo
cd7ab3a3c5
chore(workspace): add SPDX identifiers to source files
2026-05-17 21:06:39 +02:00
Serkyo
de17b143db
chore(workspace): declare license metadata in Cargo.toml
2026-05-17 21:06:13 +02:00
Serkyo
4130ebf5f9
fix(client): drop renderer before window on shutdown
...
Reorder the fields of App so renderer is declared before window. Rust
drops struct fields in declaration order, and the renderer owns a
Vulkan surface tied to the window's display-server handle; tearing the
window down first leaves the surface dangling when Renderer::drop runs.
2026-05-16 19:28:54 +02:00
Serkyo
5659469e17
chore(workspace): fix formatting and clippy warnings
2026-05-16 19:05:53 +02:00
Serkyo
61a7fb0ed5
feat(client): implement face culling and voxel rendering
2026-05-16 19:04:27 +02:00
Serkyo
32ef9ca4c6
chore(workspace): finalize clippy requirements and resolve all warnings
2026-05-12 19:03:39 +02:00
Serkyo
34f1a9d989
chore(workspace): enforce missing_docs and resolve all linting violations
2026-05-12 18:52:30 +02:00
Serkyo
fd5d5e4e4b
chore(workspace): configure linters and format codebase
2026-05-12 11:43:17 +02:00
Serkyo
1c3eb69cbf
fix(renderer): align synchronization with working save and force FIFO
2026-05-09 21:49:40 +02:00
Serkyo
1805ae6aa6
feat(renderer): implement robust synchronized render loop
2026-05-09 21:33:57 +02:00
Serkyo
636c44b29f
fix(renderer): handle u32::MAX swapchain extent
...
Fixed a crash where the renderer would attempt to create a swapchain with u32::MAX dimensions when the OS didn't provide a preferred extent. Updated Renderer::new to accept window dimensions and use them as a fallback. Also renamed InstanceCreateFailed to VulkanError for better generality.
2026-04-30 15:17:38 +02:00
Serkyo
347f868af1
feat(renderer): update new() to accept window handles
...
Updated the Renderer constructor to accept RawDisplayHandle and RawWindowHandle, and updated the client to pass these handles during resumption. This is a prerequisite for surface creation.
2026-04-30 14:48:03 +02:00
Serkyo
9ceefc6654
feat(client): initialize renderer and extract vulkan extensions
...
Added ash-window dependency to bridge winit and Vulkan. Extracted raw display handle in the event loop and queried required Vulkan extensions to pass down to the renderer initialization.
2026-04-30 01:38:24 +02:00
Serkyo
d60ccd7918
feat(renderer): implement base Vulkan instance initialization
...
Added ash and thiserror dependencies to the renderer crate. Defined RendererError for typed Vulkan failure handling. Implemented the Renderer struct with basic Vulkan Entry and Instance creation.
2026-04-30 01:29:04 +02:00
Serkyo
9e56bccb05
feat(client): implement main event loop and tracing initialization
...
Added winit event loop with ControlFlow::Poll for continuous rendering, and initialized tracing-subscriber for standardized logging. Also integrated anyhow for robust error handling in the client binary.
2026-04-30 01:02:42 +02:00
Serkyo
c92592600e
Added an empty window using winit
2026-04-28 01:17:27 +02:00
Serkyo
a2488d8015
Initial workspace structure
2026-04-28 00:02:00 +02:00