Asteroid Belt

Gameplay Basics Start each round playing as a spaceship while shooting asteroids with your crazy lazy Lazer. Use the mouse cursor to move around and point and click at the incoming space obstacles.

WIP: Collect money by destroying different space objects of different values. Objects are worth more when they require more hits to destroy. Use this money after the round to upgrade your arsenal to make it further in the universe (earn more money for a high score).

Engineering

Player: We made a player that gets the raycast origin on a plane that is casted from the mouse cursor to world point. In other words, we triangulate the mouse cursor and the front of the ship to the corresponding spot on the plane.

Lazer: The lazer is a combination of a particle and a projectile. The particle is just for VFX, while the projectile is both made up of a collider for hit scan.

Plane: The plane is the invisible area on the z axis where the particles/objects spawn from. Objects move closer to you through perspective.

Particle Emitters & Shaders: Particle Emitters are used to instantiate 3d mesh asteroids that have different LOD’s to help with performance. We wanted this to be a challenge to think about how to optimize a game within the confinement of an engine, especially when game engines are the most often used tool to make games.

---- our thoughts -----

Learning Goal:

Eleanor: My goal this hackathon was to have an experience of doing the whole process from ideation to creating a prototype product in a short period. Learning a lot of new skills quickly like GitHub and Unity and figuring out how to solve them in a short period of time provided to be a challenge. I feel like I met my goals this hackathon and had a great time.

Jake: I’ve spent a lot of time working in 2D unity, and I wanted to take a shot at 3D. I knew that a core concept of 3D game development was raycasting and figuring out how to avoid gimbal lock when rotating objects. Rotation is a core part of a game, and I wanted to challenge myself to figure out how to make it feel good to play while also acknowledging ways to cut corners and still create an immersive experience. I struggled with GitHub which is funny because I thought working with quaternions would prove harder, but I learned that it's more about debugging and learning through testing and iteration with 3D that I would do well with. I feel very satisfied with the hackathon and the key indicator was that I spent an almost straight 16 hours working on the project.

Built With

Share this project:

Updates

Submission history