Pirate Ship With Unreal Engine
Today we will make a video of a boat floating in a canyon!
Downloads
Supplies
Unreal Engine, computer powerful enough to run the engine(I barely managed on a Macbook Air), and the patience to problem solve. SketchFab and Quixel Bridge accounts are also necessary. Unreal Engine 5.7.1 or later is prefered, though 5.5.4 works.
Open Unreal Engine
Open a blank project and name it
Create New Level and Pluggins
Create a new level under Content in your content browser. To do this you open the browser(CONTROL+SPACE) and right click. Then select 'add new level', then name it 'Pirate_Ship.
Then go to edit, then plugins, and search for water. Tick the water, water advanced, buoyancy, water extra, water advanced, then search for landmass and tick that too, next find the movie render queue, and restart when prompted.
Adding the Ocean
Copy the lighting of the current level, and open Pirate_Ship. Paste the lighting in the actors panel. Next press SHIFT+2, this opens Landscape Mode. Ensure the enable edit layers box is ticked, set the size to the largest possible, then hit create.
Next press SHIFT+1. Go to the Actors Panel, the green + icon at the top of the window, and search for Water Body Ocean. Drag it onto your landmass.
Remove the Big Eyesore
In the World Outliner, click on the WaterBodyOcean actor. In the Details panel, scroll down to the Terrain section. Uncheck the box for Affects Landscape. Switch to Landscape Mode. In the Sculpt tab on the left, look at the Layers window. You will see a layer named Water. Right-click the Water layer and select Delete. Select the WaterBodyOcean actor. Go to the Details panel and search for Dry Outline. Ensure the Ocean Transition Renderer settings are not set to a massive offset. If the water is still missing in the center, click on the Spline Points (the white squares in the viewport) and move them closer together or delete them until only one point remains at the center. Then press 'H'. This hides it, and now you have an seemingly endless ocean.
Waves
Click on WaterBodyOcean, and in the Details panel, scroll down until you find the waves. Switch the waves source to Gerstner Water Waves. Open the dropdown menu underneath Waves Source, and you can make changes to your wave size, hight, etc.
Add the Boat
For the boat, I got the sailboat from SketchFab. In later pictures you will see a wooden row boat, because I found the sailboat model later in the process of making this. You can use any boat though. Upload the boat under Content in the Content Browser. TIP: drag the GBL file from your finder onto the content browser, and when a window pops up, search for Combine Static Meshes. This combines it all into one mesh so you don't have to assemble it.
Click and drag the model onto your ocean. Set the Z value for the location to hovor slightly above the water, and make sure the boat's scale is proportionate to the waves.
Adding Buoyancy
Now we make the boat float. Under OceanBodyWater, tick all the boxes in the Collision Presets to Overlap. Right click in your content browser, choose blueprint, and if you want to control it in the future you choose pawn, otherwise choose actor.
Open it, go to +add, and add a static mesh. On the right side, under static mesh, choose your boat. On the left side drag the static mesh over the top file. Go turn on simulate physics on the right side. Now, back in the level, drag the new blueprint onto the world. Go to +add and search for buoyancy. When you select it, dozens of options will appear on the right side, but the only one we are interested in is pontoons. This tells what parts float where.
Go and +add and arrow, and name it position1, do this 3 more times. The pictures demonstrate how to position them. When you have positioned them all, we can add the pontoons. Manually click the + button underneath, and enter the location of each of the arrows. You can right click over the location of each arrow and copy it, then paste in the pontoons.
In the level, you can now hit play and the boat will drop to the water and float! If you aren't happy with the bottom of the boat, you can change the last value of the pontoons. Small boats like mine really only need two pontoons for the front and back, I just demonstrated 4 for those doing larger boats.
If you encounter problems with rolling, you can change the angular and linear dampening to a value between 2 and 5.
Make the Canyon
I got canyon walls from Quixel Bridge. Open it in your content browser(I would suggest making a folder for it so it doesn't clutter up your content)Drag the canyon walls out and place them wherever you want them-you may have to scale them up quite a bit. Drag the desired material out onto the walls, and they will change texture and color. Make sure your boat isn't hidden underneath them.
By hitting CONTROL+L and holding CONTROL, you can adjust the lighting. TIP: if your FPS is dying, try a couple of these tricks:
- Lower the Engine Scalability: Under your quick settings, you can lower the graphics quality.
- Unlit Mode: OPTION+3 changes to unlit mode.
- In settings, turn off nanite and lumen.
You can drag and overlap the walls to create a full wall. ALT+D
Tips Before You Move On
- Before recording switch to 24 fps in the take recorder. This ensures cinematic looks.
- Use the 180 degree shutter rule
- In the next step, after you make the cine camera, adjust the motion blur settings how you want.
- Set the filmback on the camera to 16:9 DSLR.
- Raise the focal length
Lights, Camera, Action!
Drag a cine camera actor from the actors panel. In your world outliner, right click the camera and select 'pilot CineCamera_Actor'. Go to window, then cinematics, then take recorder. From the world outliner, highlight and drag the cine camera actor and the target and place them in the recorder.
Open the world outliner, and from the event tick drag a set actor location and rotation. Drag in your camera, and attach that too. Look at the pictures for more details. Don't forget to compile. These are precautions to make sure your camera knows what it needs.
Orient the camera, play the level, select record, press F8, and you can move around in the level. Select browse to when you are done, then open the file. Next, play the recording and make sure you are happy with how it turned out.
Rendering
From cinematics, open the movie render queue, and render the recording. Click on untitled config, and the first thing you must do is select your output resolution. I am using 3840,2160, which is 4K. Search for color output, open misc and tick the box. Open console variables, type r.ScreenPercentage, and raise it to at least 100. The higher the value the better the quality, though the more taxing on your RAM. Then do r.NaniteRayTracingMode, and set it to 1. Search for game overrides and high resolutions. Now you can render it! Choose the render(local) if this is your first time, the remote make high quality frames, but doesn't pack them into one folder and it is very costly.
For safety reasons you will find that it exported your clip as hundreds of images rather than a video. This is a safety feature as to avoid crashing, but your video is probably short enough that this isn't a problem. Just follow one of these two options:
- Export it as a video: In the MRQ, click on the Unsaved Config button. Select the .jpg Sequence [8bit] or .png Sequence [8bit] entry and press Delete. Click the + Setting button at the top left and choose one of the following from the Export category: Command Line Encoder: Used to export .mp4 files. Note: This requires you to have FFmpeg installed and linked in your Project Settings, Apple ProRes: Used to export high-quality .mov files. Ensure the "Apple ProRes" plugin is enabled in your project, AVI (Legacy): Not recommended for high-quality work but available for quick exports. Ensure you have Deferred Rendering added to your settings list, as this is required for the engine to actually "see" and render your frames. Click Accept and then Render Local to start the process.
- Put it together yourself(What I am doing): I am using Blender to do this. Open Blender, go to file, new, then video editing. Click the + Add button, and select video/ sequence
You're done!!!
Congratulations!
If you follow these instructions, I hope you will come out at the end having a cinema worthy film, even if its just a boat on water. Thank you for sticking with me till the end, and I hope I inspired you enough to not stop now on your new found hobby of video design. Note: I didn't upload mine, as the file was too large. Note: If you watched my video, it was short and there is a corner blur. This is because I had to cut the time down so I could upload it in here for you guys to see. I prioritized the 4K rendering over the blurry corner.