top of page
Search
  • Writer's pictureBrittany Blair

Week II

Updated: Oct 3, 2021

Brittany Blair


Summary


An update about my current personal project progress. This my second week of progress working on my personal VR game project. This week's focus was on level design, Testing out game engines and setting up the project for VR.


Trello board Completed Tasks


Week II

Level Blocking


This week I mainly worked on blocking the level in Unreal, and testing for accurate scale. Going into this task my goals were to model an environment to an accurate scale in VR using geometry brushes. Then I saved the brushes as static meshes and exported the static meshes as FBX files so they can be used to reference scale when modeling the final assets.


To get a good idea of scale in the engine I created a cube and scaled it down to .01. I then duplicated that shape 5 time and for each duplicate I increased the scale by .01. I tested the scene in VR, grabbing and holding each cube. Once I narrowed my options I created stacks of 6 cubes. One stack was made up of cubes with a .04 scale, and the other was a stack of cubes with a .03 scale. Based on my height in the game I determined the stack of .03 scaled cubed to be the one closest to an accurate representation of 1 foot in the Unreal engine.


I started blocking the level by creating the main shop building. The shop is a wedge shape that is larger in the back and smaller in the front. Both of the walls and the ceiling slope down towards the front door of the shop. For this I created a Square geometry brush and made it hallow. I adjusted the wall thickness to be 6 inches thick. I did some math using my .03 scale as a number for 1ft to figure out the scale of the building that had a length of 20ft and a max width of 16ft and a max height of 17ft. After that I adjusted the building's shortest and smallest wall to have a width of 8ft and a height of 13.5ft. I used the orthographic views to confirm my measurements were correct. The 1m measurement is located at the bottom left corner of the orthographic view. 1m = 3.28ft, and 3.3 of my cubes were needed to fill the measurement.


Unreal Engine Screen captures level blocking


Using my 1ft cube as my reference for scale I blocked in all the major architectural features including windows, the loft height, fireplace, counter tops, and more. With each major change to the level, I tested the scene in VR to make any adjustments to the scale of the objects and architecture in the level.


Major Changes


The biggest change I decided to make was to switch from the Unreal Engine to Unity for the remainder of the development. There are a few reasons for this decision.


First I had some performance issues with the physics in Unreal, even after adjusting to the lowest settings I found there was a lot of jitter and lag happening when I was testing grabbable objects. This worried me because most of the interactions in the game will be physics based and require smooth performance. The second reason I decided to switch engines was based on my comfort creating and adjusting the existing VR blueprints provided by Unreal Engine. It became clear to me after a few hours of looking through all the connections, that most of it did not have comments and It would take a decent chuck of time to do more research in order to understand how to edit and create new blueprints for these VR systems. I determined that I do not have the time to research.


I decided to export the scene's models and re-create the scene in Unity. That process was relatively fast and with the knowledge I already have of working with VR in Unity getting everything set up again only took me a few hours. The issues I had realized when looking into the blueprints in unreal were still partly an issue when diving into Unity, so I decided to look in the asset store and search for user generated tools and plugins to see if there were any assets that would help me to speed up the process so I can focus less on technical VR setup and more on designing the gameplay.


Unity screen captures level blocking


I found the Auto Hands VR asset which includes custom hands and control customization ready for multiple VR Headsets It allows you to create custom hand poses for grabbable objects, has its own realistic physics integration, and more. You can check out the asset with the link here. In the past I would have been more stubborn about using assets in my games, but I understand that I am not an expert at everything. Using versatile tools such as this one will allow me to spend more time working on other aspects of the game without worry.


Planning the Experience


Getting an accurate scale in the game really does a lot to create a sense of presence in VR. When working in VR my goals are to achieve both presence and immersion where ever possible. Most games will either do one or the other successfully. In context of VR I would define presence as the feeling of being physically and spatially located in the virtual environment. Immersion on the other hand is a suspension of belief, one that convinces you to accept the logic and interaction of the world your experiencing as reality. Here is a good online reference for differentiating the two concepts. This illusion Allows you to get into a meditative or flow state when interacting with the virtual systems. More often than not with my own VR experience I will either have a solid environmental presence in a space, but I do not believe the world is dictated by a believable logic. Or the logic of a Virtual World is very believable and logical, but I am not convinced that I am present in that world.


The idea and goal I have behind these two concepts is to create VR Experiences that are so well designed and believable that you find yourself instinctively using those movements in real life. Its the same phenomenon Astronauts experience when they have existed without gravity for months at a time. Once back on earth they will end up dropping cups, pencils, and other objects with the expectation that gravity is not at play. Another example would be when a digital artist goes to hit the ctrl+Z button when drawing something traditionally. I want players to feel as though the movements and gestures are so logical and natural for them that they find themselves with a mussel memory for those interactions.


To achieve this goal it does not require realism as much as it requires consistency and some kind of predictable and intuitive logic behind the interactions. An environment can be a creative and abstract as it wants, as long as the player understand the scale at which they are viewing the world and there is consistent visuals a player will feel present. As long as the player's interactions with the virtual systems is one based on Intuition and ties itself to some kind of logic that can be understood and predicted players will have a higher sense of immersion.


Plans for Week III


For this upcoming week 8/16 I'll be focusing on fleshing out the gameplay for the Tarot Card readings. I'll be creating a Technical Design Document for the scripts I need, UML Diagrams for the classes, and an updated Game flow Chart. This a core part of the game and something the player will have to do repeatedly. The idea is to have the player use their wand to set an intention/ cast a spell for a specific kind of tarot reading. Then the player has to spread out the cards and pick the required number of cards for the order. After the cards are chosen, the player will use the book and the cards to determine which stamp to put on the order request. After the order is stamped the order will disappear and the player can grab a new one.


Week III Trello Tasks.


Post: Blog2 Post
bottom of page