Ultimate Chef
In Ultimate Chef, you manage a restaurant that you can decorate and expand while serving customers and completing objectives. You can also compete with friends on the leaderboards to earn the title of Ultimate Chef.
I collaborated with artists, designers, and engineers to develop a unified user interface across more than 40 UI screens, ensuring compatibility with various screen sizes. To maintain consistency and modularity, we implemented a system of UI cards that could be instantiated as sub-elements across different interfaces. This allowed designers to make updates to a single card, with changes automatically reflected across all screens. My responsibilities included implementing several key interfaces, such as the Cooking Clubs and Cruise Ship sections.
In addition to designing interfaces, I was responsible for all animations in the project, including both character and object animations. The most significant challenge was managing interactions between characters and objects. I developed a system capable of supporting a wide range of complex sequences, such as servers picking up and carrying food to customers, customers eating and drinking, and smoothly getting in and out of chairs.
Another key objective was to surprise and delight users with enjoyable and dynamic animations. A crucial aspect of the user experience was providing fun and memorable visuals. By leveraging my animation systems, I was able to rapidly develop complex sequences, including a scooter driving through the city, characters jumping onto tables and dancing, and a cruise ship serving food.
To achieve these animations, I created detailed specs and prototypes for the outsourced animation team to ensure they delivered polished final animation files. After receiving the files, I imported them into the game engine and set up the animation events and state machines necessary to integrate them into the gameplay.
I also created visual effects that were triggered by animation events or scripts. These included object placement poofs, glasses emptying as characters drank, and cleaning sparkles when tables were wiped. Additionally, I collaborated with the audio designer to identify audio needs, which I then synchronized with the animations.
Another key responsibility on this project was creating tools and establishing asset pipelines. With numerous characters to integrate into the game, one of the main challenges was streamlining the process. I developed character setup and rigging tools, along with model and animation exporters, to make the pipeline more efficient. These tools supported both body and facial animations, ensuring smooth integration into the game.
In addition, I developed a system that could randomly assemble unique characters from a collection of character parts. This future-proof method allowed our team to create a variety of character components and dynamically generate characters without having to define each one individually. It provided flexibility and scalability for adding new character parts over time.
Leveraging my previous experience with light baking tools, I created a new automated light baker for this project. This tool also optimized memory by merging static gameboard objects into partitions. Lights and textures were baked onto large images on a per-partition basis. The system was fully automated, allowing individual objects to be edited, moved, or added and then re-exported to the gameboard with a single press of a button.