To play the game, go to: https://hazzelnut.itch.io/snowboarder
My second game made using C# in Unity.
What did I learn? A lot actually.
I learned to use Sprite Shapes, Edge Colliders, Cinemachine Follow Camera, Surface Effector 2D, Particle Effects, Sound Effects, SceneManagement and Delay, etc. and many more.
The most 'wow' moment for me was using the Surface Effector 2D. Instead of using gravity or some force to push the snowboard forward, we use the concept of a 'conveyor belt' applied to the level itself. It speeds up the player when we press 'Up' and goes back to normal speed when not. I thought this was really cool.
Learning how to restart a level was also important. Better than asking the user to restart the game or refresh the browser.
The more subtle learnings were around how a class defined in a script is also a type. And how we can access a game object's properties in code when we attach a script to it. Just like how we can modify those same properties via the Unity UI inspector.
I'm excited to have these new tools under my belt, and I hope to continue using them in future games.
Me in the beginning, trying to combine two separate sprites into one while applying a rigid body.
CharacterCreationBad.mov
The CineMachine Camera! Follows you like a (adjective) (noun) follows a (adjective) (noun).
CinemachineCameraTrimmed.mov
Resetting Scene on collision and passing the finish line.
ResetSceneAtFinishLine.mov
ResetSceneOnCollision.mov
The particle system! One for crashing, and another for finishing. I added more particles to other parts of the game later.
ParticleSystem.mov
And here's the final product!
EverythingTogetherTrimmed.mov
Feel free to give it a try in the link above, and if you have any good ideas let me know! -> hey@okeric.com