From Blender to AR: Crafting an AR Puzzle Game in Five Weeks

From a Blender artist to an AR game creator. Follow William's five-week journey of coding, design, and transforming concepts into AR

3D model of an AR puzzle game
3D model of an AR puzzle game
3D model of an AR puzzle game
3D model of an AR puzzle game

My name is William Choquet; I traveled from France to the Czech Republic, more precisely in Prague, for an internship as a 3D Artist at the local AR studio More.is.More for three months, thanks to Erasmus. I had no previous experience with AR and VR, but I managed to build a small puzzle game with interactions and animations in 5 weeks; this is how I did it.

Week 1: I wanted to do an environment that would differ drastically from real life. Since I am a fan of the Little Nightmare franchise, I have replayed the games recently. I went with one of the puzzle rooms of Little Nightmare 2, which was pretty good for the project. Something small enough to fit in the office but also that could speak to a Little Nightmare player. I started modeling the whole environment from scratch. And in parallel, I was also working on setting up the scanning app, all documentation is here.


Until I finished the first version by the end of that same week. This led to the creation of UVs and textures in Substance 3D Painter, Photoshop, etc. I didn't need much help for these parts, mostly asking for details such as: how big the project could be and getting to know the app's limits according to what the company already did. I was familiar with making low-poly environments because it's been part of my studies. But I still wanted it to look good, so I had to ensure.


When the textures were mostly done, it was time for the challenge to arrive: Unity.

I had used Unity around three times in my life before that, and I didn't remember anything. The only thing that could help me was that I was familiar with Unreal Engine 5. The layout was different, but I knew it was mainly for the same purpose. It was still hard to understand everything at first, and I definitely needed help, whether it was from the team at the office. Or asking my own friends back when I was home for more precision.

I spent a lot of time integrating it. Thanks to the team, I also learned how to make lighting and a low-resolution preview of lights on Marmoset, another software very helpful for previews I had never heard of before they introduced me to it. It was an excellent way to figure out how I wanted my lighting to look.


After that, it was time to make the lighting on Unity. Making it led to me going back several times on Substance to correct mistakes I made when making the first version of the texture. However, I also returned to Blender occasionally to correct quick errors until I eventually finished the lighting.


Week 2: It was time to try it on the app. I had scanned a part of the office, and it was time to see if I had set up Augg.io correctly on my account and Unity.


I finally could see my AR environment through my phone, and it looked good to me. I was happy with it, and it ran well despite having a lot of materials and 4K textures.

But I still wanted to improve it, so I took time for several evenings after work to optimize my materials and textures in case I needed to.

Week 3: I had a build ready where we could walk around the room and see everything I had done in detail. That's when they suggested that I make it as a portal to AR, where only a door would display to enter the room instead of spawning in it directly. I ended up doing that, and I was very happy with it. It was my first app, after all!

But I knew I could do more. I made a puzzle room in the game where you needed to find a key to use later in the game. But I never mentioned doing it in the first place because I didn't know how to code. I studied it about 5 years ago, but I wasn't good at it, and I didn't really like it either. But how cool it would be to actually play it, I thought.

Two days later, after finishing the textures and making sure the main build looked perfect, I asked the team's developers for help on how to start. I also asked my friends to teach and explain to me. And I learned a lot of stuff in quite a short time. I made a spare scene so I could work and test my scripts. When they worked, I just had to copy/paste them into my actual project.

I started making steps on how the game should go, what I needed to do, what was the plot of the puzzle and how it happens in the game:

It is simple: as the player, you are supposed to enter the room and find clues that will lead you to a key hidden behind two shelves. That would only split if you had placed pawn heads spread all over the room on the right pawns. The only thing to help you is a drawing hidden behind a projector screen that you can raise by pulling on it so that you can see how the pawns are supposed to be placed.

So, I had to summarize my idea and the script I would need to make:

  • Make a script for the projector screen to be raised up

  • Another for the player to be able to pick the pawn head

  • One is to be able to place them, and once that is done correctly, the script will animate the shelves so they can move around and show the location of the key.

In my mind, I already knew what I wanted to do. I wanted buttons to appear on the UI when the player was coming close to interactable objects and the button to do the actions I wanted.

Week 4: Thanks to ChatGPT, making the first script for the projector screen was done relatively quickly, and it was encouraging for the next part, which would be the hardest: The script to be able to pick objects, hide them, and place them at a wanted location.

Even ChatGPT had trouble helping me come up with good ideas; most of my time at work was spent trying to figure them out and test them. While back when I was at my place, I was doing tries on my spare scene. There was always a problem; either the picking-up object wasn't hiding the object once the button was pushed. Or the object couldn't be placed at the correct location.

I had so many problems, but I eventually figured it out a week later, thanks to my friend and the developer team.

By the end of the week, I was done coding interactions. Every step I had planned was working; all I needed now, at least, was to make the game look better, changing the button's appearance and also the sprites.

Week 5: The last thing I needed to do was sound design. The music, the atmosphere, and all of these are essential in Little Nightmare, and they definitely make it one of the best games. The music is so immersive that playing the game silently took all the soul out of it.

I took my time to make it as right as possible, modifying all my scripts (and fixing them, of course) and making new ones and music, the object, for the background or the animations to be perfect.

I had nearly finished everything and started showing it to the whole team to get reviews and returns on it. It was great to see them try it for the first time (and sometimes see them struggle to solve the puzzle !)

I started enjoying coding so much that I added hints and a welcome panel at the beginning of the game to introduce its goal since I had been briefing everybody who had tried it so far.

And by the end of the day, it was done. The first real version with all the animations, the scripts, and the sounds was completely finished. It was a challenge, and I never thought I could do it in a month and a week! I had barely used Unity or coded ever before, and the only times I did it, I really didn't understand anything. Today, I made my AR Experience so everybody can play on Android at the office! Hopefully, people can play when I return to France; it's just a matter of finding the place. 

Text by:

William Choquet

Published on

Oct 24, 2024

Share this article

augg.io s.r.o. • Světova 523/1, 180 00, Praha 8, Czech Republic • IČ: 173 94 155

©augg.io s.r.o, all rights reserved

This project was implemented with the financial support of the Technology Incubation Programme.

augg.io s.r.o.
Světova 523/1, 180 00,

Praha 8, Czech Republic

IČ: 173 94 155

©augg.io s.r.o, all rights reserved

This project was implemented with the financial support of the Technology Incubation Programme.

augg.io s.r.o. • Světova 523/1, 180 00, Praha 8,
Czech Republic • IČ: 173 94 155

©augg.io s.r.o, all rights reserved

This project was implemented with the financial support of the Technology Incubation Programme.