Revamping the Food Court

As we are working on getting a new environment incorporated into Food Fight, the graphics team focused on getting a complete version of the new food court level ready to go in Unity. We redesigned it with a more open floor plan, higher ceilings with an increased number of windows, and added more restaurant storefronts to fill out the service end of the room as well. Each restaurant counter features its own unique signage, decoration, and equipment. A couple of these storefronts still need their own signs and unique decorations, but they work well as placeholders for the time being.

With our new scene, we were able to divide and conquer. The team kept track of all of the models and textures that needed to be edited so they were ready to be placed in the scene while we rebuilt the architecture of the food court and the lighting in Unity. This allowed us to focus on bringing together the small details that were holding the environment back. A lot of the rebuilding process was trial and error; editing models and textures so they looked correct in Unity and testing different interior /exterior lighting setups.

Using HDRI Environment Lighting

HDRIs were incorporated to create a more realistic natural lighting, as well as in the environment outside the windows. However, we were running into an issue with our HDRI images having a nice background, but poor lighting for our scene, or vice versa, so we ended up using two. We set one (using the image of a grassy plot of land) as the environment light source and placed the other onto an inverted sphere as a texture. This sphere was enlarged enough to surround the whole scene and provide the reasonable scenery of a parking lot through the windows.

One problem we ran into was that the lighting information from the previous scene’s HDRI was overriding the lighting in other scenes. Once we started a brand new scene from scratch with all of our assets and new lighting, most of these issues were immediately fixed and the environment lighting came together much more easily. We also learned that when using an HDRI light source, all of the objects in the scene have to be watertight, meaning they must have complete three-dimensional geometry with no holes or openings. For example, a one-sided wall panel will allow the external HDRI lighting to pass through it and enter the interior parts of the scene. Instead, a complete, two-sided wall panel must be used. This issue can also be fixed by rewriting the material shader parameters, but complete three-dimensional models nip it in the bud.

Moving Forward

An important thing we learned during the development is to group objects into prefabs by parenting and grouping objects together in the Unity editor, such as the tables and chairs. Doing so helps speed up the environment setup and keeps the scene hierarchy more organized, allowing for easier use later on when setting up collisions, etc. This is something for us to keep in mind moving forward to improve our workflow and keep everything more efficient and clean.

The next steps in Food Fight overall will be newly designed “Medium” and “Hard” level environments. Conceptually, we have talked about designing them based on cafeterias, grocery stores, and different types of restaurants, so there is a lot of potential for new and unique environments for each of these new levels. After some more discussion and design concepts, we’ll be able to fully decide on how we will approach them.

You can read more about Food Fight on the game website, or download the game for free on the Oculus store.