-
Notifications
You must be signed in to change notification settings - Fork 0
Roadmap
MasterLaplace edited this page Feb 27, 2026
·
7 revisions
- ECS + kernel Ring Buffer proof of concept
- Basic CUDA kernel (gravity + semi-implicit Euler)
- Pinned Memory (zero-copy CPU↔GPU)
- Race conditions resolved (atomics, double buffering, sparse set)
- Kernel module (LKM) with direct packet injection
- Dynamic packets (
[EntityID][CompID][Data]...) - Generic component dispatcher
- Validation: 62.55µs latency, 0% loss, 495 pkt/s
- Refactor from monolithic
engine/+shared/+plugins/to 16 flat modules - Migrate build system from Make to xmake (C++23,
-fno-rtti,-fno-exceptions) - Apply SOLID principles, Doxygen documentation,
.inlinline files, guard clauses - Merge
plugins/bci/into rootbci/module with full DSP pipeline - Integrate VkWrapper as
render/module (Vulkan pipeline) - Move legacy code to
_legacy/directory - Create
engine/facade aggregating all 15 module dependencies - Port CUDA physics from legacy
PhysicsGPU.cutogpu/module - Port kernel module install/uninstall to xmake custom targets
- Implement automatic socket fallback when kernel module unavailable
- Decouple GPU compute from Vulkan renderer for headless server
- Complete authoritative server (
apps/server/main.cpp) - Client with client-side prediction
- EntityRegistry (sparse set + generational IDs)
- SystemScheduler (DAG, component conflict analysis, PreSwap/PostSwap)
- Global double buffering (WorldPartition + Partition)
- ThreadPool for SystemScheduler (Fork-Join pattern)
- Unified Network class (driver + socket fallback + dispatch → PacketQueue)
- Bidirectional kernel module (TX ring buffer + kernel thread)
- Sleeping entities (active/dormant)
- Real Octree integration (broadphase collision)
- SIMD Physics (AVX/SSE vectorization)
- Advanced client prediction (Hermite splines)
- Tests with simulated network latency (50-200ms)
- Anti-tunneling: raycast across chunks
Success criteria: 1000+ stable entities at 60Hz with CPU physics.
This phase develops the
bci/module as an experimental research vector, aligned with the SEAMLESS team's paradigms at Inria.
- OpenBCI Cyton driver — 8-channel, 250 Hz, USB serial, lock-free ring buffer
- Per-channel FFT with Hann window (256 pts) — PSD per channel
-
SignalMetrics— Schumacher$R(t)$ , sliding RMS, baseline calibration (12 tests ✅) -
RiemannianGeometry—$\delta_R$ affine-invariant,$D_M$ Mahalanobis, Jacobi (12 tests ✅) -
NeuralMetrics— normalised structfrom_state(),muscle_alert - BCI module architecture (sources, DSP pipeline, metrics, streams)
- Enable BrainFlow, LSL, Eigen external dependencies in xmake
- LSL Outlet — Broadcast corrected EEG timestamps
- Auto-calibration phase (30s rest → compute
baseline_R) - OpenViBE Box Algorithms —
CBoxAlgorithmStabilityMonitor,CBoxAlgorithmMuscleRelaxation - Visual feedback loop conditioned on
NeuralMetrics - Neural signal mapping (motor imagery decoding) → ECS components
Success criteria: Closed-loop BCI pipeline with enriched feedback running < 20ms e2e.
- Broadphase collision via octree + adaptive brute-force
- Narrow-phase AABB (GJK, simplified SAT)
- Collision resolution: impulse-based + positional correction
- Benchmark: 100k+ entities @ 60 FPS stable
- GPU streaming with CUDA streams
- State compression (delta, bitpacking)
- Server Meshing (spatial sharding, chunk migration)
- Dynamic load balancing
Success criteria: 100k+ entities maintained @ 60 FPS stable.
- Photorealistic rendering (NeRF or PBR pipeline)
- Haptic feedback (via
haptic/module) - Spatial audio (via
audio/module) - Custom RTOS for strict determinism
- GPUDirect RDMA (NIC → VRAM direct)
Success criteria: Functional FullDive prototype with multi-modal sensory feedback.
← Executables | Next: Future Ideas →
LplPlugin — Zero-Copy Real-Time VR Engine | Author: MasterLaplace | License: GPL-3.0 | Source Code
This project is a marathon, not a sprint.