Forklift Training Simulator [Virtual Reality]

I am responsible for integrating it into a different game engine (Unity), optimizing and setting it up to work primarily on Oculus Quest inside a VR platforms called Engage & SideQuest and possibly VIVE in the future.

Integrating took the longest part since there are over 330 meshes (plus their LODS), 127 textures, and 55 materials.

The scene itself came with a scene set up but its fully pink because of missing materials and meshes. It also doesn't help that the whole scene was not built off the meshes that were within the project folder. Making each mesh with LODS doubled and it was a headache.

I decided to re-create the scene by creating prefabs with materials properly attached. I did that individually to all the meshes. It took a while but I was able to re-create it again from the ground up. We also manage to find a way to only baked lighting on LOD0 and replicate the lighting to the rest of the LODS so Unity doesn't have to do each LODS on a separate lightmap.

The scene works and is optimal for PC VR but there is no way it will run on Quest. After all, we have over 1000+ drawcalls, overall polycount was over 3m tris (only warehouse), there are over 55 materials (some with transparency), and over 127 textures.

This is when I started baking the walls into a single poly card and lowering every single asset's poly count. I managed to lower the whole environment to 77.3k tris and combined over 130 textures maps into 4 albedo, 4 Metallic/Roughness, and 4 Normal maps. I removed all transparency, re-designed the warehouse, added dividers on racks to help occlusion culling, and baked everything. After doing all this we are down to 22 drawcalls. (Later on, 55 because we added interactive UI and an animated drivable forklift).

I also have to optimize a forklift that was originally around 62k tris to 24k. I rigged/animated it and baked all the aim constraint to run in Unity. (I added to the rig a lot because the project changes scope.)

I did some additional UI design that matches what our UI Artist originally concept and provided ideas on how the UI should be animated based on interaction.

I helped with setting up reflection/lighting probes, lighting, and baking everything.

I provided the overall project direction by creating game design docs as an outline to follow up. I did the level design and worked closely with the programmer/s to push the project forward and to see what's possible. A lot of the functionality was brainstormed with the team.

Shout out to Alec Pilola for automating the majority of my initial manual work: prefabs setting up and scene set up. Also for making very artist-friendly intuitive task assignments set up. Lastly, for brainstorming with me and working a lot of overtime on this project, I learned a lot. Thanks, man!

Original Assets were bought from Unreal Engine Market Place: https://bit.ly/3eJGv9V
Product here: https://sidequestvr.com/app/1256/chalkbites-forklift-simulator

Forklift Demo HTC 6/2020

I also had to fix our old Forklift from Fiverr that was also re-tweaked by some of our in-house Artist. I had to optimized polycount, rig, and bake my animations to work inside Unity. I also removed/added some parts to match a real-life Forklift Training.

I also had to fix our old Forklift from Fiverr that was also re-tweaked by some of our in-house Artist. I had to optimized polycount, rig, and bake my animations to work inside Unity. I also removed/added some parts to match a real-life Forklift Training.

Loaded up Unreal Engine bought assets inside Unity and as expected its very broken with over 3m tris and missing EVERYTHING lol.

Loaded up Unreal Engine bought assets inside Unity and as expected its very broken with over 3m tris and missing EVERYTHING lol.

I re-created the scene by 1st creating prefabs with materials re-linked then rebuilding the whole thing. (This is for PC VR version)

I re-created the scene by 1st creating prefabs with materials re-linked then rebuilding the whole thing. (This is for PC VR version)

I set up light probes, reflection probes, lighting then baked.

I set up light probes, reflection probes, lighting then baked.

This was the result with no post processing effects. Only baked reflections, probes + basic light set up.

This was the result with no post processing effects. Only baked reflections, probes + basic light set up.

(Our priority was to make this run on the Quest Vs PC VR so I moved on to optimization)

(Our priority was to make this run on the Quest Vs PC VR so I moved on to optimization)

I started with Over 3m tris, 134 textures, 48 materials and over 3,000 batches.

I started with Over 3m tris, 134 textures, 48 materials and over 3,000 batches.

I baked high to low on various objects (ex: walls, loads, etc) and lowered polycount on the rest.

I baked high to low on various objects (ex: walls, loads, etc) and lowered polycount on the rest.

I created 3 texture atlases and used pre-existing floor texture for tilling with minimal changes on the roughness/metallic map.

I created 3 texture atlases and used pre-existing floor texture for tilling with minimal changes on the roughness/metallic map.

I had to re-design the environment to run on Mobile VR. Alot of things had to go with the budget of less than 80k tris on the environment. I also had to separate the room and add dividers on racks to help with occlusion culling.

I had to re-design the environment to run on Mobile VR. Alot of things had to go with the budget of less than 80k tris on the environment. I also had to separate the room and add dividers on racks to help with occlusion culling.

In the end I manage to turn over 3m tris to 77.3k and with Alec's help 3,000 batches to 22.  Win-win. (This scene has only baked probes/reflection/basicLightSetUp; We are planning on re-vamping this once everything else catches up)

In the end I manage to turn over 3m tris to 77.3k and with Alec's help 3,000 batches to 22. Win-win. (This scene has only baked probes/reflection/basicLightSetUp; We are planning on re-vamping this once everything else catches up)

I also designed a mini warehouse for the main menu and starting point. I did the interior on this and some lighting, probes and reflection.

I also designed a mini warehouse for the main menu and starting point. I did the interior on this and some lighting, probes and reflection.