Cosmico

Overview

Junior Unity Developer (July 2022 - February 2023)

During my tenure at Cosmico, I contributed to the development of an innovative eLearning app/game designed for students in years 1-6. The primary focus of Cosmico was to create engaging mini-games that facilitated learning in various subjects. As a Junior Unity Developer, I specialized in developing eLearning mini-games for both maths and English.

One notable project was a multiplication maths game where users navigated through space in a rocket, answering multiplication questions to advance. Another project involved a shape recognition game in which users maneuvered a basket to catch shapes relevant to the given questions.

Multiplayer Character Controller on 3D Spherical Worlds
For our open world multiplayer functionality at Cosmico, I developed a sophisticated character controller that allowed users to walk around a spherical planet.

Users had the ability to enter a build-mode, where the camera would seamlessly pan out to provide a comprehensive view of their entire planet. In this mode, users could swipe to rotate their planet and strategically place objects. To achieve fluid camera transitions and enhance the overall user experience, I leveraged Cinemachine, a powerful tool within Unity.

To ensure smooth and responsive character animations, I utilized a character animator combined with a state machine. This setup allowed for the implementation of relevant animations for different actions, such as walking and idle states.

A Live-Ops Shop with Dynamic UI and Pricing
To enhance the flexibility and dynamism of our eLearning app/game, I developed a live-updating shop feature. This allowed us to add new items to the in-game shop without needing to push game updates. We achieved this by integrating a system where we could update a spreadsheet stored on the server with new items. These items were then uploaded to Unity's Cloud Content Delivery (CCD) service. This seamless integration meant that the shop could reflect new additions instantly, providing players with fresh content and maintaining engagement without the need for frequent app updates.

Asynchronous Loading and Addressables

Multiplication and Division Rocket Mini-Game
I created an endless runner mini-game where players would fly around a planet, answering a variety of math challenges. The level design was entirely randomly generated, providing a unique experience each time. This included the generation of math questions, which varied in difficulty based on the user's school year and their previous success with similar questions. By analyzing the player's past performance, I could tailor questions to their ability level, ensuring a balanced and engaging gameplay experience that adapted to their learning needs. The environment below the player was also randomly generated, featuring blocks of land with random tree and prop placement. To enhance the visual appeal and give the game a planetary feel, I used a shader I created in Shader Graph to curve the planes, creating the illusion of a spherical world rather than a flat landscape.

Shapes and Angles Mini-Game
I also created a shapes and angles mini-game. To support this, I developed an extensive catalog of all the shapes we might need for this game and similar mini-games. I then built a system that allowed developers to input specific rules and pull out the shapes and angles they needed based on a user's ability and year group. For instance, we could specify that we wanted to use only 2D shapes with up to six sides, and the catalog would return all possible shapes fitting that criteria.

After generating the appropriate shapes, I pooled these objects and designed them to drop randomly from the top of the screen with random color variations. Some of these shapes represented correct answers, while others were incorrect. Players had to catch the correct shapes in their basket and avoid the wrong ones, making the game both educational and engaging.

Search

What are you looking for?

Search for services and news about the best that happens in the world.

Sign In Form

Sign In

Don't have an account? Register now.

Register Form

Register

Have an account? Sign In.

Menu