Garry's Mod Wiki

Revision Difference

HTML_Web_Engine#568213

<warning>This page is a draft work-in-progress.</warning> <title>Chromium Web Renderer</title> # Description Garry's Mod includes the Chromium Embedded Framework (CEF) web rendering engine. As of 2025 it is **CEF 86** on almost every GMod build, replacing the former **Awesomium** (Chromium 17). The web renderer is used by the Main Menu, <page text="Loading Screen">Loading URL</page>, and the <page>HTML</page> / <page>DHTML</page> panels. <warning>Awesomium is still used on some Linux systems. See [versions](#Versions) below for details. CEF will replace this last remaining Awesomium integration in future.</warning> <warning>Awesomium is still used on some Linux systems. See [versions](#versions) below for details. CEF will replace this last remaining Awesomium integration in future.</warning> # Versions Since 2025, GMod is using CEF 86 on all supported platforms and <page text="branches">Dev Branch</page>, except for Linux's `main`/`dev` branches where it still uses Awesomium. On all MacOS and some Linux systems, GMod crashes on launch. Third-party utility GModPatchTool, which updates CEF to version 137, fixes the launch crash on these platforms. ## By Platform/Branch | Platform [Branch] | Included Web Renderer | Status | | --- | --- | --- | | **Windows** (all branches) | **CEF 86** | Stable | | **Linux** [`main`/`dev`] | **Awesomium** <br/>(Chromium 17) | Crashes on load for many users but works for others. <br/> Will be replaced with CEF when Gmod's 64bit Linux builds reach dev. | | **Linux** [`x86-64`] | **CEF 86** | Crashes on load. Requires GModPatchTool to run the game, which updates it to **CEF 137**. | | **MacOS** (only exists in `x86-64` branch) | **CEF 80** | Crashes on load for all users. Requires GModPatchTool to run the game, which updates it to **CEF 137**. | ## By Web Engine | Web Renderer | Used by | | | --- | --- | --- | --- | | **Awesomium** (Chromium 17) | **Some Linux** users on `main`/`dev`. | _No Windows users._<br/>_No Mac users._ | | **CEF 86** | **All Windows** users at a minimum (all branches). | _Likely no Linux users._<br/>_No Mac users._ | | **CEF 137** | **All MacOS** users need `x86-64`+GModPatchTool to run the game. <br/>**Most Linux** users, via `x86-64`+GModPatchTool. <br/>**Some Windows** users optionally use GModPatchTool, not required to run game. | - | # Web development ## Detecting browser Don't base browser support on detecting a specific Chrome version (eg 86) or branch, as this won't be accurate for some users and for future GMod updates. Check for Awesomium instead. Example: ⤶ Check for Awesomium instead. Example: ```js var IS_AWESOMIUM = navigator.userAgent.toLowerCase().indexOf("awesomium") != -1; ``` If `IS_AWESOMIUM` is true, you can run your legacy fallback code, or show a warning message about how the user needs to be using CEF. If `IS_AWESOMIUM` is false, the user is running at least CEF 86 or any future newer version. You can safely run your more modern code or modern feature detection. ## Supported features CEF 86 is from 2020 and is much more up-to-date than Awesomium (2012), but is still outdated and missing some functionality that is considered baseline today. While developing, use sites such as [Can I Use](https://caniuse.com/) and [MDN Web Docs](https://developer.mozilla.org/search) to search for features/functions. They will list if those features are supported in Chrome 86 (for CEF) or Chrome 17 (for Awesomium), if you need to use a prefixed version or older version of the standard, if there are any bugs to be aware of, etc.