Inspiration
HackBeanpot's Under the Sea Theme immediately got us thinking about the ocean (shocking). Microplastics came to mind pretty soon as they are getting increasing publicity these days. There are several new programmers on our team and several experienced programmers on the team so we thought we'd do something at the intersection of everyone's interests: a web-y, game dev-y, data science-y, web-app.
What it does
Our project brings awareness to the scale and severity of plastic pollution, highlighting its impact to ecosystems, individuals, and the world at large. We display datasets sourced from NOAA about microplastic distribution, and even built a fun little game to illustrate the problem of microplastic pollution (based on the same dataset!).
How we built it
We built our site using Typescript, Nextjs, Tailwindcss, Radix/Shadcn, React, and WebGL (ReactUnity, Threejs). We built our game using Unity in C#. Using our dataset from NOAA, we built a simple collection/survival game and a visualization tool using Threejs.
Challenges we ran into
We ran into a couple challenges regarding processing our data/preparing it for use in Unity; there were some idiosyncracies with the initial data that didn't quite map well with Unity's rendering system. Also related to Unity, WebGL builds are not the most stable and we spent a lot of time debugging those up until the end.
The biggest challenge (and opportunity) was getting two of our teammates exposed to new tech (js, c#, unity, react, git, etc.). They picked it up quick and made super valuable contributions!
Accomplishments that we're proud of
Over the course of the project there were a bunch of things that made us proud! In no particular order (except #1)
- Teaching our team members new technology (and them picking it up!)
- Honing our data preprocessing muscles
- Getting some sound design work in
- Finally solving build issues
- Creating a cool (we think so) site!
- Working well as a team
What we learned
We learned a ton. Again, no order here.
- Our newer teammates learned the basics of: Git, React, Unity, Typescript, C#, etc
- The intricacies of Unity's webGL builds
- How to create some groovy UIs
- How to better preprocess data
- How to efficiently process data
What's next for Ocean Microplastics Mania
We hope that our project will help people understand the urgency and impact of ocean microplastic and garbage pollution. In the future, we'd like to expand the game by enhancing game mechanics! There's a lot to flesh out in that little concept and we enjoyed programming it!
Built With
- c#
- git
- github
- javascript
- nextjs
- noaa
- react
- tailwind
- typescript
- unity
- webgl
Log in or sign up for Devpost to join the conversation.