Skip to content

Releases: MagicMods/SimTouch

Release list

v1.0

Choose a tag to compare

@MagicMods MagicMods released this 04 May 01:12

Phase 1: JS Prototyping Environment

  • Purpose: Rapidly develop, test, visualize, and tune core simulation algorithms intended for the embedded target. Acts as a functional specification.
  • Simulation: Real-time particle-based simulation including:
    • Fluid dynamics (PIC/FLIP methods)
    • Collision detection and response
    • Force fields (Turbulence, Voronoi, Gravity)
    • Noise driven effect field.
    • Boundary interactions
    • Organic behaviours (Swarm, Automata, Chain - planned/experimental)
  • Rendering: WebGL2 rendering for visualization and debugging (Particles, Grid, Boundaries, Data) and use instantiation for grid rendering performance.
  • Portability Focus: Core simulation logic is separated from web-specific rendering/UI components. (See memoLTM/goals.md for detailed scope).
  • Input Handling:
    • Mouse interaction (simulating touch input + receive UDP)
    • External Input Integration (EMU forces via UDP)
    • Microphone input processing with a comprehensive band filtering/visualisation + parameter modulation control
    • Joystick simulating gravity (act as an abstraction and tuning for external inputs)
  • UDP Communication: Sends simulation state (grid specs + cells data) to an external device (acting as a "Slave" display in Phase 1). Each cell's data in the grid conceptually represents the state for a corresponding external actuator (potential 1:1 mapping), or specific cell indices can be selected for targeted data extraction. Also sends touch and Emu data back to Js Sim.
  • UI Controls: Interactive UI (lil-gui) for real-time parameter tweaking.
  • Modulation: Includes a Pulse Modulator system synced on a Beat Per Minutes.
  • Embedded device: Simple firmware, acting as slave, mirroring Sim's grid and sending back Touch and Emu data via UDP. Serial is used for runtime debugging.