Engineering a living digital ecosystem: From 44,000 physics-simulated cells to GPU-accelerated rendering at 60 FPS.

BioBlob represents the intersection of graphics programming, distributed computing, and systems engineering. The core challenge was rendering and simulating 44,000+ interactive biological entities in real-time while maintaining 60 FPS on consumer hardware. This required architecting a multi-threaded rendering pipeline where physics calculations run in Web Workers, GPU shaders handle instanced rendering (reducing 44,000 draw calls to 1), and a custom spatial hash grid enables O(N) collision detection instead of O(N²). The simulation features a complex lifecycle: Cells form Consolidations, which evolve into Entities, which bond to create new Cells—a recursive biological loop requiring careful state management and synchronization. Beyond rendering, the project implements ultrasonic data transmission using ggwave (encoding chat messages into audio frequencies), a custom WebGL post-processing pipeline with retro glitch effects, and a real-time chat interface synchronized with audio playback. Built with Next.js 15, Three.js, Matter.js physics engine, and a MongoDB backend running autonomous simulation cycles via cron jobs.
Architected a GPU-Accelerated Instanced Rendering System: Reduced 44,000 individual draw calls to a single instanced mesh using custom GLSL shaders. Implemented per-instance attributes (drift parameters, time offsets, speed) to ensure each cell has unique behavior while sharing the same geometry, achieving a 99.97% reduction in GPU overhead.

Engineered a Multi-Threaded Physics Pipeline: Offloaded all position calculations to a dedicated Web Worker running Matter.js physics engine. Implemented a 'Star Topology' constraint system where origin cells (Cell-0) anchor consolidation groups, preventing drift while allowing organic clustering. Used spatial hash grids for O(N) collision resolution instead of naive O(N²) pairwise checks.

Built Custom WebGL Shaders for Bio-Luminescent Aesthetics: Designed fragment shaders using Simplex noise and turbulent FBM (Fractal Brownian Motion) to create liquid plasma effects. Implemented multi-directional flow fields with rotating coordinates to simulate swirling organic movement. Each cell features dynamic Fresnel rim lighting and pulsing hot spots for visual depth.

Implemented a Defensive 'Self-Healing' State Synchronization System: Solved race conditions where frontend state updates lagged behind backend simulation cycles. Built a 'Ghost Protocol' that detects disappeared consolidations and triggers independent animations, preventing visual glitches when entities evolve. Used refs instead of state for animation loops to avoid triggering React re-renders during 60 FPS updates.

Designed a Priority-Based Raycasting System: Implemented intelligent hit detection that prioritizes Entities and Cells over Gas Layers. Used throttled raycasting (100ms intervals) and direct DOM manipulation for tooltips to avoid React re-render overhead during mouse movement. Built a spatial grid for efficient mesh intersection testing.

Integrated Ultrasonic Data Transmission (ggwave): Engineered a chat system that encodes messages into audio frequencies using ggwave WASM module. Solved audio quality issues by correctly handling 16-bit signed PCM data and implementing Float32Array conversion. Synchronized typing animations with audio buffer duration using requestAnimationFrame for frame-perfect timing.

Architected a Layered Entity Distribution Algorithm: Solved entity clustering by implementing a spiral distribution pattern around consolidation centers. Used dynamic layer calculation (BASE_SPREAD_RADIUS + layer * LAYER_STEP) to prevent overlap when 1000+ entities surround the same consolidation. Reduced visual congestion by 90% while maintaining organic spatial relationships.

Built a Custom Post-Processing Pipeline: Implemented UnrealBloomPass for bio-luminescent glow effects and a custom RetroGlitchPass with randomized activation windows (30-60s intervals). Used EffectComposer to chain multiple rendering passes while maintaining performance. Dynamically adjusted bloom intensity based on FPS to prevent quality degradation under load.

Engineered a Polymorphic Backend Simulation Scheduler: Built an autonomous system using MongoDB and Hono.js that runs simulation cycles via cron jobs. Implemented complex lifecycle logic: Cells consolidate based on proximity, Consolidations evolve into Entities after reaching critical mass, Entities bond to produce new Cells. Used atomic database operations to prevent race conditions during concurrent updates.

Implemented Adaptive Performance Optimization: Built an FPS monitoring system that dynamically adjusts rendering quality. Drops pixel ratio from 1.0 to 0.6 during camera panning for smooth dragging. Disabled bloom effects when FPS drops below 25. Used environment-based conditional rendering to hide debug HUDs in production builds (process.env.NODE_ENV checks).

Designed a Normalized Multi-Layer Gas Rendering System: Created procedural gas clouds using animated Simplex noise shaders. Implemented a filtering system that hides gas for 'dense' consolidations (evolved entities) and 'ghost' consolidations (currently animating). Used useMemo for instant gas calculation during render to ensure perfect synchronization with cell state changes.

Built a Real-Time Neural Bond Visualization System: Implemented a dynamic line rendering system that connects nearby entities during AI chat responses. Used ShaderMaterial with traveling signal effects (smoothstep-based pulses) and additive blending for glowing green connections. Filtered connections to only show entities within 200-unit range with a maximum of 2 connections per entity to prevent visual clutter.


Visit the live project or check out the source code




Explore more of my work













NOOR
"If Your Dreams do not scare you, they are too small !"
Got a project? Let’s vibe together and
make it ninjaa-precise—get in touch!