VR Gallery
Creating my Interactive VR Gallery was a challenge. Not only did I have to model and render numerous different object (admittedly being simple in shape), but I also had to learn Unreal Engine from scratch in order to make it a possibility. The idea started from wanting my photos to be displayed with the songs from the shows. To achieve this, I decided to create a VR gallery space with my work. If I had to guess, I’d say that more than 60 hours were dedicated to this project alone.
The project started with a sketch of my vision for the gallery, and I have to say that I’m surprised how accurate it turned out. My first step was to model the picture frame. There weren’t too many issues with that. But I did have to learn how to texture glass in Blender. After this, I loaded the frame into Unreal, to see what it would look like. This is when I ran into the first issue. Blender and Unreal don’t work seamlessly together. Any texturing I did in blender would have to be completely re-done in Unreal. But I couldn’t skip the process in blender because I still needed the UV map to go with the textures I was using, so it would work properly. This meant that I had to now learn how to texture glass and work a completely different node-based system to texture each object.
After sorting out the first few issues with the picture frame test (including reflection captures), I modelled the gallery, textured it, and imported that into Unreal. This, then made me aware of a problem I would understand until the very end of creating the project. Most of the faces on my model were black. But at the time I didn’t know why. I now know that it’s because the normal of the face were inverted, which caused them not to reflect any light. Because of this, I completely re-built the gallery in Blender, for it to work better in Unreal.
The next issue was when I imported all of the frames in and added lighting. It turns out, that when you don’t use a proper Normal Map to texture an image, the lighting in Unreal will throw a tantrum. I then had to convert some of the images into proper Normal Maps using an Online converter. (https://cpetry.github.io/NormalMap-Online/)
Once all the pictures were in, I modelled and added the speakers, and begun working with Blueprints and learning the Unreal node-based coding language. I also learnt that only WAVs work as audio files in Unreal. In the blueprint, I added a sound cue, controlled the location and falloff, connected it to the speaker and tested it out. After some fine-tuning, it sounded pretty accurate.
The next step was to model and add the lever, which took a few days to fine tune and get working.
I had followed a tutorial on how to create a lever in Unreal Engine 4, which was a very sloppy was of doing it, and would only allow you to hold the lever for a second before it automatically lets go. This caused me to go on a tangent, searching for some way to make a proper working lever in Unreal Engine 4. I spent 2 days searching and attempting to follow Unreal Engine 5 tutorials that didn’t work in UE4. But after spending so much time writing out and testing different lines of code, I developed a good enough understanding of how it worked, to custom code the original Blueprint from the first video, to make it work better and only release when it either in the “On” or “Off” position, but having it test for it’s rotation compared to invisible blocks at each position.
After the sound and lever were working, I began to work on lighting. This also caused me to go on a tangent because it didn’t look good. I researched how to light indoor areas in Unreal and learnt that only some lights are Ray-Traced. So I began to add those lights to the scene, when the Normal Map issue came up again (The Normal Map issue has kept happening at every stage of the process at this point and I still didn’t understand it). This caused the lighting to look even worse. So I spent another day researching how to fix the issue, and eventually discovered, when I was trying to work out why every metallic material was black and had no reflections, that the normal maps on the faces were inverted. Figuring this out fixed 80% of the issues I was having, and I finally had a working project on my hands.
During the creation of the gallery, I also implemented a blueprint for “smooth locomotion” while still keeping the teleport feature. I also worked out that photograms should be imported into Blender first, as they tend to break when being imported straight into Unreal.
For some reason the finished game doesn't work properly on other devices, but in time, I'm sure I'll work out the bugs.

So many things went wrong when creating this project, that I can’t even begin to list them all. But those were most of the difficulties I faced and overcame.
I am incredibly happy with the result, and I can’t wait to keep branching off of this project.

**All objects in the gallery were modelled by me. All of the photos were taken by me. The textures were taken from free 3D texture sites, such as “https://www.textures.com/library”. And all music was taken off of YouTube for Educational Purposes. **


WIP and 3D models below      vvvvv
VR Gallery
Published:

Owner

VR Gallery

Published: