Inspiration

We wanted to help visualize the physics that occur when planets' orbits are affected by the gravitational pull of other masses.

What It Does

Solary is a solar system sandbox that allows users to add planets to a base solar system model, each with its own orbital path and a randomly assigned mass. It simulates the gravitational effects between all bodies in the system using Newton's law of universal gravitation as they orbit the Sun.

How We Built It

We built Solary using HTML, CSS, and Three.js. These technologies power the webpage's structure, styling, user interface, and core functionality, including position updates, rendering, and physics calculations.

Challenges We Ran Into

Some of our biggest challenges were ensuring that the planetary models moved accurately according to our force calculations and maintaining a stable informational display when users clicked on a planet.

Accomplishments That We're Proud Of

We're proud of the smooth camera controls, the ability to add planets to the simulation, and the minimal user interface. We also take pride in the accurate calculations that help make the experience everything we envisioned.

What We Learned

We significantly improved our understanding of HTML, CSS, and JavaScript, as well as how to implement mathematical and physics-based calculations in a web browser.

What's Next for Solary

In the future, we plan to expand the information available to users and introduce additional simulation features. These may include calculating planetary temperatures based on distance from the Sun, tracking the total number of simulated days, and adding controls to speed up or slow down time. We also hope to introduce more detailed collision animations and allow users to customize planetary masses, taking this simple sandbox to the next level.

Built With

Share this project:

Updates

Submission history