Overview of Unreal Engine 5 (UE5) and MetaHumans on Apple Silicon (M1)

The first experience with UE5.0.0EA and MetaHumans on the M1 chip is contradicting: it is mind-blowing and full of unexpected issues at the same time. I found most of the solutions but am unsatisfied with the result and look forward to future updates.

Ivan Zhdanov
12 min readNov 7, 2021
Photo by Phil Shaw on Unsplash

Table of contents

Introduction

I want to share my first experience with Unreal Engine 5 (UE5.0.0EA) and MetaHumans on my MacBook M1 Air 2020. It is more like a note about my work in progress to fix the achieved results and leave a memorable article to continue the work once some software or hardware updates come. I will try to touch on a broad set of questions and issues I had on my way while being completely new to Unreal Engine. I searched Google and Youtube, and I will summarize the links to exciting projects I have encountered.

1. MetaHumans

I am astonished about the MetaHuman Creator presented by Unreal Engine and how easy creating a high-fidelity 3D human model can be. To access the MetaHuman Creator, you need to apply to early access first. In a short time, you will get an email with the access rights. Here are some links you need to check out:

Here is the feedback of a big gaming production company regarding the MetaHumans with some examples.

There are plenty of Tutorials on how to create a metaHuman and adjust its appearance. Here a just some of them:

  • MetaHuman Creator — Basic Introduction — Create Realistic Digital Humans

You see how extraordinary and lively the MetaHumans are. There is unlimited potential for their use in Virtual and Augmented Reality, which will take over our lives in the following decades.

Here are some production examples I am thrilled with. It is just an immersive experience to get the 100% ideal match between movement, light and sound. Of course, you would say it is soulless compared to humans, but it is still an outstanding performance and opportunity to bring together some unreal things you could only see in your dreams or sci-fi movies.

  • My alter ego’s about to live large in the Metaverse!

Isn’t it just mind-blowing? I am absolutely soacked by it’s quality and immersiveness!

  • Unreal Engine 5 MetaHuman Dance Mocap
  • MetaHuman Cloth Simulation & Movie Render Queue Test in Unreal Engine
  • "Lip Sync" | Unreal Engine 5 short film (Cyberpunk theme) + Metahuman

2. Live Link Face

One of the most powerful features of the MetaHumans is the high-fidelity face control rig and the ability to connect it with the iPhones Camera and transmit your facial expressions directly to a MetaHuman.

MetaHuman Facial Rig

The original documentation on MetaHuman Facial Rig can be found here.

It is mighty and lets to adjust the face mimics with high precision. Some bloggers share experience on mouth control refinements and more.

Live Link Face App

The Live Link Face App is available on App Store and is just fabulous. Below is an example of how to connect your iOS device to any MetaHuman model

If you have any issues with the Live Link Face App, here is an excellent guide to troubleshooting it. The author also offers a nifty checklist for that purpose. I had troubles with the iPhone connection, but in the end, I have managed to connect and try the Live Link Face function myself. It is simply outstanding!

Once you familiarize yourself with the Live Link Face, you would like to record it and make some adjustments. Here are several guidelines:

3. Animation, DeepMotion and Smart Suits

Now we can precisely control the facial expression, but about the animation and motion? Easy. There are plenty of options on how to animate your character.

Built-in & downloadable animations

Numerous animations, like walking, sitting, dancing, etc., are already available inside the Unreal Engine or downloadable from the web. Below is a good tutorial on these basic animations applied to a MetaHuman.

DeepMotion

Another great source or even THE most significant source is Artificial Intelligence and extracting animation from video recognition. An example of such a service is DeepMotion.com.

Smart Suits

You can go even further and create your animations with intelligent suits and helmets. For example, check the guy below who has made his digital avatar and animated it. Isn't it cool?

Here are some links to the manufacturers of mocap suits:

Here is one more tutorial with a cartoon character animation with a mocap lifestream workflow.

4. iClone & Character Creator

If you came to this point, it means you are interested in the topic. And I have even better news for you. Several software suits are trying to optimize the character creation and provide you with a complete pipeline of tools and resources to create unique high-fidelity characters and animate them. I like Reallusion and their products Character Creator for creating characters (aka MetaHumans + ability to make any other character, e.g. ogre, cartoon etc.) and iClone for their animations. Both products will be updated in 2022 and have tons of new features. Here are several excellent sources to get a taste of their capabilities:

The current iClone 7 dramatically extends Facial Rig control and provides a more accessible Lip Syncing mechanism. Check the official documentation on Tips to turn your MetaHumans from Unreal into Real and iClone Live Link. It focuses on the following aspects:

  • Accurate & Smooth Lip-sync
  • Face Puppet with Intuitive Mouse Control
  • Powerful & Flexible Facial Mocap
  • Face Key Editing to Fine-tune Details
  • Metahuman full-body motion control

It is an excellent set of tools and assets worth familiarizing yourself with. Also, check out the bundles of tools for indie developers which are considerably cheaper than standard licenses.

5. Unreal Engine UE5.0.0EA

Unreal Engine 5.0.0EA (Early Acess) is available, and I think it is excellent! The interface got much cleaner and modern compared to UE4. However, there is always a difference between the versions, and they are not always compatible with each other. Some users complain that some versions are more stable on one hardware and less on another. Please, read forums for this topic. I tried 5.0.0EA, 4.27.1 and 4.26.2, and all of them successfully launched on MacBook Air M1 2020. I was able to import Metahumans in all of them. I liked 5.0.0EA much more than version 4. X.X. and I would recommend it for use.

The difference between UE5.0.0EA and UE4.X.X are not just optical. There are some new features and modules. For example, the Quixel Bridge became a built-in component rather than a standalone software for UE4.X.X. After debugging mentioned below in the Bugs section. I managed to run it and import it MetaHumans into UE5.0.0EA.

Here is an awesome UE5 tutorial for beginners:

I was able to do all the steps on my Macbook Air M1 2020 and run reasonably smooth at usable 30–40FPS.

Here is one more tutorial on how to import MetaHumans into Unreal Engine. It is for 4.26.2, but it will similarly work for 5.0.0EA. The only difference is that you launch Quixel Bridge, a built-in UE. A more sophisticated tutorial with animation retargeting is available here.

6. Apple Silicon

I have used MacBook Air M1 2020 for my first experiments in Unreal Engine 5 and feel that it is not the right choice for several reasons:

  • Even if MacBook Air M1 runs reasonably smooth, the FPS for simple scenes is in the range of 30–40FPS, which is not much, and I think it might drop and become unusable for complex sets (it is my feeling right now)
  • The most critical point for me now is the quality of MetaHumans in the viewport. They look shallow quality, and it doesn't improve with zoom in or rendering even if I Force LOD at Level 0 or 1 in MetaHuman blueprint. I think it is because Apple Silicon is recognized as a mobile device and not a Desktop. I would be happy if it were just some settings, but I couldn't figure it out. Thus, I can continue learning stuff with these low-quality models, but they are not suitable for any production right now.
  • The quality of assets is also shallow right after the new installation of UE5.0.0EA. I have managed to improve it by tweaking Project Settings and enabling the SM5 feature level for Mac. Then I was able to set iOS (SM5 Renderer) in Preview Rendering Level. More information about Rendering Feature Levels can be found here.
  • I haven't managed to Cook content for Mac. The SDK is installed successfully, but after UE5 restart, it complains it is not installed correctly. I am not sure what it will impact, but yet another issue that is not solved yet. The File Validation fails as well, with a couple of errors.
  • One more thing which is annoying is a Shader Compilation. Right after the first launch of UE5, you will see that your Apple Silicon is busy with Shader Compilation, and it takes about 30 minutes to be finished with likely software freezes on the way. It will happen each time when you import new assets like MetaHumans. I believe that it is partially an issue of Apple Silicon optimization.
  • In general, Apple Silicon looks too new for the moment, and there is always something not yet supported. It has great potential, but it might take several years until you rely on it in your job.

I have found a good clip on experience with Unreal Engine 5 on Mac M1 Apple Silicon. It proves the statement: it works but with limitations. Here are some notes on the topic as well. There is another review of a 2021 M1 MacBook Pro with a more promising outlook.

Below is one more comment of an M1 user:

So i got my hands on an M1, same problems at first. But i got it to work stable now (1–2 weeks without crashes) by cooking content for Mac and allowing the editor to use the cooked content.Project Settings:* Project > Supported Platforms > Enable Mac* Platforms > Mac > Enable Force 32bit Floating Point Precision (not sure if necessary)* Platforms > Mac > Architectures to Package For (Experimental) > choose Apple Silicon* Engine > Cooker > Enable Allow Cooked Content In The Editornow in the editor let it cook for Mac* File > Cook content for Macand let it cook.(Also i’m running File > Validate Data to let it pre-compile a lot before starting work with the editor.)Other factors like render settings or project size (my machine here has only 8GB) don’t seem to make a difference with stability.A bigger desktop example project from the launcher (infiltrator demo) might run nicely for a long time but a small basic ThirdPersonTemplate can crash right after opening it.Editor FPS performance humiliates a 3500€/$ MacbookPro (16fps vs 120fps in ActionRPG Example). But, like others already stated, compile times are slower so coders would benefit from an intel-cpu for better compile times.

7. Bugs fixing

I have encountered several bugs on my learning path.

WASD keys are only enabled when you press a Mouse Button

I was desperate that I couldn't navigate in a viewport with WASD keys. There is an option called Flight Camera Control Type under Level Editor > Viewports in Editor Settings. By default, it is set to Use WASD only when a Mouse Button is pressed. You need to unclick it if you would like to use the keys without Mouse Button being pressed.

Can't launch UE

I've just installed UE but couldn't launch the program. When I press launch, I receive the following message:

Can’t find Xcode install for Metal compiler. Please install Xcode and run Xcode.app to accept license or ensure active developer directory is set to current Xcode installation using xcode-select.

The issue was that I had recently installed MacOS Monterrey and had broken the link to XCode installation (I had it installed already). To fix it, you need to run the following code in your terminal and then relaunch the UE:

sudo xcode-select -s /Applications/Xcode.app/Contents/Developer

I click the Quixel Bridge button in the Content menu, the UE5 crashes.

When I click the Quixel Bridge button in the Content menu, the UE5 crashes. It wasn't enjoyable because I couldn't import Metahumans from Quixel Bridge. I have asked guys on the forum, and they have found the answer. Checking the crash log ~/Library/Application Support/Epic/UnrealEngine/5.0/Saved/Crashes, it refers to a Chromium Embedded Framework / WebBrowser dylib issue, so it is necessary to go the Editor plugins and enable two plugins:

  • Web Authentication Plugin
  • Web Browser

After enabling both, the Quixel Bridge plugin started working without an issue. Not sure if both are necessary or one of them already does the job.

UE5 crashes without notice when trying to drag MetaHumand into the scene

After I had solved the issue with Quixel Bridge and successfully imported MeteHuman into the project, UE5 crashed without notice when I tried to drag MetaHumand into the scene. To solve this problem on Macs, it is necessary to disable Hair summation in the Hair component of a metahuman. Then the import goes successful. Here are the details in the bottom of the chat.

Failure to Cook content on Mac

I haven't managed to cook content on Mac even if it is reported first the SDK is successfully installed. After rebooting and trying to cook, I receive the following error message:

UATHelper: Cooking (Mac): ERROR: Mac: Unable to find any Sdks that could be installed
UATHelper: Cooking (Mac): Scanning for envvar changes… PackagingResults: Error: Mac: Unable to find any Sdks that could be installed
UATHelper: Cooking (Mac): … done!
UATHelper: Cooking (Mac): Cleaning Temp Paths…
UATHelper: Cooking (Mac): AutomationTool exiting with ExitCode=10 (Error_SDKNotFound)
UATHelper: Cooking (Mac): RunUAT ERROR: AutomationTool was unable to run successfully. Exited with code: 10 PackagingResults: Error: AutomationTool was unable to run successfully. Exited with code: 10

Validation failure

I wasn't able to validate files and received the following error:

[AssetLog] /Users/Shared/Epic Games/UE_5.0EA/Engine/Content/Tutorial/InWorldBlueprintEditing/TutorialAssets/IWBE_Blutility.uasset: Default__IWBE_Blutility_C is not valid. See the MapCheck log messages for details.

I couldn't make my iPhone visible as a Live Link Face device

Following all the guidance and troubleshooting checklists for the Live Link Face app, I couldn't make my iPhone visible as a Live Link Face device in UE. I have tried all UE versions and tried to connect my iPad. Nothing worked until some moment, hours after when I did nothing. iPhone just suddenly appeared as a device. Thus, I have no explanation why it didn't work before. Everything was set up correctly from the very beginning:

  • All plugins were enabled
  • The target I.P. was correct
  • Devices were on the same WiFi
  • A firewall is off or on with allowed connections for Unreal
  • Live Face Link had access to the local network on iPhone etc.

Anyway, it seems that UE crashes pretty often for any reason. So check this general guidance on UE troubleshooting. The first what you need to do is to take a deep breath!

Outlook

I am fascinated by the UE5 and Metahumans, and I am slightly frustrated about their combination with Apple Silicon M1. I had multiple issues on my way, and in the end, I couldn't get the quality I needed for production. However, I am looking forward to software and hardware updates to continue my UE and Metahumans journey. I hope you find this guide helpful, and it will save you some time which I lost during troubleshooting multiple issues and searching for tutorials.

Enjoy!

Useful Links

--

--

Ivan Zhdanov

I am a Power Plant & Digital Industrial Engineer with more than 10 years of experience. I lead the design, tendering and installation of energy projects.