Request for Guidance on Updating CEF in Unreal WebBrowser Plugin

Hello,

We are encountering issues with the built-in Unreal WebBrowser plugin. Specifically, we are trying to open a web page built with the latest web technologies, but the current WebBrowser (based on an outdated CEF version, around Chromium 90) does not support them. The latest CEF version is 137, and this discrepancy is causing rendering and compatibility problems - the page not loading properly.

We’ve explored third-party plugins as alternatives, but many of them interfere with internal Unreal Engine features, such as the Bridge plugin, Fab functionality and have led to crashes which is not acceptable for us.

We are considering updating the CEF library ourselves by modifying the Unreal Engine source version. However, we assume that beyond replacing the CEF binaries and sources, additional changes may be required within the engine to support the newer CEF version correctly.

Could you please guide us through the necessary steps to properly update the CEF library in the engine?

If there is an alternative or officially supported solution to this issue, we would greatly appreciate your recommendation.

Thank you,

Harut

Hello! After asking around, I obtained information from UE engineering that we have updated to CEF v128 in UE 5.6. Could you download 5.6 and backport what is needed in UE 5.5 when moving over the new CEF binaries to 5.5?

Hello [mention removed]​,

We tested the problematic web page using Unreal Engine 5.6 (Editor), but unfortunately, it still does not load correctly — just as in UE 5.5.

To investigate further, I reviewed the CEF binaries located in

UE_5.6/Engine/Source/ThirdParty/CEF3

and noticed that the Windows platform binaries appear to be unchanged from those in UE 5.5. It seems the CEF update (to v128) was applied only for the Linux platform (CEFxxxv128), while the Windows binaries still reflect an older version.

Could you please clarify whether CEF v128 was intended to be included for Windows in UE 5.6? If not, is there a planned update or an available branch where we can access it?

Thank you,

Harut

That is indeed different from what I have here. I’ll check with the team later (other timezone) what was happening here during 5.6 release.

UPD:

I spent some time investigating the issue further and found that Unreal Engine 5.6 source version includes multiple versions of CEF binaries, including version 128.

However, when I ran a simplified test project using Epic’s built-in WebBrowser plugin in a custom-built 5.6 engine (Unreal Engine Source Code version), the browser still appeared to use the older Chromium version 90.

Digging into CEF3.Build.cs, I found the following logic:

`bool bUseExperimentalVersion = true;

if (Target.Platform == UnrealTargetPlatform.Win64)
{
bUseExperimentalVersion = false;
}

CEFVersion = bUseExperimentalVersion
? “128.4.13+ge76af7e+chromium-128.0.6613.138”
: “90.6.7+g19ba721+chromium-90.0.4430.212”;`This explains why, on Windows, the engine defaults to using the older Chromium 90 version even though v128 is available.

I then forced bUseExperimentalVersion = true for the Win64 platform and rebuilt the engine. The build succeeded, but unfortunately, launching the engine resulted in a crash during startup (crash snapshot below).

It appears that CEF v128 is included in the source, but not fully integrated or officially supported yet on Windows — even in Unreal Engine 5.6.

Could you please confirm whether support for CEF v128 on Windows is planned for an upcoming release or still considered experimental? And what solution you can suggest in this case.

Thanks!

>It appears that CEF v128 is included in the source, but not fully integrated or officially supported yet on Windows — even in Unreal Engine 5.6.

Yes, that is correct. It appears that a release of v128 was made, but it was later reverted before it was finalized. I’m not sure of the reason yet.

I’m trying to figure out if we can share the “missing” v128 files from 5.6 and you could go from there, but I need more time for this.

Hi, I shared a link. Please use this and set bool bUseExperimentalVersion = true; inside Engine/Source/ThirdParty/CEF3/CEF3.build.cs

Hi,

Ok thank you!! Let me try to use it first in UE5.6 then 5.5 and let you know results.

Hi [mention removed]​ ,

Would like to note that changes applied for 5.6 works as expected. Now I’m starting to integrate changes for 5.5 based on [mention removed]​’s guide.

Thank You for support!!!

Hello [mention removed],

Thank you for your assistance — the steps you provided fully resolved the initial issue, and we’re now able to open the website in the built-in web browser as expected. Much appreciated!

However, we’ve encountered a new issue during the packaging phase. The cooking process completes successfully, but packaging fails with the following error:

`********** COOK COMMAND COMPLETED **********

********** STAGE COMMAND STARTED **********

Creating Staging Manifest…

Patching bootstrap executable; E:\projectname\Intermediate\Staging\project.exe

Can’t deploy D:\Resources\locales\af.pak because it doesn’t start with E:\projectname or D:\UE55C

(see D:\UE55C\Engine\Programs\AutomationTool\Saved\Logs\Log.txt for full exception trace)

AutomationTool executed for 0h 16m 23s

AutomationTool exiting with ExitCode=1 (Error_Unknown)

BUILD FAILED`Upon investigation, we noticed that af.pak and other localization files are located under:

D:\UE55C\Engine\Binaries\ThirdParty\CEF3\Win64\128.4.13+ge76af7e+chromium-128.0.6613.138\Resources\locales

However, the system appears to attempt referencing them from a different location:

D:\Resources\locales\af.pak

Could you please advise how we might resolve this deployment issue or adjust the path to keep everything within allowed directories?

Thanks again for your continued support!

Best regards,

Harut