Frozen Destination: Project Breakdown

Page 1

FROZEN DESTINATION | PROJECT BREAKDOWN AR0771 | Beyond 3D Computer Visualization Virtual Reality | Final Report Dan Sobieraj | 5088917 February 6, 2021


Dan Sobieraj | VR Final Report | AR0771


Dan Sobieraj | VR Final Report | AR0771

Dedication This project is dedicated to my parents and friends who supported me through the final phase of this project with food and time, and the amazing team at TU Delft’s VR Lab teaching the Beyond 3D course, with special thanks to Arno Freeke and Paul de Ruiter. I especially appreciated the tutorial they dedicated on how to model a plane fuselage.


Dan Sobieraj | VR Final Report | AR0771

CONTENTS 0.0 Foreword

9

2.4 Modelling Issues

44

1.0 Inspiration & Concept

11

2.5 Modelling Tutorials & References

44

1.1 Preliminary Concept

11

2.51 Modelling Tutorials

44

1.1.1 Initial Interest

11

2.52 Reference Images

45

1.1.2 Initial Concept

11

1.2 Final Concept

20

2.6 Downloaded Models 3.0 Sculpting in ZBrush

45 49

1.2.1 VR Storyboard

20

3.1 Battered Plane Fuselage & Wings

49

1.2.2 Wayfinding

20

3.2 Dented Jet

49

1.2.3 Aesthetics

21

3.3 Cushy Plane Seats

49

1.2.4 Colour Palette

21

3.4 ZBrush Tutorials

49

2.0 Maya 3D Modelling

25

4.0 Material Design in Substance Designer

53

2.1 Reference Images

25

4.1 Smooth Snow Texture

53

2.2 Modelling Workflow

25

4.2 Rough Snow Texture

53

2.2.1 Exterior Modelling

25

4.3 Snowflakes

53

2.2.2 Interior Modelling

33

4.4 Material Tutorials

53

2.2.3 Destroying the Model

40

5.0 Texturing in Substance Painter

59

44

5.1 Geometry Preparation

59

2.3 UV Unwrapping


Dan Sobieraj | VR Final Report | AR0771

5.2 Substance Painter Set-Up

59

5.3 Substance Painter Materials

59

6.7 Animated Elements

86

59

6.7.1 Lighthouse

86

59

6.7.2 Rotating Jet Props

86

65

6.7.3 Fire, Smoke, Sparks & Steam

86

6.1 Material Shaders

65

6.7.4 Flashing & Sparking Electronics

87

6.2 Material Instances

65

6.8 Interactive Elements

87

6.3 Landscape Materials

65

6.8.1 Driveable Boat

87

6.4 Landscape & Environment

70

6.8.2 Throwable Door

87

6.5 Foliage Elements & Levels-of-Detail

70

6.8.3 Openable Door

87

6.5.1 Modelling Snow Clumps

70

6.8.4 Flight Recorder

87

6.5.2 Levels-of-Detail (LODs)

70

5.3.1 Windows 5.4 Substance Painter Tutorials 6.0 Unreal Engine 4.24

6.6 Lighting & Atmosphere

6.6.5 Fog

6.9 Audio

86

94

86

6.9.1 Narration

94

6.6.1 Skylight & Reflection Spheres

86

6.9.2 Ambient Noises

94

6.6.2 Directional Light (Sun)

86

6.9.3 Driveable Boat

94

6.6.3 Sun Position

86

6.9.4 Throwable Door

94

6.6.4 Point Lights & Spotlights

86

6.9.5 Plane Interior

94


Dan Sobieraj | VR Final Report | AR0771

CONTENTS 6.10 UE4 Troubles

94

6.11 UE4 Resources

95

6.11.1 UE4 Tutorials

95

6.11.2 UE4 Plugins

100

6.11.3 Audio Sources

100

7.0 Conclusion 7.1 Easter Eggs

103 103

7.1.1 Baking Textures

103

7.1.2 Bridging Virtual and Reality

103

7.2 Concluding Remarks

110

7.3 Alchemist Tutorials

110

7.4 Videos & Download

110

8.0 Final Images

111


Dan Sobieraj | VR Final Report | AR0771


Dan Sobieraj | VR Final Report | AR0771

8


Dan Sobieraj | VR Final Report | AR0771

0.0 Foreword My interest in enrolling in the Beyond 3D course came from the variety of skills the course had to offer that are crucial for creating an immersive VR experience. Looking back, I realize that my initial ambitions for this course were unreal(istic) in the time-frame I had, however I am very happy that the students were given the opportunity and extra time to develop their projects. This is probably the most memorable course I have taken, and time-intensive, but I have enjoyed every minute of it. I wish I was given the opportunity to learn Maya, Z-Brush, Substance Designer/Alchemist/ Painter, and Unreal Engine 4 (UE4) in my Bachelor’s. Please note: All images have been produced by the author, unless stated otherwise.

9


Dan Sobieraj | VR Final Report | AR0771

IMAGE with CONCEPT

10


Dan Sobieraj | VR Final Report | AR0771

1.0 Inspiration & Concept 1.1 Preliminary Concept 1.1.1 Initial Interest

1.1.2 Initial Concept

The initial concept of my scene stemmed from

The preliminary sketch of the search and rescue scenario involved 6 main elements in the map:

two things. As a Canadian in Delft in the month of February, the first was my craving for snow. The second inspiration was a surreal image I

(1) A bucket excavator digging into an ice bank

saw of a plane that crashed in 1973 on the

(2) Plane crash on a floating ice sheet

beach at Sรณlheimasandur, on the South Coast

(3) A burning oil rig at sea

of Iceland (see image below). I quickly started to brainstorm a search and rescue scenario.

(4) A ship graveyard (5) An ice-breaker research ship (6) A tiny-house research station

Plane wreck in Sรณlheimasandur | Photo: Grant Ritchie on Unsplash

The map was bounded by a mountain range, a steep escarpment made by the excavator, and the sea. However, it was an open world without much structure or wayfinding other than a voice recording that would give directions of what to do next. In addition, when I asked for feedback at the VR lab it was strongly recommended that I focus on only one element as this was overly ambitious for the time given. I therefore decided to narrow my scope down to the plane wreck, as it best represents the year 2020. 11


Dan Sobieraj | VR Final Report | AR0771

12


Dan Sobieraj | VR Final Report | AR0771

Please note: All precedent images, except for the tiny house, have been found through browsing Google Image Search.

13


Dan Sobieraj | VR Final Report | AR0771

14


Dan Sobieraj | VR Final Report | AR0771

15


Dan Sobieraj | VR Final Report | AR0771

16


Dan Sobieraj | VR Final Report | AR0771

17


Dan Sobieraj | VR Final Report | AR0771

18


Dan Sobieraj | VR Final Report | AR0771

19


Dan Sobieraj | VR Final Report | AR0771

1.2 Final Concept By narrowing down my scope, I was able allocate more time to creating a more detailed scene. The two main elements became (1) the plane wreck and (2) the research boat where the character starts. It should be noted that the story was not finalized when I started modelling, but that my ideas developed

3. The player gets into the driveable boat and steers it to the lighthouse, there is massive cloud of smoke in the distance.

10. The player searches for the flight recorder. 4. Once on the shore, the player gets out of the boat and moves towards the smoke in the distance by walking in between two large mounds of snow and ice. Once the player passes the mounds, the plane crash is in full view.

during the process of producing the project. 1.2.1 VR Storyboard The map is played in the following sequence: 1. Player starts on the floating research boat off the frigid coast. 2. A voice prompt tells the player a riddle: “A plane crashes in the arctic. There are survivors, but no single person survives. Find out why. Recover the flight recorder from the cockpit. Get in the rescue boat and sail to the lighthouse.”

5. A river cuts the player’s path, where the only way to get across is by jumping on 3 floating icebergs. 6. The player follows a subtle path up to the end of the plane where a door is highlighted. 7. The player opens the aircraft door and enters the plane making the way up to the cockpit.

11. The player finds the flight recorder and the answer to the riddle is played. 1.2.2 Wayfinding The final scene has more defined limits and better wayfinding than the initial concept. Landmarks are viewed by the player in a very linear sequence, even though the map does not seem linear due to the endless sea that it is located in. An illuminated lighthouse serves as a very clear landmark, as well as the plane in the distance that has a large trail of dark smoke rising above it. A line of dark ice on the snow-covered ground also serves as a subtle “trail” that most players will instinctively follow.

8. Once the player opens the door to the cockpit, there is another audio prompt: “Seems like the flight recorder is not here. Have a look below the deck, in the cargo hold.”

20

9. The player then drops down to the deck below and exits at the rear cargo doors.


Dan Sobieraj | VR Final Report | AR0771

1.2.3 Aesthetics

1.2.4 Colour Palette

The aesthetic vision from the initial concept

The overall colour palette of the scene was

carried over to the final scene. A snow

made of cooler tones to give a frigid feel to the environment. Warmer tones, such as reds, oranges, and yellows were used on elements to attract the player’s attention. These warmaccented elements included the driveable boat, light ray of the lighthouse, text that prompts action, and objects that are interactive, such as doors, and electronics within the plane.

environment allowed for a high level of contrast between elements and their surroundings, and therefore the objects placed in the scene stand out like works in an art gallery. Elements that juxtapose one another well in the sunny snow environment are: 1. The rough dark sea and the flat white coast 2. Thick dark smoke against the light sky 3. Rough snow and dark smooth ice 4. Dynamic fire and static snow 5. Patches of rough grass in the sheets of white snow 6. The light clear exterior vs the dark smoky interior of the plane

21


Dan Sobieraj | VR Final Report | AR0771

1. RESEARCH BOAT STARTING POINT

1

2

3 4

5

2. DRIVEABLE BOAT

6 10

9

8 7 11 12

3. LIGHTHOUSE

22


Dan Sobieraj | VR Final Report | AR0771

4. SNOW MOUNDS

7. PLANE DOOR BREACH

10. COCKPIT SEARCH

5. ICEBERG CROSSING

8. FUSELAGE WALKTHROUGH

11. CARGO BAY WALKTHROUGH

6. PLANE WRECK

9. COCKPIT ENTRANCE

12. FLIGHT RECORDER DISCOVERY

23


Dan Sobieraj | VR Final Report | AR0771

24


Dan Sobieraj | VR Final Report | AR0771

2.0 Maya 3D Modelling The modelling for this project was done exclusively in Maya 3D and was a continuous learning process, sometimes frustrating because of crashes, file corruptions, and the discovery of better workflows and methods at a later stage. 2.1 Reference Images

2.2 Modelling Workflow My plan was to model the plane as new, and then have fun ripping it apart and destroying it. To facilitate this process, I divided the plane into 5 parts: (1) cockpit, (2) first class, (3) main section with wings, (4) end section, and (5) the tail end. I also minimized the amount of work by modelling half the plane, which I then mirrored along the long axis.

I started the process by watching a few tutorials on how to model a plane, mentioned in a later section. One of them mentioned the-blueprints. com, a database of many free technical

2.2.1 Exterior Modelling Plane Fuselage

drawings. The plane I chose to model was the

The plane began as a primitive mesh cylinder

Boeing 777-200, a large passenger plane that

that I divided into the 5 sections based on

is very common and that is well documented

the technical drawings. A section drawing

with reference images online, which you

of the plane was used as a reference to

have probably flown inside many times!

extrude an accurate wall thickness. The edgeloop tool made sculpting the plane’s shape

rectangular prisms from the fuselage. Later on this became problematic when I used the smooth tool. Because of a lack of edge loops, the window holes would be deformed and there was no clean way of adding in new edgeloops. I had to redo the process by deleting the face of where an opening would be, bridging the mesh of the interior and exterior fuselage, and adding more edge-loops to give the opening more definition. This conversion to edge-loops was time consuming as it required a lot of clean up, and the “merge vertices� tool was used extensively. At some points deleting and inserting edge-loops would corrupt the geometry, creating double faces, or removing all faces in a section, and I had to revert to older versions and try again. While it did take time initially, the model was much cleaner at the end and I was able to save time later on.

The plane images were scaled using the

an easy process because all I had to do was

default human model as reference. The

apply a semi-transparent material to the

plane front and side elevations were

plane and align the edges with the drawing

Windows were modelled by taking the

then aligned with the plan drawing.

by scaling the loops and moving vertices.

rounded rectangular prism that was used to

Windows

initially to perform the Boolean subtraction. The window openings were initially modelled by

An extrusion with a void was modelled from

performing a Boolean subtraction of rounded 25


Dan Sobieraj | VR Final Report | AR0771

Fig. 1 | Photo of the selected reference plane model the Boeing 777-300. Taken on Nov, 25, 2020.

Fig. 2 | Alignment of reference images & beginning of plane model.

Fig. 3 | Plane wreck division & mock-up.

Fig. 4 | Plane fuselage modelling.

26


Dan Sobieraj | VR Final Report | AR0771

Fig. 5 | Smoothed plane tyre.

Fig. 6 | Jet modelling.

Fig. 7 | Radial array and “twisting� of jet propellors.

Fig. 8 | Defining edges in cockpit windows. 27


Dan Sobieraj | VR Final Report | AR0771

this shape to frame the openings nicely.

flaps and the rudder that could be individually

using the twist tool to give a more realistic

A simple 2D plane was used for the glass.

angled to give another level of realism.

appearance. The blades were arrayed radially

The cockpit windows were more difficult to model because they were modelled as one mesh, not as separate elements. This required a serious amount of edge-loops to define the window frames, just enough to make the openings clear but not too many or else the windows would look as boxy as a Tesla Cybertruck even when smoothed. Once the fuselage and windows were

Landing Gear The landing gear was modelled using a cylinder that had many offset and inset extrusions to create the tyre and the wheel hub. Smoothing the shape created very nice results. The wheel was then copied as an instance, and a series of smoothed cylinders made the main structure of the landing gear. Jet Engine

modelled, the last step was to mirror the geometry along the long axis of the plane and

The jet engine was modelled from a cylinder

merge the vertices to create a closed mesh.

that had one major inset from one side, and on the other a series of insets and extrusions

Wing Section & Rear Stabilizers

that gradually became smaller and smaller. The connection of the jet to the wing was

To model the wings and rear stabilizers, the

modelled by deleting a face from both

plane fuselage was subdivided with edge-loops

the engine and plane wing, then using the

and one large face was extruded. More edge-

“Append To Polygon� tool to connect the

loops were added and their vertices aligned in

edges of both deleted polygons together.

plan and elevation to give a more accurate wing shape. Once the wings and stabilizers were

The blades of the jet were modelled using a flat

modelled, certain faces were separated to create

rectangular prism with a chamfered tip, then

28

as instances to make small adjustments easier. A conical cap was put on to hide the point of rotation where the blades come together. The blades were then smoothed and grouped as a separate element from the engine so that they can be animated with a rotation in Unreal Engine. Exterior Doors The exterior doors and cargo doors were modelled by taking the product of a Boolean difference made by the ship hull and a rounded rectangular prism. For the exterior doors, an opening was modelled in the door with a window, a large latch placed, and the interior side extruded and smoothed to give the door the look of having a locking mechanism within it.


Dan Sobieraj | VR Final Report | AR0771

Fig. 9 | Initial fuselage Boolean subtraction.

Fig. 10 | Boolean difference appeared clean.

Fig. 11 | Modelling of window frames and glass.

Fig. 12 | Lack of edge-loops collapsed windows when smoothed. 29


Dan Sobieraj | VR Final Report | AR0771

Fig. 13 | Exterior door - this is where I learned how to make proper openings with edge-loops.

Fig. 14 | New smoothed window openings, with clean edge-loops.

Fig. 15 | Closing the loops.

Fig. 16 | Adding thickness to fuselage shell.

30


Dan Sobieraj | VR Final Report | AR0771

Fig. 17 | Completed cockpit exterior.

Fig. 18 | Exterior door modelling.

Fig. 19 | Exterior door detailing.

Fig. 20 | Mirroring of plane geometry. 31


Dan Sobieraj | VR Final Report | AR0771

Fig. 21 | Extrusion of vertical stabilizer.

Fig. 22 | Modelling of rudders.

Fig. 23 | Rear rudders.

Fig. 24 | Completed plane exterior.

32


Dan Sobieraj | VR Final Report | AR0771

2.2.2 Interior Modelling Cockpit

the middle, having odd overhead baggage compartments sticking out and looking like their placement was an afterthought.

Due to time-constraints, I bought a highlydetailed model of a cockpit that was untextured,

The partition walls were modelled from a

made by AirStudios and sold on TurboSquid.

rectangular prism that took the profile of

I did this so that I could spend more time

the fuselage, detailed with metal baseboards

detailing other parts of my scene, but still have

and an extruded frame around openings.

the ability to texture it from scratch. This model included a dash control board with flight control sticks, an overhead control board, seats, and a fire extinguisher. I slightly modified this model by deleting parts of it, such as the windows, re-scaling and positioning it accurately within my plane fuselage. To fully integrate the cockpit model with my geometry, I modelled extra walls that hid the transition between both models. Partition Walls As I divided the plane in a haphazard way, without referring to an interior plan, I decided that the best place to put the partition walls and toilets would be at the ends of the split parts of the fuselage. This way I would mitigate any awkward space created with a toilet partitioning the airplane hull in

was inserted into a cavity in the walls. Interior Doors Interior

doors

were

modelled

from

rectangular prisms and include a metal frame, door handle, screws, a baseboard, and metal panels. I modelled the door hinge at the origin of the model so that

Toilets

it could be easily made operable in UE4.

Adjacent to the partition walls are the toilets,

Seats

which were modelled in a similar way to the walls but with different proportions. Each partition wall has two toilets close to the exterior of the plane, and two centered in the core. The doors of the toilets were modelled from a variety of reference images. The doors include a bi-fold hinge, a sliding lock, a pull handle, inset panels, and several other features to add to its realism.

The airline passenger seats were modelled from reference images, with a humanoid model as a scale reference. Rectangular prisms were morphed into the rounded symmetrical cushions with the use of the connect tool to create equidistant edge-loops. The vertices were then aligned with the plan and elevation drawings of the seat. The bevel tool was

First Aid Pods

used to give the solid parts of the chair (chair

To add detail to the large blank wall surfaces

quickly and without the hassle of adding

and to the toilet cores, I modelled an

edge-loops to all sides of the geometry.

legs, tray, arm rests) a more realistic look,

inset first-aid panel. This panel has three inset windows with metal frames, and

I made the seats low-poly to not affect the VR’s 33


Dan Sobieraj | VR Final Report | AR0771

performance, as I would be arraying these seats

this length, meaning that 3 panels would fit

about 100 times as instances within the scene.

below the storage container. This allowed me

Floors The floors were modelled from a rectangular prism and feature aisles with raised edges. Definitely one of the simplest elements and quickest to model. The

to add as many storage modules as needed to cover the length of the plane. Details of the overhead storage modules include recessed handles, air nozzles, lights, and aisle numbers. Vents & Inner Ribs

detail was added in the texturing phase.

Under the windows and close to the floor are

Overhead Storage Modules

reference images. I quickly arrayed a bunch of

The overhead storage made up most of the interior of the plane and was modelled from a technical section drawing of the plane. There are two types of overhead storage: (1) the storage close to the windows of the plane and (2) storage in the center of the plane. The overhead storage was composed of several elements: the (1) storage compartments (2) lights and air vent panels, and (3) normal panels. To maximize workflow efficiency in Maya and UE4, I simplified the overhead storage into a single low-poly module. The length of the module was equal to one storage container, and the panels would be 1/3rd of 34

vent panels that I modelled based on some bevelled rectangular prisms into a grid to add some detail to the bare inner surface of the fuselage. Additionally, I modelled ribs that run floor-to-ceiling between windows along the fuselage to give the impression of panelization.


Dan Sobieraj | VR Final Report | AR0771

Fig. 25 | WC module.

Fig. 26 | Edging details.

Fig. 27 | Seat modelling.

Fig. 28 | Seat details. 35


Dan Sobieraj | VR Final Report | AR0771

Fig. 29 | Seat tray details.

Fig. 30 | Passenger chair array.

Fig. 31 | Vents & ribs.

Fig. 32 | Overhead storage making up most of the interior.

36


Dan Sobieraj | VR Final Report | AR0771

Fig. 33 | Two types of overhead storage.

Fig. 34 | Overhead storage at center of plane.

Fig. 35 | Overhead storage on window sides.

Fig. 36 | Overhead storage vent/light panel detail. 37


Dan Sobieraj | VR Final Report | AR0771

Fig. 37 | Partition walls.

Fig. 38 | Inset first-aid pod.

Fig. 39 | Cockpit integration.

Fig. 40 | Cockpit integration with exterior windows.

38


Dan Sobieraj | VR Final Report | AR0771

Fig. 41 | WC core modelling.

Fig. 42 | Completion of interior element modelling. 39


Dan Sobieraj | VR Final Report | AR0771

2.2.3 Destroying the Model Even by splitting the model into pieces that resembled a plane wreck, some realism was still missing. I knew I could batter the model up in ZBrush, however I was not sure how I could give it the look of being “ripped� apart. I decided I would have to model these elements as I could not find a tutorial on getting the look I envisioned. After the entire fuselage was modelled, interior and exterior, I extruded thin parts of the outer shell of the model in a random branch-like shape to give the appearance that the plane’s metal panelling was torn apart on impact. I was not satisfied with this as it looked very 2 dimensional and flat, so I decided to have another pass of the extruded parts and moved all the vertices in random directions. This last part really did the trick and looked believable when textured! I also created circular web-perforated steel I-beams at the end of the plane sections to expose some of the inner structure that was revealed after the crash. These were 40

modelled from a primitive cylinder that was converted into a donut, divided by edgeloops, with the inner section inset, and finally smoothed. Then smaller cylinders were radially arrayed and a Boolean difference was performed to achieve the perforated look. A section of panels on the vertical stabilizer on the tail of the plane was deleted to expose rebar underneath and to give the appearance of being damaged. This was done by detaching the panels, and trimming and extruding the detached panels to give the appearance of rebar.


Dan Sobieraj | VR Final Report | AR0771

Fig. 43 | The tears looked a bit flat.

Fig. 44 | Moving the vertices in random directions solved this.

Fig. 45 | Every tear was extruded individually.

Fig. 46 | Modelling of web-perforated steel I-beam. 41


Dan Sobieraj | VR Final Report | AR0771

Fig. 47 | Boolean subtraction preparation.

Fig. 48 | Perforated beam integrated with fuselage.

Fig. 49 | Overall view of damaged fuselage.

Fig. 50 | Removal of vertical stabilizer panels for a more damaged look.

42


Dan Sobieraj | VR Final Report | AR0771

Fig. 51 | Grafting tears on the other side of the fuselage.

Fig. 52 | End section with completed tears.

Fig. 53 | Cockpit with completed tears.

Fig. 54 | Vertical stabilizer with exposed rebar. 43


Dan Sobieraj | VR Final Report | AR0771

2.3 UV Unwrapping Unwrapping the UVs of my model was a trial and error process. I used Maya’s UV unwrapping tools extensively, however it took me several attempts of importing my model into Substance Painter to realize that my objects that I modelled separately should be combined into one mesh, their UVs need to be well unwrapped and laid out, and there cannot be any hiding duplicated or inverted faces. Even when the UVs of certain elements looked good, I still had to recreate them a couple times and sometimes also remodel the geometry because textures were not displayed well in Substance Painter. 2.4 Modelling Issues

simply subtract the shape I wanted from the fuselage, but I had to model the openings by eye. What became problematic was that the fuselage was not always planar, and sometimes deleting or creating new edge-loops caused bad geometry. This took a few days of manual cleaning but in the end made my life easier when I exported the mesh to other programs such as ZBrush and Substance Painter. The second issue was that Maya had corrupted my files on several occasions. This happened unexpectedly, without any complex operations being performed or program crashes. The files would simply not open with an “Error Line 0: Error Reading File”. I tried clearing my preferences with no success. Fortunately, Arno was able to open the corrupted files and send recovered versions, saving days of work!

The first issue I encountered was that mesh modelling in Maya is counterintuitive to what I

I made sure to save my models as .ma, instead of

am used to in Rhino’s NURBS modelling. Instead

binary .mb files that cannot be fixed, as soon as

of simple Boolean operations, I have to keep

this happened for the first time. I also saved daily

the structure of edge-loops in mind. This was

backups of my working files, so as not lose more

very time consuming, especially when making

than a day’s work as the worst-case scenario.

openings in the fuselage because I could not 44

2.5 Modelling Tutorials & References Below is a list of modelling tutorials and resources that were useful to me. Many of the modelling tutorials were not done in Maya, instead 3DS Max or Cinema 4D, however the concepts were easily transferable as the tools and workflows in these softwares is very similar. 2.51 Modelling Tutorials How To Model A Boeing 777200 Part 1 Uploaded By “aqeel anjum” on YouTube https://youtu.be/6fxuDa-2Mic Maya for Beginners Tutorial: 3D Modeling An Airplane In Maya Part 1 by Misterh3D Uploaded By “Edge-CGI 3D Tutorials and more!” on YouTube https://youtu.be/rUIG6DlPRhE Maya 2014 tutorial : How to model an Airplane interior Uploaded By “Mike Hermes” on YouTube https://youtu.be/-Z9gLnbyCzA


Dan Sobieraj | VR Final Report | AR0771

Maya 2017 tutorial : How to create a sunken door handle Uploaded By “Mike Hermes” on YouTube

2.6 Downloaded Models

https://youtu.be/c9knrhfE174

from sources like flight simulator and tutorial

Modeling An Airplane In Maya - Part 1 Uploaded By “Mr. H” on YouTube https://youtu.be/mHVIZsXFGh4 Plane crash Tutorial part 1 Uploaded By “cinema 4d tutorials” on YouTube https://youtu.be/csPgcba2Zm4 2.52 Reference Images Airliners www.airliners.net Unsplash https://unsplash.com/s/photos/brokenairplane The Blueprints https://www.the-blueprints.com//blueprints/ modernplanes/boeing/19893/view/ boeing_777_200/

Boat Zodiac 3D model by juanmrgt in Turbo Squid (Paid)

While I did find lots of reference images online websites, I decided that because I have modelled nearly my entire scene I could use my time to progress to sculpting and texturing instead of modelling more elements. I therefore decided to purchase and download a few models, that will be cited in this section. Please note that I recreated the UVs for all these models and

Description: FBX file of a inflatable Zodiac pontoon with an motor, oars, rope, and bench. https://www.turbosquid.com/3d-models/ zodiac-boat-3d-model-1602671 Free lighthouse by POPA_3D on Turbo Squid (Free)

applied custom textures in Substance Painter to better suit the aesthetic of the scene. Airplane Cockpit by Air Studios on Turbo Squid (Paid) Description: Native Maya file of an untextured but highly detailed 3d model of a commercial jet cockpit. It includes flight control sticks, dashboard, control panels with buttons, nobs, and levers, an overhead control panel, pilot seats, and a fire-extinguisher. https://www.turbosquid.com/3d-models/3dcommercial-jet-cockpit/1018809

Description: Maya model of a light house with a small building attached to its base. https://www.turbosquid.com/3d-models/freelighthouse-3d-model/328013 3D black_box by bkorkmaz3d on Turbo Squid (Paid) Description: Native Maya model of an airplane flight recorder. Includes two models, one of a new flight recorder, and one that has been damaged. https://www.turbosquid.com/3d-models/3dblack-box-1584036 45


Dan Sobieraj | VR Final Report | AR0771

Fig. 55 | UV unwrapping of geometry before texturing.

Fig. 56 | One of many unexpected “Fatal Error”s.

Fig. 57 | One of many unexpected crashes.

Fig. 58 | Unexpected “Error: Line 0” when opening a recent file.

46


Dan Sobieraj | VR Final Report | AR0771

Fig. 59 | Detailed cockpit model by Air Studios.

Fig. 60 | Zodiac boat model by juanmrgt.

Fig. 61 | Black box model by bkorkmaz3d.

Fig. 62 | Lighthouse model by POPA_3D. 47


Dan Sobieraj | VR Final Report | AR0771

48


Dan Sobieraj | VR Final Report | AR0771

3.0 Sculpting in ZBrush

as overlapping surfaces. I would then bake the

ZBrush proved to be a handy tool in adding detail

apply to the low-poly model, giving the low-

to geometry very quickly. Its user interface took

poly model the detailed appearance of the

a while to get used to, but in the end it gave me

high-poly but without the extra geometry.

great results with the plane fuselage, jet, plane seats, and snow clumps used in the landscape (this will be mentioned in a later section). 3.1 Battered Plane Fuselage & Wings

high-poly model into the texture that I would

3.2 Dented Jet The same process as the fuselage was applied to the jets. However, because the interior of the jet is not visible because of

First, I imported the individual parts of the

the jet propellers, I managed to create even

fuselage and wings into ZBrush and worked

more dramatic dents. The only thing I had

on them one at a time. The “Trim Dynamic”

to be careful with was to make sure the

brush applied at different strengths and sizes

jet body did not get deformed to the point

was used to dent the smooth round fuselage. I

where it would collide with the propellors.

had to be careful with the intensity, especially around the thinner parts of the mesh, because it was very easy to morph the mesh to the point it was inside out. Once I was happy with the fuselage’s appearance, I unwrapped the UVs and exported both a high-polygon version and a low-polygon version, as OBJs, of the battered plane fuselage. I then imported both

3.4 ZBrush Tutorials Request - Airplane Seat Uploaded By “Arrimus 3D” on YouTube https://youtu.be/aceHWP_qq6c Tutorial - Forest Snow Ground - Substance and Unreal Engine By Pure Polygons – Available at https://gumroad.com/l/Tut-FGS-all ZBrush was covered in one of the videos in this tutorial series. https://youtu.be/V14ZsqaomzM

3.3 Cushy Plane Seats The plane seats seemed a bit too rigid, so I used a small brush with long strokes to give the cushions a slightly wrinkled appearance that was much softer. This worked well and I proceeded to prepare the model for texturing.

models into Maya and checked to make sure that their location in the model was correct and to fix and problems with geometry, such 49


Dan Sobieraj | VR Final Report | AR0771

Fig. 63 | Tail section before sculpting in ZBrush.

Fig. 64 | Battering of fuselage.

Fig. 65 | Tail section fully sculpted.

Fig. 66 | Tail section with unwrapped UVs.

50


Dan Sobieraj | VR Final Report | AR0771

Fig. 67 | Detailed sculpting of tears.

Fig. 68 | Interior sculpting of dents.

Fig. 69 | End section fully sculpted.

Fig. 70 | Wing fully sculpted. 51


Dan Sobieraj | VR Final Report | AR0771

52


Dan Sobieraj | VR Final Report | AR0771

4.0 Material Design in Substance Designer While browsing online for tutorials on how to create realistic materials for snow, I came across a tutorial package for sale by Pure Polygons. The 12-hour tutorial set included a breakdown of how to create a high-quality snow material from scratch with many material maps in Substance Designer, how to create the snow shaders in UE4, how to model and sculpt snow clumps with several Levels-of-Detail (LODs) that can later be painted on in the landscape, and finally how to create weighted landscape materials in UE4. 4.1 Smooth Snow Texture The material design started by creating a white base for the snow with a heightmap that was generated in a cell pattern. This same cell pattern was used to create an ambient occlusion that emphasized the shadows created by the undulating surface. Blurring maps, adding noise, and using masks created realistic peaks and shiny speckles placed and scaled randomly on the snow that added to the realism. The

great part about using Substance Designer

to randomly place, rotate, scale, and raise

was that the material was parametric and it

the snowflakes across the material. Once

was very easy to optimize the finished product.

complete, the material maps were exported

4.2 Rough Snow Texture The rough snow texture was based on the smooth snow texture, but with more masks applied to it. The main difference was that the heigh map of the rough snow was increased, and rough craters were scooped out from the smooth snow surface. Most of the work on the

as 16-bit 4096x4096px textures for UE4. 4.4 Material Tutorials Tutorial - Forest Snow Ground - Substance and Unreal Engine By Pure Polygons – Available at https:// gumroad.com/l/Tut-FGS-all https://youtu.be/V14ZsqaomzM

rough snow texture was creating craters in the snow with snow clumps inside and on the edges of the craters, as you would see in real life. The “tile sampler” tool was key to the process of identifying edges of masks and placing the snow clumps in the appropriate places. 4.3 Snowflakes The snowflakes were created as a separate material that can be added on to both snow textures by blending the shaders in UE4. The snowflakes were simply a default “starburst” shape that were deformed. The “tile sampler” tool was used 53


Dan Sobieraj | VR Final Report | AR0771

Fig. 71 | Creation of smooth snow material in Substance Designer.

Fig. 72 | Using cells as normal masks to give the snow texture.

Fig. 73 | Modifying height and tesselation of snow material.

Fig. 74 | Blending an ambient occlusion layer to get more depth.

54


Dan Sobieraj | VR Final Report | AR0771

Fig. 75 | Blending of layers to achieve more detail in snow material.

Fig. 76 | Blending more detail for rough snow.

Fig. 77 | Blending crevaces for an “icy� feel.

Fig. 78 | Final blended snow material. 55


Dan Sobieraj | VR Final Report | AR0771

Fig. 79 | Adding granular speckles on snow material.

Fig. 80 | Study of different speckle sizes on overall material.

Fig. 81 | Using tile sampler to create points around craters.

Fig. 82 | Placement of snow mounds around craters with tile sampler.

56


Dan Sobieraj | VR Final Report | AR0771

Fig. 83 | Placement of snow mounds around craters with tile sampler.

Fig. 84 | Placement of snow mounds around craters with tile sampler.

57


Dan Sobieraj | VR Final Report | AR0771

58


Dan Sobieraj | VR Final Report | AR0771

5.0 Texturing in Substance Painter

without the expense of computer performance.

5.1 Geometry Preparation

5.3 Substance Painter Materials

Following section 4, once the geometry has

Applying materials in Substance Painter is

been cleaned and its UVs unwrapped it was

very quick after baking the maps. While

ready to have materials applied to it. Unique

the smart materials with their appropriate

materials were created in Maya and applied to

placement of scratches and dirt looked great,

all faces of the geometry. I realized that because

I customized all of them to achieve the exact

of all the edge-loops I created, the edge

look I wanted. I would add layers with dirt

between two materials was not always straight

and paint drip generators on to the materials

and parallel. I strategically placed elements like

to give them a damaged and worn look. The

floors and walls to hide those edges. After a last

dirt generator with a white colour was great

check of the UVs, I exported the materialized

at simulating snow cover because it uses

geometry in FBX format to Substance Painter.

the Ambient Occlusion map and places the

5.2 Substance Painter Set-Up Once the geometry was imported into Substance Painter with a PBR template set at 4K, it was time to bake some mesh maps! The mesh maps were baked with 4x4 Subsampling, and a high-poly model of the geometry was sculpted in ZBrush. Baking high-poly geometry into the texture of a lowpoly model greatly improved its quality in UE4,

5.3.1 Windows The windows were slightly different as the glass

“dirt” at the edges, accounting for gravity. I also applied many logos on to the doors, fire extinguishers, zodiac boat, and the flight recorder. I created custom logos in photoshop, such as “KLD” (on the plane’s vertical stabilizer and interior doors), “FLIGHT RECORDER DO NOT OPEN” (on the flight recorder), and “SEARCH AND RESCUE” (on the Zodiac boat). This gave me an opportunity to have some fun with customization.

layer had to have its shader setting switched to “PBR – Metal Rough with Alpha” to allow for an opacity to be added to the material to make it transparent. The dirt generator with a white colour worked great to give the widows a frosted appearance, and the fibre glass scratches gave it a realistic damaged look. Once the textures looked good on geometry, they were packaged for UE4 and exported. 5.4 Substance Painter Tutorials Adding a Logo to your Textures in Substance Painter Uploaded By “Flipped Normals” on YouTube https://youtu.be/SrSxTsIuX0M Substance Glass Shader Uploaded By “Tutor” on YouTube https://youtu.be/lfufwfE1rA0 [Tutorial] Substance Painter To Unreal Engine 4 Workflow Uploaded By “K9Tvz” on YouTube https://youtu.be/Geck8fWLNCg 59


Dan Sobieraj | VR Final Report | AR0771

Fig. 85 | Quick selection tool was useful in assigning materials to faces.

Fig. 86 | Materials assigned in Maya ready for Substance Painter.

Fig. 87 | FBX model imported into Substance Painter.

Fig. 88 | Baking textures in Substance Painter.

60


Dan Sobieraj | VR Final Report | AR0771

Fig. 89 | Applying and adjusting smart materials to mesh.

Fig. 90 | Custom logos to be overlaid in Painter.

Fig. 91 | Dirt alpha brush used to blend logo with texture.

Fig. 92 | Textured fuselage. 61


Dan Sobieraj | VR Final Report | AR0771

Fig. 93 | Window frame textured with smart materials.

Fig. 94 | Shader setting switched to “PBR – Metal Rough with Alpha”.

Fig. 95 | Overlaid layer with “dirt” generator applied.

Fig. 96 | Overlaid layer with “fibre glass” generator applied.

62


Dan Sobieraj | VR Final Report | AR0771

63


Dan Sobieraj | VR Final Report | AR0771

64


Dan Sobieraj | VR Final Report | AR0771

6.0 Unreal Engine 4.24

distorted on steep and round slopes. I therefore

purchased). A weighted layer blend was set

set up 3 masks so that the texture would project

up in UE4 so that all layers would mix nicely

6.1 Material Shaders

correctly (1) x-y plane (2) x-z plane, and (3) y-z

and in a realistic way when painted on the

plane. I used “if” statements to set a rule that

landscape. This was seen in the transition areas

would project the textures appropriately given

between both the textured snow and smooth

the normal of the face it is being applied to.

ice, which looked very realistic. In addition, the

Exporting from Substance Painter and Designer with the UE4 preset was quick and simple. Substance exports 3 material maps (base colour, normal, and occlusion/roughness/

6.2 Material Instances

metallic maps) that need to be linked when creating materials in UE4. Models in FBX

Material instances were used extensively

format were imported into UE4, and individual

when setting up the materials, especially

UE4 materials were created for each material

the snow, because it allowed for quick

layer in the imported models. The workflow

iterations. I parameterized many of the

was the same for all materials, except for

settings so that I could modify my material

glass and snow. Glass differs because it has

instances quickly without having to wait for

a “translucent” blend-mode with a “Surface

hundreds of material shaders to compile,

Translucency Volume” lighting mode to allow

from settings like the material brightness

for transparency. Snow has a “Subsurface”

and colour, to its tessellation intensity.

shading model to allow for light to penetrate its surface, giving the impression of being made of frozen water, and also has a displacement map to give the snow more three-dimensionality. The snow textures from substance designer were imported and set up in UE4. Correct projection of the snow texture onto the topography was crucial, so as not to look

snow mask that I gave both snow materials in Substance Designer dictated how the texture would appear and added to its photorealism, this was most notably visible when I would paint snow onto regions of pure ice. To achieve a more realistic landscape, I painted areas around the plane and steep topography with rough snow to give it the look of an impact, and patches of ice and uncovered grass around areas that were burning.

6.3 Landscape Materials The landscape material in my scene is composed of 4 different materials: (1) soft snow, (2) rough snow, (3) ice (a shiny dark blue material) and (4) a forest ground material with grass, sticks, and leaves (which I obtained from the Pure Polygons tutorial package I 65


Dan Sobieraj | VR Final Report | AR0771

Fig. 97 | Material set up for translucent plane window.

Fig. 98 | Subsurface shading around snow edges provides realism.

Fig. 99 | Subsurface shading around snow edges provides realism.

Fig. 100 | Creation of tri-planar world projection for snow material.

66


Dan Sobieraj | VR Final Report | AR0771

Fig. 101 | Tri-planar world projection was a trial-and-error process.

Fig. 102 | Result of projection settings that I was satisfied with.

Fig. 103 | Material instances enabled for quick material changes.

Fig. 104 | The landscape material consists of 4 weighted materials. 67


Dan Sobieraj | VR Final Report | AR0771

Fig. 105 | Weighted snow texture.

Fig. 106 | Four textures blending nicely together when applied.

Fig. 107 | Masks from Substance Designer gave a nice “frosted� look.

Fig. 108 | Blend of smooth and rough snow with some ice near plane.

68


Dan Sobieraj | VR Final Report | AR0771

Fig. 109 | Rough snow and ice adds detail near impact site.

Fig. 110 | All 4 textures seen around heat sources, like the jet engines.

Fig. 111 | Materials blend into each other nicely.

Fig. 112 | Mixture of textures created contrast, good for wayfinding.

69


Dan Sobieraj | VR Final Report | AR0771

6.4 Landscape & Environment After I created the landscape materials, it was time to shape the arctic landscape. To make

buoyancy settings were then optimized for

using the “Morph UV” tool, and high- and

the icebergs until the physics looked realistic.

low-resolution OBJ meshes were exported to bring back into Maya. Once imported in

the scene’s boundaries as natural as possible

6.5 Foliage Elements & Levels-of-Detail

I decided to create a landscape, with a size

6.5.1 Modelling Snow Clumps

of 64x64 components and a resolution of

Maya, overlapping faces in the low-poly mesh were cleaned using the “average vertices” tool. xNormal, a texture baking app, was used to create high-resolution normal and height

505x505, in the middle of an endless ocean.

To add some more realism into the scene, I

To create the ocean, I used the Ocean Project

added snow clumps as foliage elements that

and Environment Project plugins because

were placed mainly around landscape features,

they feature an infinite plane of dynamic

such as cliffs and the impact zone. Using the

water with realistic physics, details such as

soft selection tool, spheres were deformed

ocean foam, and its own buoyancy physics

to look more like organic clumps of snow.

To save on processing power required for

that can be applied to different objects.

The transform component tool with vertex

my scene, I decided to create several levels

options was used to scale vertices irregularly

of detail for the snow clump elements. The

Mountains were created by using the sculpting

for a natural snowball shape. A variety of snow

highest level of detail for the snow clumps

tools in UE4. The sculpting tool with a round

clumps were created with different sizes and

would be shown when the player is within a

brush was mainly used to crate mounds and

made into physics objects by applying an active

few meters, the second and more simplified

craters. The erosion and smoothing brushes

rigid body to the meshes. The “bullet solver”

level of detail would be shown when the player

were then used to add the final touches.

was used to simulate how the snow clumps

is within 3-9 meters of the object, and the

would fall and rest on the ground. The file

lowest level of detail would be shown when

was saved as an OBJ and imported to ZBrush.

the player is farther away than that. The low-

I created floating icebergs as an obstacle for

maps by baking the high-resolution model snow clump with the low-resolution model. 6.5.2 Levels-of-Detail (LODs)

poly snow clump model from the previous step

the player to jump over to reach the plane. These were modelled in Maya and imported

Noise was applied in ZBrush to give more

was used as the highest LOD. The geometry

as a mesh into the “buoyant actor” template

detail and texture. The “Trim Dynamic” brush

was copied and the “Reduce” mesh tool was

provided by the Ocean Project Plugin. The

was used to smoothen certain parts for an icy

used to simplify the detail on the geometry for

appearance. The UVs were then unwrapped

the second LOD. I then repeated this step once

70


Dan Sobieraj | VR Final Report | AR0771

more to achieve the lowest LOD. A LOD group was created consisting of all three models and the threshold distances were adjusted to display the LODs correctly. Once set, one FBX file was exported from Maya and imported to UE4 without any need to setup LODs in UE4. In UE4, I created a new material using the baked maps from xNormal, however I had trouble blending it with the landscape material, so I ended up applying the rough snow landscape material to the snow clumps to solve the issue. I then created a landscape foliage brush using the snow clump asset. I gave the brush a random scaling and rotation, and made the placement point below the surface to make the clumps look like they are embedded in the snow. After the density of the brush was adjusted, I was ready to paint the landscape with snow clumps.

71


Dan Sobieraj | VR Final Report | AR0771

Fig. 113 | Importing and assembling the plane model in UE4.

Fig. 114 | Importing and assembling the plane model in UE4.

Fig. 115 | Assembly was quality control to see if everything aligned.

Fig. 116 | Once the plane was assembled, it was time to destroy it.

72


Dan Sobieraj | VR Final Report | AR0771

Fig. 117 | Creation of landscape plane around aeroplane model.

Fig. 118 | Painting of landscape with landscape textures.

Fig. 119 | Sculpting of islands and waterways.

Fig. 120 | Sculpting of islands and waterways. 73


Dan Sobieraj | VR Final Report | AR0771

Fig. 121 | Insertion of endless ocean plane.

Fig. 122 | Division of plane to create wreck impact scene.

Fig. 123 | Plane parts moved and rotated.

Fig. 124 | Plane wreck placement complete.

74


Dan Sobieraj | VR Final Report | AR0771

Fig. 125 | Placement of flight recorder.

Fig. 126 | Sculpting of mound under plane.

Fig. 127 | Sculpting of mound under plane.

Fig. 128 | Mounds created under plane. 75


Dan Sobieraj | VR Final Report | AR0771

Fig. 129 | Sculpting snow in the cargo bay.

Fig. 130 | Testing if waterway distance is greater than player’s jump.

Fig. 131 | Sculpting of islands and waterways.

Fig. 132 | Sculpting of topography with UE4 sculpt brushes.

76


Dan Sobieraj | VR Final Report | AR0771

Fig. 133 | Ice cliffs sculpted to hide view of plane wreck.

Fig. 134 | Mounds sculpted and painted around jet engines.

Fig. 135 | Ice paths painted for player wayfinding.

Fig. 136 | Sculpting of mountains in background. 77


Dan Sobieraj | VR Final Report | AR0771

Fig. 137 | Mountains sculpted in background.

Fig. 138 | Mountains sculpted in background.

Fig. 139 | Islands sculpted in background.

Fig. 140 | Icebergs modelled as interactive buoyant elements.

78


Dan Sobieraj | VR Final Report | AR0771

Fig. 141 | Icebergs modelled as interactive buoyant elements.

Fig. 142 | Once landscape was sculpted, materials were painted.

Fig. 143 | Adding detail to cliffs by painting with rough snow texture.

Fig. 144 | Using soft selection to deform spheres into snow clumps. 79


Dan Sobieraj | VR Final Report | AR0771

Fig. 145 | Randomly scaling vertices for a rough look.

Fig. 146 | Applying a rigid body to make the clumps a physics object.

Fig. 147 | Simulation of how clumps would fall and rest on the ground.

Fig. 148 | Application of noise to mesh in ZBrush for more detail.

80


Dan Sobieraj | VR Final Report | AR0771

Fig. 149 | Some faces flattened for an “icy” smooth appearance.

Fig. 150 | Unwrapping of snow clump UVs.

Fig. 151 | Unwrapping of snow clump UVs.

Fig. 152 | Fixing overlapping faces in Maya with “average vertices” tool. 81


Dan Sobieraj | VR Final Report | AR0771

Fig. 153 | Final UV unwrap after fixing overlapping faces.

Fig. 154 | Snow clump mesh after fixing faces.

Fig. 155 | Baking high-resolution normal and height maps in xNormal.

Fig. 156 | Simplifying mesh for a lower level of detail.

82


Dan Sobieraj | VR Final Report | AR0771

Fig. 157 | Three levels of detail displayed at different distances.

Fig. 158 | Level-of-detail group ready for export to UE4.

Fig. 159 | Snow clumps placed at edges of landscape features.

Fig. 160 | Snow clumps placed around impact zone for added detail. 83


Dan Sobieraj | VR Final Report | AR0771

Fig. 161 | Snow clumps painted on quickly with UE4’s foliage brush.

Fig. 163 | Landscape snow material applied to snow clumps. 84

Fig. 162 | Baked clump textures did not blend well with landscape.


Dan Sobieraj | VR Final Report | AR0771

85


Dan Sobieraj | VR Final Report | AR0771

6.6 Lighting & Atmosphere

plane’s interior.

6.6.1 Skylight & Reflection Spheres

6.6.5 Fog

The skylight is the main source of illumination

To give the scene more of an oceanic and

for the scene. A reflection sphere ensures that

arctic atmosphere, I used the “Exponential

the environment is captured and visible in the

Height Fog” and “Atmospheric Fog”. This

reflection of shiny surfaces, such as the ice.

provides an atmospheric perspective and

6.6.2 Directional Light (Sun) The Sun gives the scene much needed contrast, atmosphere, and helps emphasize the forms of the snow mounds and craters. Without it the scene looks very flat and materials lose detail. 6.6.3 Sun Position I used the “Sun Position Calculator” plugin to modify the Sun’s position and backlight the scene. The low sun position created dramatic shadows and a strong

creates a sense of depth within the scene. I enjoy the fact that the fog lowers the contrast and lightens distant objects, revealing those objects as the player approaches. 6.7 Animated Elements To give life to the scene, and place features that attract attention, I created several animated elements: an illuminated lighthouse, rotating jet propellors, flashing lights, and fires with smoke. 6.7.1 Lighthouse

just how light falls off in real life. I then added a “RotatingMovement” component to give the ray of light a rotating motion. 6.7.2 Rotating Jet Props To give the impression that the plane is a “fresh” wreck, I gave the jet propellors a slow rotation. What I learned is that objects rotate around the origin of the file they were exported in, and this origin cannot be changed in UE4. I therefore exported several models out of Maya to get the axis of rotation correct. Once the propellors were set in the jet, I added a “RotatingMovement” component. 6.7.3 Fire, Smoke, Sparks & Steam The default fire, smoke, sparks, and steam animated particles provided in the UE4 starter content were very effective in creating a

contrast between the light sky and the dark

I textured the lighthouse beacon with an

more immersive scene. Parts of the fuselage

silhouette of smoke rising from the wreck.

emissive material and wanted to give it a

and the jets were set aflame with a large dark

rotating beam of light. I modelled a hollow

smoke cloud that could be seen from the

cone in Maya, imported it into Unreal

scene’s starting point on the boat, serving as

Engine and gave the emissive material a

a wayfinding element. Smoke and steam were

gradient mask so that it fades on both ends,

also added to the interior of the plane to give a

6.6.4 Point Lights & Spotlights In areas too dark to see, point lights and spotlights were added to slightly illuminate the 86


Dan Sobieraj | VR Final Report | AR0771

dark and claustrophobic atmosphere with low-

with the Zodiac model that I downloaded and

door when a player interacts with it within a

visibility, in contrast to the bright open outdoors.

textured. I then set up a camera and player

close distance. This door also has a flashing

controls for entering/exiting and directing

emissive material, and the message “Press

thrust to move the boat. When the player comes

“E” to open” appears when close to the door.

6.7.4 Flashing & Sparking Electronics Flashing emissive materials of different colours and sparks were added to the cockpit to create an even more immersive experience. Aisle numbers, cockpit controls and electronics displays, first-aid pods,

within close proximity of the boat, the player changes into the “boat” character. Upon exit the default character is teleported to the top of the boat, which the player then possesses.

6.8.4 Flight Recorder The final element that the player interacts with is the plane’s black box. It is hidden

6.8.2 Throwable Door

in the map, but it has an emissive material

interactive elements and even the aisle

The access into the plane is blocked by a

proximity, “Press “E” to listen” appears, and

walkway edges were illuminated to add detail,

door that must be thrown out of the way.

the player can listen to the answer to the

and to also serve as wayfinding in the scene.

This was done by editing the blueprint

riddle presented at the beginning of the scene.

signs on toilet doors, the flight recorder,

6.8 Interactive Elements 6.8.1 Driveable Boat

that flashes. Once a player is within a close

of the main character to be able to grab, hold, and release physics objects within the player’s view. The door has an emissive material that flashes to grab the player’s

The driveable boat was one of the most critical

attention. Once the player comes within a

and time-consuming elements of my scene,

few meters a rendered text appears on the

because it was the most immersive method I

door “Click & Drag LMB (Left Mouse Button)”.

could think of transporting the player from the research boat to the shoreline. The research boat was a buoyant element provided as part of the Environment Project plugin. I started by using the Environment Project’s “Buoyant Pawn” template and replaced the default mesh

6.8.3 Openable Door To enter the cockpit, the player must open a door by pressing the “E” key. This was done by setting a rotation component to rotate the

Light beam made from gradient mask applied to cone.

87


Dan Sobieraj | VR Final Report | AR0771

Fig. 164 | Sun position blueprint (left), reflection capture sphere (center), and skylight (right).

Fig. 165 | Directional light (Sun) asset placed in scene.

Fig. 166 | Point lights illuminate dark areas in plane for better visibility.

Fig. 167 | Atmospheric (left) and exponential height (right) fog assets.

88


Dan Sobieraj | VR Final Report | AR0771

Fig. 168 | The fog assets create a sense of depth in the scene.

Fig. 169 | Lighthouse features a rotating light ray.

Fig. 170 | Jet engines feature rotating propellors.

Fig. 171 | Fire and smoke provide a more immersive experience. 89


Dan Sobieraj | VR Final Report | AR0771

Fig. 172 | Sparks and steam create detail and realism.

Fig. 173 | Cockpit features flashing displays, blinking lights, and sparks.

Fig. 174 | Flashing aisle numbers and walkway edges.

Fig. 175 | Illuminated elements on first aid pods and W/C doors.

90


Dan Sobieraj | VR Final Report | AR0771

Fig. 176 | Flight recorder also included illuminated elements.

Fig. 177 | Driveable Zodiac boat UE4 asset.

Fig. 178 | Driveable Zodiac boat UE4 blueprint.

Fig. 179 | Boat is controllable by player. 91


Dan Sobieraj | VR Final Report | AR0771

Fig. 180 | Throwable exterior door.

Fig. 182 | Flight recorder with text prompts that follow player. 92

Fig. 181 | Operable cockpit door.


Dan Sobieraj | VR Final Report | AR0771

93


Dan Sobieraj | VR Final Report | AR0771

6.9 Audio

6.9.2 Ambient Noises

6.9.5 Plane Interior

Audio was the last element that was added

Ambient noises have been downloaded as audio

Electrical sparks, fire burning, and seat

to the scene, and it took the experience to

files from YouTube videos and trimmed to fit the

belt chimes are all heard throughout the

another level of immersion. All sound in the

VR scene. These noises include: arctic wind,

plane. In the cockpit, the “Ground Proximity

scene has a limited spatial range, becomes

waves crashing on the shore, fire burning, and

Warning

System”

plays

louder when the player approaches the

jet turbines spinning. The attenuation of these

Terrain!

Terrain!

Pull

source, and is attenuated so as not to drown

sounds was set in a way so that the exterior

out other noises and to give a clear audible

sounds were barely audible inside the plane.

6.10 UE4 Troubles

6.9.3 Driveable Boat

Although

As the player enters the boat, the sound of a

there were some issues that I ran into.

difference between distinct parts of the scene. 6.9.1 Narration

working

with

continuously. up!

Pull

UE4

was

up!

a

much smoother experience than Maya,

Audio prompts are used as the main

motorboat engine starting up begins to play.

communication method to inform the player of

This was done by attaching a sound source

1. CPU Crash: Occasionally when I would open

the scene’s context and the goal of the player’s

to the boat pawn that would play when the

my project file, the loading screen would get

mission. To add class to the game I used the

character possessed it. As the sound source

stuck at 39% while my CPU was performing

online text-to-speech tool by Natural Readers

was nested within the boat pawn, the sound

at 100%. The solution to this was to close

to give prompts in the voice of Peter, an

remained consistent even when the player sailed

UE4, rename the “Config” folder in the

Englishman. I used trigger boxes to play Peter’s

around because it would move with the boat.

project files, and restart the program.

voice when the player reached a milestone in the level. The last narration is activated when the player interacts with the flight recorder, and the answer to the riddle is played.

6.9.4 Throwable Door When the door is grabbed the sound of a metal impact and “whoosh” of it flying through the air is played. This was done by editing the main character blueprint to play this noise every time something is grabbed.

94

2. Compiling Shaders: While I tried to use material instances as much as possible, several times I had to modify the original material parent. This caused over 6,000 shaders related to the landscape texture to compile. This operation crashed several


Dan Sobieraj | VR Final Report | AR0771

times, but resolved itself eventually. 3. Door Physics: This is an issue that occurs 20% of the time. When I play the level, occasionally the throwable door shoots into space. This is because it is a physics object and its collision mesh is wedged inside the plane fuselage. Sometimes when the level is played, gravity will cause the door to fall into the fuselage at an awkward position that shoots it out within a few seconds. At the writing of this report no solution has been found. 6.11 UE4 Resources 6.11.1 UE4 Tutorials Creating A Basic Playable Character Controller - Character Blueprints in Unreal Engine 4 Uploaded By “AstrumSensei - Game Dev Tutorials” on YouTube https://youtu.be/M8WtmIUUdHM Custom Driveable Boat Tutorial Unreal Engine 4 (Download Included) Uploaded By “Smart Poly” on YouTube https://youtu.be/dkcKwq6xRM4

Free Ocean Project For Unreal Engine 4.25 Tutorial Uploaded By “Smart Poly” on YouTube

UE4 - WIP Community FREE Ocean Project adding buoyancy to actors Uploaded By “Nilson Fernandes de Lima” on

https://youtu.be/V22XjSQyQ_4

YouTube https://youtu.be/r2ZVnAkZAKI

Hover Vehicle 2018 (using Blueprints) - Unreal Engine 4 Tutorial Uploaded By “Marco Ghislanzoni” on YouTube https://youtu.be/ko6lDSSNhV8

UNREAL ENGINE 4 - Door Rotation Blueprint - with E Key PRESSED Uploaded By “vrayguide” on YouTube https://youtu.be/dvRmx8fCgSM

Substance Painter Importing Glass to Unreal Engine UE4 Easy and Quick Tutorial Window Realistic Uploaded By “3DTudor” on YouTube https://youtu.be/Lz7dV2OtdYY

[ue4] - Vehicle - Enter/Exit Vehicle [part 2/3]-[Tutorial] Uploaded By “NiceShadow” on YouTube https://youtu.be/BOYeVU-qeME

[Tutorial] Substance Painter To Unreal Engine

[Unreal Engine 4.7+] Hover Vehicle Blueprint

4 Workflow Uploaded By “K9Tvz” on YouTube https://youtu.be/Geck8fWLNCg

Tutorial Uploaded By “Unain” on YouTube https://youtu.be/cPVaDndT7tY

Ue4: advanced materials (Ep. 26 Basic Custom Godrays/LightShafts) Uploaded By “Steve’s Tutorials” on YouTube https://youtu.be/9qAXiVJSzxw UE4: How to Rotate an Object Perpetually Uploaded By “ITEACH3D” on YouTube https://youtu.be/lSIya9obbSo

Compiling landscape shaders was very time consuming.

95


Dan Sobieraj | VR Final Report | AR0771

Fig. 183 | Scene aerial perspective showing sound attenuation spheres.

Fig. 184 | Sound attenuation allowed for sounds to dissipate spatially.

Fig. 185 | Interior sounds are audible only in interior, and dissipate within a short radius from the plane.

Fig. 186 | Scene narration text-to-speach using naturalreaders.com.

96


Dan Sobieraj | VR Final Report | AR0771

Fig. 187 | Trigger boxes (on boat) are used to prompt sounds, such as narration.

Fig. 188 | Sound source of Zodiac boat is nested within the 3D asset. The image on the left shows buoyancy points of boat asset.

Fig. 189 | Sound sources applied to location of animated elements.

Fig. 190 | Multiple sound sources create a more immersive experience. 97


Dan Sobieraj | VR Final Report | AR0771

Fig. 191 | Parameters set in blueprints to not repeat sounds multiple times simultaneously.

98

Fig. 192 | Trigger boxes prompt sounds at important points of interest.


Dan Sobieraj | VR Final Report | AR0771

99


Dan Sobieraj | VR Final Report | AR0771

6.11.2 UE4 Plugins Community Ocean Project Description: An Ocean Simulation project for Unreal Engine 4. https://github.com/UE4-OceanProject/ OceanProject The Environment Project Description: An Environment Simulation project for Unreal Engine 4. https://github.com/UE4-OceanProject/ Environment-Project 6.11.3 Audio Sources Airplane Corporate Jet Engine Shut Down Sound Effect Uploaded By “Sound Effects For You” on YouTube https://youtu.be/tIPZekvueAY Arvor 215 engine -- turning on and off, medium rpm with constant speed (2). Uploaded By “The Soundholder” on SoundSnap https://www.soundsnap.com/tags/boat_engine

100

Boeing - Pull Up Alarm 10 Hours and one or two or three seconds Uploaded By “Person” on YouTube

Ocean Waves Crashing & Icy Blowing Wind off the Arctic Coast ! Relaxing Nature White Noise for Sleep

https://youtu.be/Xlr2ZMTc52E

Uploaded By “Nature Therapy” on YouTube https://youtu.be/E_bInzqymk4

Calmsound Antarctic Wind - 10 Hour Katabatic Wind Sounds for Sleep and Relaxation Uploaded By “Calmsound” on YouTube https://youtu.be/9NmeAQruCgs Fasten seat belt - sound signal Uploaded By “caliSHnick” on YouTube https://youtu.be/qKFrQqqPSAc Flame Sound Effect Uploaded By “Sound Design & Tools” on YouTube https://youtu.be/10FPa2jSsTc METAL IMPACT - (Sound Effect) Uploaded By “Sound Effects[FREE]” on YouTube https://youtu.be/wb7CBcRZ3rM Natural Readers Online Text-to-Speech Software – Peter (UK) Voice https://www.naturalreaders.com/online/

Tweeter Electric Static [SOUND EFFECT] Uploaded By “Freeify Music” on YouTube https://youtu.be/3PKZQY55K1c


Dan Sobieraj | VR Final Report | AR0771

101


Dan Sobieraj | VR Final Report | AR0771

102


Dan Sobieraj | VR Final Report | AR0771

7.0 Conclusion

textures. Once imported, I cropped the photo

7.1 Easter Eggs

there were no splotches or blemishes that

7.1.1 Baking Textures

could ruin the seamlessness of the texture.

back home to Toronto, Canada in anticipation

One of my favourite hobbies is baking. I

To minimize the contrast in brightness and

before the Holiday season. After eating my KLM

usually bake once a week and love to share my

colour in the photo, I used the equalizer filter.

creations with people. I have also baked several

I then used the “Image to Material” filter to

times for the Beyond 3D course as well. This

generate a height map from the photo for

frequency of baking wears down my pans in less

the material. The “Tiling” filter was then used

than a year. What is left is the patina of time;

to blur the edges and make a more seamless

wear and tear, scratches, burns, and stains. I

texture out of the cropped photo. There were

thought it would be interesting to literally use

still some visible repetitions in the texture, so

these textures created from my baking to bake

I used the “Clone Patch” filter to blend these

real textures for objects in my scene. I used one

areas better into the texture and make it truly

of my old pans to create a nice grunge texture.

seamless. For the finishing touches, I applied an

to a 4096 x 4096px square and made sure

“Adjustment” filter to add contrast, roughness,

7.1.2 Bridging Virtual and Reality Due to the COVID-19 pandemic, I decided to fly of travel restrictions becoming more limiting midflight goodies, I noticed that the interior of the plane looks VERY, VERY familiar. The profile of the cabin storage, washroom doors, and interior layout looked suspiciously similar to what I have modelled. Then it hit me… this must be the SAME model of plane that I must have been creating a wreck of for all these months. There was only one way to find out… I looked at the safety brochure and my suspicions revealed to be true, but it was

First, I took a photo of my pan face on with

an ambient occlusion map, and the “Metal

my zoom lens at the maximum focal length

Finish” preset to give it that final level of realism.

too late. I was flying a Boeing 777-300,

much as possible when I create my texture. I

The texture was then exported from Alchemist

to the Boeing 777-200 that I modelled.

then converted the RAW photo into a high-

to UE4. I created a material and applied it to

resolution TIFF file and imported it into

the mesh of the flight recorder. The result was a

Substance Alchemist. I chose Alchemist

rusty damaged box that I littered throughout the

because I have never used it before, and it

scene to make it more chaotic. I was quite happy

had many great features to turn photos into

with the result of my baked baking-pan texture.

of 250mm. This was to minimize distortion as

the nearly identical but succeeding model Having realized that I have immersed myself into what could possibly be the prequel of my plane wreck scene, I had a slight panic attack 35,000 feet in the air. I believed I had become the player in my own virtual reality. 103


Dan Sobieraj | VR Final Report | AR0771

Fig. 193 | Baking is one of my favourite hobbies.

Fig. 194 | I love to share my baking. I brought snacks often to share with my peers, like this poppy seed cake for the Beyond 3D course.

Fig. 195 | All my baking tools received a lot of wear and tear.

Fig. 196 | Especially my baking pans.

104


Dan Sobieraj | VR Final Report | AR0771

Fig. 197 | I decided to “bake” a texture using my baking pans.

Fig. 198 | Stains, burns, and scratches create a nice “grunge” texture.

Fig. 199 | I used a DSLR with a zoom lens to take a high-resolution RAW photo of the pan, with the least distortion possible.

Fig. 200 | I exported this RAW image as a TIFF file to open in Substance Alchemist. 105


Dan Sobieraj | VR Final Report | AR0771

Fig. 201 | Image of pan imported into Alchemist.

Fig. 202 | Cropped to exclude any distinct marks for seamless edges.

Fig. 203 | Equalizer used to make a more consistent texture.

Fig. 204 | “Image to Material� created a heightmap for the material.

106


Dan Sobieraj | VR Final Report | AR0771

Fig. 205 | Adjusted for proper height intensity.

Fig. 206 | “Clone Patch” tool used to paint over harsh repeating edges.

Fig. 207 | Adjustment and “Metal Finish” filter added for final touches.

Fig. 208 | Material creation in UE4 with all baked texture maps. 107


Dan Sobieraj | VR Final Report | AR0771

Fig. 209 | Material applied to flight recorder mesh.

Fig. 210 | Asset placed throughout scene.

Fig. 211 | Decent results with using a baking pan to “bake� texture maps! Fig. 212 | Rusty boxes add chaos to the scene. 108


Dan Sobieraj | VR Final Report | AR0771

Fig. 213 | I coincidentally flew on the same plane I modelled when I travelled back to Canada for the Holidays.

Fig. 214 | The moment “Virtual” became “Reality”.

109


Dan Sobieraj | VR Final Report | AR0771

7.2 Concluding Remarks

7.3 Alchemist Tutorials

Despite having worked on this project for many

Substance Alchemist: Image to Material (Bitmap To Material) Uploaded By “Substance by Adobe� on YouTube https://youtu.be/k2fB4lAfbI4

months, I never got bored of it and instead felt like I was getting more and more allured to it. Every program that I used in the process was a program that I have never used before enrolling in this course. The technical and visualization skills that I have learned have not only prepared me to create architectural renderings, but to visualize anything I can imagine and create an interactive environment out of it. I am confident that what I have learned in this course, especially regarding the workflow of creating an interactive experience from scratch, can be applied to many of my projects and software that I will use in the future, perhaps not even architecturally related. I am excited to go into my final graduation studio knowing that visualizing my ideas will not be a constraint anymore, instead the constraint will be the available time I have to visualize it!

110

7.4 Videos & Download Frozen Destination VR Trailer [4K] Frozen Destination VR Gameplay Walkthrough Frozen Destination VR Workflow Frozen Destination VR Download (Windows 64-Bit playable .EXE)


Dan Sobieraj | VR Final Report | AR0771

8.0 Final Images

111


Dan Sobieraj | VR Final Report | AR0771

112


Dan Sobieraj | VR Final Report | AR0771

113


Dan Sobieraj | VR Final Report | AR0771

114


Dan Sobieraj | VR Final Report | AR0771

115


Dan Sobieraj | VR Final Report | AR0771

116


Dan Sobieraj | VR Final Report | AR0771

117


Dan Sobieraj | VR Final Report | AR0771

118


Dan Sobieraj | VR Final Report | AR0771

119


Dan Sobieraj | VR Final Report | AR0771

120


Dan Sobieraj | VR Final Report | AR0771

121


Dan Sobieraj | VR Final Report | AR0771

122


Dan Sobieraj | VR Final Report | AR0771

123


Dan Sobieraj | VR Final Report | AR0771

124


Dan Sobieraj | VR Final Report | AR0771

125


Dan Sobieraj | VR Final Report | AR0771

126


Dan Sobieraj | VR Final Report | AR0771

127


Dan Sobieraj | VR Final Report | AR0771

128


Dan Sobieraj | VR Final Report | AR0771

129


Dan Sobieraj | VR Final Report | AR0771

130


Dan Sobieraj | VR Final Report | AR0771

131


Dan Sobieraj | VR Final Report | AR0771

132


Dan Sobieraj | VR Final Report | AR0771

133


Dan Sobieraj | VR Final Report | AR0771

134


Dan Sobieraj | VR Final Report | AR0771

135


Dan Sobieraj | VR Final Report | AR0771

136


Dan Sobieraj | VR Final Report | AR0771

137


Dan Sobieraj | VR Final Report | AR0771

138


Dan Sobieraj | VR Final Report | AR0771

DAN SOBIERAJ dansobieraj@hotmail.com

139


Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.