My name is Rob Tuytel and I have worked as an Environment 3D designer for the past 12 years. My main focus is 17th century Renaissance art; I love this type of architecture and try to make it fit into 3D environment designs. Together with Greg Zahl I run a platform, Texture Haven, that provides free CC0 scanned textures. I also teach students how to design 3D environments in a course on Udemy.
Once in a while I fully focus on a big project to put myself in a whole new area to challenge myself. Nine years ago my first challenge was creating 22 large environments and displaying them on 3D TVs in a Dutch museum. Five years ago I tried something new and tried to make my environments in a real time environment to see it all in VR. My latest challenge was Batavia 1627, building a complete 17th century city in 3D to fly around and discover some interesting places. Of all the things I did in the past 12 years, Batavia was by far the most challenging project. It was about pushing new boundaries, but also learning to have patience in the work that I do.
There is so much to say about Batavia 1627, I could write a book about it. To keep it short I will highlight some interesting things during the project. It may inspire you, but most important of all, I hope this motivates designers to start a project and make it work.
Why Batavia 1627?
In the end of 2017 I was completing some environment studies and looked for a new challenge. My artworks where not developing in a new way, I needed something different to get out my habits and find a new challenge. One of my clients asked if I would like to work out an old map from Batavia in 1627 in VR, and this was something that I found very interesting. I was also waiting for the new Blender 2.8, so before there was an official release I could spend some time on something new.
How to Start
Creating a city from scratch was something completely new for me. Normally I make some building parts and positioned them in the way I like. For this project I needed to make lots of unique buildings to visualize it in VR. All the buildings needed a full 3D design, so not just the front. CG and Game development are two very different ways of working. You cannot compare them with each other. For game design you need to polish it more to fit it in a world where you can walk around.
I made a schedule and started in February 2018. I looked for team members to make the characters and animations. I asked other designers to work on boats and props. I wanted to fully focus on the building design. I used Blender for all the 3D/texture work. Unreal Engine 4 was the best pick to make it work in VR. My programming knowledge was poor, so I asked a developer to build in some menu and UI things.
During the development everything went pretty well, there was not really a delay and we made great progress. In December 2018 we had our first project challenge. The main characters did not work out well, and the programming part was problematic for the project. In the end of December I decided to remove all the code from the project and looked for a redesign for the main characters. This was a pretty rough decision, but with five more months to go we needed a new structure.
I had seriously underestimated how much programming would be involved to realize it. I was on schedule with the building process, but the programming was not even close to 10%. Also, because I had no connection with the programming part, it felt like I was losing control of the project. For this I decided to stop the developing and do the programming myself.
UE4 has visual scripting (blueprints), so as a designer, it was pretty easy to understand, looked similar to the Blender node system. I did a speed course in Blueprints and I was able to make some simple UI implementations. I think this saved the project; I was back in control and could focus back on the building part.
From Blender to UE4
Working with an external game engine can go very smoothly. I used Blender to build and bake the buildings. I imported the model as an .FBX directly into Unreal Engine. Importing 3D objects using the UE4 engine was more user friendly than Unity 3D that I used some years ago. Also, working with materials feels solid in UE4.
Speaking of importing files from Blender into UE4, animations are a nightmare. It was such a challenge to get it right. This was a time consuming part and in the end it was far from perfect, but we had a working pipeline to import the animated characters into UE4.
One of the things I don’t like about game development is optimizations. You have a limit in vertices and texture quality. Especially for VR you can’t always add as much as you want because it will kill your FPS. For this project we used a GTX 2080TI, but we needed to reach a 90 fps frame rate on the HP Reverb. We needed to bake everything in the world. No real time light, not even stationary. This has a huge effect on the realism and the looks, but still, it was not bad at all.
Working with Level Of Detail models is a huge problem in VR when optimizing. Vegetation pops onto your screen and is not friendly for the eyes. For this I chose to use one low poly model for every design. Level Of Detail objects work fine when playing a non-VR game, but how we displayed it, flying above Batavia, was simply not working well with LOD models. Of course this also has an effect on the final looks, but because I baked all the high resolution details in bake maps it still looked okay.
Making the Project Public
Last month we released the project for the public. We display the content on 32 VR arcade machines in a Dutch museum. The program has a duration of 30 minutes, every hour a new group can see the experience. We are still finetuning the content, but at the moment it is running smoothly. Our target audience is for this project is ages 70+.
At the moment we do not have a dynamic approach to discovering the city; the path you fly is programmed and by looking at pins you can activate a story line. Some markers open a new scene with more detail. Of course younger people also like to see the project, but because the program is scripted, it’s hard to entertain a younger audience. I am thinking about adding a free flight experience, but with the problems we had with the external developer it will take some time to find the right people to add this option.
Making Batavia with a small team was a very expensive adventure. We went far over budget and I had to fund it myself to complete it. This can happen when you start something that you are unsure how to finish. When you start working on it, you can’t go back. This makes working on projects like this hard to do. You have different roles during the development. At some points you are designing buildings, but you also have to motivate the team members to find the right workflow. And you have a client who wants to have his project done on time.
There are so many things you have to take care of, it sometimes feels like a never ending story. This may sound depressing, it’s not. I needed a project like this to get out of my comfort zone and put myself on an unknown path. I have so much new inspiration to make new artworks and to do new studies, it was more than worth it. All the happy faces from the visitors make me smile and give me the energy to do beautiful new things in the coming years.
So no new VR projects for me. I can’t wait to put my hands on the brand new Blender 2.8 and get the best out of it. I will continue to provide new free scans on Texture Haven and focus on my Course on Udemy to transform this to version 2.8
About the Author
Rob Tuytel, 3D Environment Designer