Skip to content

AshLynxu/Universal-Simulation-Engine

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

30 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Emergent Evolution Simulator

A high-performance, 3D agent-based simulation engine built with Java and Processing. This project simulates complex emergent behaviors including biological evolution (predator-prey dynamics) and social clustering (opinion dynamics) within a voxel-based world.

🧬 Overview

The simulation runs in a 3D grid where different types of agents interact, evolve, and survive. It features a dual-window architecture:

  1. Visualizer (OpenGL/P3D): A real-time 3D render of the world.
  2. Telemetry Dashboard (Swing): A control center for managing simulations, viewing real-time graphs, and spawning headless background workers.

✨ Key Features

  • Hybrid Rendering Engine: Supports both "Legacy" immediate mode and high-performance "Batch" rendering (using GL_QUADS) to handle thousands of agents at 60+ FPS.
  • Spatial Hashing: Custom spatial partition system (World.java) for O(1) neighbor lookups, optimizing collision and perception checks.
  • Multi-threaded Simulation: Run multiple "Headless" simulations in the background without rendering overhead to gather statistical data faster.
  • Evolutionary Mechanics:
    • Bacteria: Mutate virulence levels and evolve dormancy strategies based on energy availability.
    • Host Cells: Evolve resistance to infection; stress triggers high-mutation reproduction.
    • Voters: Demonstrate social segregation (Schelling's model) based on political opinion.

🛠️ Tech Stack

  • Language: Java (JDK 19)
  • Build System: Maven
  • Graphics: Processing 3 Core (P3D) & JOGL (OpenGL)
  • UI: Java Swing (Telemetry Dashboard)

🚀 Getting Started

Prerequisites

  • Java JDK 19 or higher
  • Maven

Installation

  1. Clone the repository.
  2. Build the project using Maven:
mvn clean install

About

Simulation Engine created to test different self organizing principles

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages