Poly Village is a moc game created for characters on screen play in the background. It was designed to emulate a game like Minecraft and Roblox. The player can perform simple actions like running and jumping, as well as view a menu that emulates an inventory/build screen, but that is as far as interaction really goes for this little game.
In February of 2022 I was tasked with building the game for iPad in Unity for an episode of Reasonable Doubt that was shooting in 3 days. I was given the 3D models that were licensed for us to use and was assigned to build a little town with them, to include the villagers, and to create a controllable player that could walk around.
On day 1 I was able to pull my 3rd person player controller from a hobby project and hook it up in the new project without having to modify it much, I then moved on to building the level. I utilized Pro Builder to create a low poly ground with a slope to it to make it somewhat dynamic. After that I started placing the assets from the kit around the map. Placing the houses , boulders, and the trees to fill up the space, making sure there were not awkward gaps into the void beyond. I placed invisible collider walls on the border of the map minimizing the amount of individual assets that needed colliders with the goal of maximizing performance.
On day 2 I worked on getting the player and villagers animated in some way. Due to our deadline I suggested utilizing Adobe Mixamo to quickly auto rig and animate the characters with their provided animations. After confirming the licensing I quickly rigged the character and retrieved idle and running animations from Mixamo. Since the models from this pack all had the same base model, the same rig and animations could be applied to all of them. After assigning the idle animation to each of the villagers I had to assign an idle animation and a running animation to the player. This was the first time I had worked with animations baked into a 3D skeleton, but after a quick tutorial I was able to hook them up in the Animator component and reference them in the 3D character controller with plans to eventually come back and add a jump animation.
On day 3 I tackled being able to control the character on mobile, specifically for an iPad. I utilized a plugin we had for on screen joysticks and adapted it to control my 3rd person player controller script. I also added a separate on screen button to jump. After confirming their functionality and tweaking the sensitivity I implemented auto switching between on screen controls and keyboard/mouse/gamepad controls deepening on the platform so it could be flexible for future productions. I then handed it off to be delivered to production.
In October of 2023 I was tasked with updating the app for an ad that we were working on for Facebook. They were looking for something to mimic Minecraft more than Roblox. This involved me switching the ground to a pixel art dirt like texture that I made myself as well as developing the little moc inventory/crafting interface to make the app a bit more interactive.
I had a lot of fun working on this little project as it was really the first time I had built out a level with proper assets. Running around the little world with a player controller that I had programmed was a satisfying experience. I also learned even more about the 3D animation pipeline in Unity as a result!