Skip to content

neoaces/ceophys

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

36 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

neophys - an elementary physics engine

Table of Contents
  1. About The Project
  2. Getting Started
  3. Usage
  4. Roadmap
  5. Contact

About The Project

neophys was originally started as a way to supplement the SPH4U course in the Ontario high school curriculum. ceotest, or as it is called as of writing, is a rewrite to be worked alongside the differential equations and numerical methods courses in the University of Waterloo.

Getting Started

To get a local copy up and running follow these simple example steps.

Prerequisites

Assure that CMake and an appropriate C/C++ compiler is installed on the system.

Installation

  1. Clone the repo
    git clone https://github.com/neoaces/ceotest
  2. cd into the directory
    cd ceotest
  3. Create a build directory
    mkdir build
    cd build
  4. Run the build
    cmake --build .
  5. Run the executable
    ./src/neophys

Usage

The program uses raylib to handle the graphics in the window. Upon execution, the window will enter the test mode, and you will be presented with the values of the test object (coordinates, mass, size). Use the slider bars to adjust the initial conditions before the simulation is run.

Run the simulation with the button in the top-left menu.

Theory

neophys runs off of the RK4 solver algorithm, and uses the concept of "force accumulators", mainly based off Physically Based Modeling: Principles and Practice.

The program itself relies on raylib to handle both graphics and UI/UX, which allows me to focus on the logic instead of the graphics, as in the first prototype ceophys-v1.

Roadmap

  • Gravity, spring, and normal force
  • Multiple particle support
  • Simulation start and stop

See the open issues for a full list of proposed features (and known issues).

Contact

Anzle Chavez - linktr.ee/neocodes - anzlemchavez@gmail.com

Project Link: neoaces/ceotest

About

A rewrite of neophys: an elementary physics engine in C

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors