Stan44 b2187693d7 major UI improvements the UI doesn't tank FPS.
there has been a lot of changes and fixes
currently refactoring the code base and optimizing

- Added UI optimizations to improve performance and reduce FPS impact
- Implemented various bug fixes and improvements
- Started code refactoring for better maintainability
- Updated particle system configuration in particles.json
- Modified rendering pipeline for better efficiency
- Updated simulation core logic in sim.py
- Adjusted settings and configuration parameters
- Updated gitignore rules
- Fixed initialization code in __init__.py
2024-12-28 13:29:37 -06:00
2024-12-26 04:11:32 -06:00
2024-12-26 05:02:16 -06:00

Falling Sand Simulation Concept in Python

mostly a concept in python for falling sand simulation i guess the goal is to make a python version of the powder toy which is a falling sand sim the code is not finished yet, but i will update it as i go.

Main Features

  • Particle Physics

    • Gravity and wind effects
    • Temperature dynamics
    • State transitions (melting, freezing, evaporation)
  • Particle Interactions

    • Collision detection
    • Chemical reactions (e.g., water + sand = mud)
    • Heat transfer between particles
  • Special Effects

    • Fire propagation sorta
    • Smoke generation
    • Liquid spreading
  • Optimization Features

    • Spatial partitioning grid
    • Dormant particle tracking
    • Batch processing
    • Static User Interface

Current Features

Working Partial Not Working/Implemented
Gravity Gas Zoom
Liquid/Solid Liquid Pause
Particle Data Fire/Flame Pressure
Brush Sizes Particle Basic Interactions explosiveness
Debugging Info Particle Heat interactions conductiveness
Menus and Buttons Ambient Heat
Wind
Core Physics and Interactions
Core Rendering System

Controls

Key Action
Z Zoom window
ESC Exit Program
C Clear Screen
Space Pause Simulation
Mouse 1 {Left} Spawn Particle with brush size
Mouse 3 {Right} Erase Particles at cursor
Mouse 2 {Middle} Spawn Particle at cursor
Mouse Wheel Up/Down Change Brush size
Description
Project name is a place holder. Sand, sand everywhere even the water is sand!
Readme 804 KiB
Languages
Python 100%