This article relates to the game "Titanfall". Click here for more information.
This article's documentation is for anything that uses the Source engine. Click here for more information.

Titanfall engine branch: Difference between revisions

From Valve Developer Community
Jump to navigation Jump to search
No edit summary
 
(40 intermediate revisions by 5 users not shown)
Line 2: Line 2:
{{source topicon}}{{titanfall topicon}}
{{source topicon}}{{titanfall topicon}}
<div style="float:right">
<div style="float:right">
[[File:Apex Legends - Screenshot 5.jpg|340px|thumb|Promotional screenshot of {{apex|4.1}}, which runs on a heavily modified version of the Source Engine called {{tfbranch|3.1}}, featuring [[DirectX Versions|DirectX (Direct3D)]] 11, detailed models and better graphics, plus increased the engine limit, allowing maps to be larger.]]
[[File:Apex Legends - Screenshot 5.jpg|340px|thumb|Promotional screenshot of {{apex|4.1}}, which runs on a heavily modified version of the Source Engine called {{tfbranch|3.1}}, featuring [[DirectX Versions|DirectX (Direct3D)]] 11, detailed models and better graphics, plus increased engine limits, allowing maps to be larger.]]
[[File:Titanfall - Screenshot 5.jpg|340px|thumb|Promotional screenshot of {{titanfall|4.1}}, the first game on this engine branch.]]
</div>
</div>
The {{tfbranch|4}} (also known as ReSource internally) is a third-party {{Source|3.1}} branch developed by [[W:Respawn Entertainment|Respawn Entertainment]] using licensed Source Engine code from [[Valve]]. It is a heavily modified version of the {{p2branch|1}}{{cite|1}} that adds many huge modifications and improvements that bring Source close to modern standards, while keeping the game running on consoles at 60FPS with stable framerate. This engine branch is still in active development.
The {{tfbranch|4}} (also known as ReSource internally) is a third-party {{Source|3.1}} branch developed by [[W:Respawn Entertainment|Respawn Entertainment]] using licensed Source Engine code from [[Valve]]. It is a heavily modified version of the {{p2branch|1}}{{cite|1}} that adds many huge modifications and improvements that bring Source close to modern standards, while keeping the game running on consoles at 60FPS with stable framerate. This engine branch is still in active development.


It is also the only Source branch to be released on modern consoles.
It is also the only Source branch to be released on modern consoles, until 2022 with the release of {{pcc|1}} for {{switch|1}}, running on modified {{src13sp|1}} branch ({{portal}}) and {{p2branch|1}} ({{p2}}).


== Features ==
== Features ==
Line 13: Line 14:
; Native [https://en.wikipedia.org/wiki/DirectX#DirectX_11 DirectX 11] ([[DirectX_Versions#DirectX_11|dxlevel 110]]) and [https://en.wikipedia.org/wiki/DirectX#DirectX_12 DirectX 12] ([[DirectX_Versions#DirectX_12|dxlevel 120]]) {{apex|only}} renderer
; Native [https://en.wikipedia.org/wiki/DirectX#DirectX_11 DirectX 11] ([[DirectX_Versions#DirectX_11|dxlevel 110]]) and [https://en.wikipedia.org/wiki/DirectX#DirectX_12 DirectX 12] ([[DirectX_Versions#DirectX_12|dxlevel 120]]) {{apex|only}} renderer
: First Source engine branch to support both DirectX 11 and 12 renderer.
: First Source engine branch to support both DirectX 11 and 12 renderer.
: DirectX 11 (Direct3D 11) is used by default, supported in all games. Previous versions (DirectX 9.0c) has been dropped.
: DirectX 11 (Direct3D 11) is used by default, supported in all games (later removed in {{apex|1}} since March 2025). Previous versions (DirectX 9.0c) has been dropped.
: DirectX 12 (Direct3D 12) is currently only supported in {{apex|1}}, and can be enabled with {{code|-anticheat_settings{{=}}SettingsDX12.json}} [[command line argument]]. Requires Windows 10 or later.<br>
: DirectX 12 (Direct3D 12) is currently only supported in {{apex|1}}. [https://www.ea.com/games/apex-legends/apex-legends/news/beast-mode-event#:~:text=This%20patch%20removes%20the%20option%20for%20DirectX%2011. Enabled by default] since March 2025. <br>
; [[Deferred lighting|Deferred shading]]
; [https://learn.microsoft.com/en-us/windows/win32/dxtecharts/cascaded-shadow-maps Cascaded Shadow Maps] {{also|{{asd}} {{cso2}} {{csgo}} {{strata}} {{Xengine}}}}
: Cast very detailed shadows from the skybox.
; [[Deferred renderer|Deferred shading]]
: Allow many lights to be rendered on scene with little performance impact.
: Allow many lights to be rendered on scene with little performance impact.
; New rendering system with [[Physically Based Rendering]]
; New rendering system with [[Physically Based Rendering]]
:  
: A approach that seeks to render images in a way that models the lights and surfaces with optics in the real world.
; Texture streaming {{also|{{csgo}}{{strata}}{{vindictus}}}}
; Texture streaming {{also|{{csgo}}{{strata}}{{vindictus}}{{tf2branch}}}}
: Reduce system RAM and graphics card VRAM by streaming textures.
: Reduce system RAM and graphics card VRAM by streaming textures.
; Better [[HDR|HDR Rendering]]
; Better [[HDR|HDR Rendering]]
: Improves the HDR (bloom) lighting.{{clarify}}
: Improves the HDR (bloom) lighting.{{clarify}}
; Native HDR displays support (not to be confused with HDR Rendering)
; Native HDR displays support (not to be confused with HDR Rendering)
: Outputs the game image to HDR-capable display, which is capable of rendering image with higher contrast, brighter image and more intense colors. Exclusive to {{ps5|1}} and {{xboxseries|1}} version of {{apex|1}} only. On PC, it can be workaround by using Windows 11's Auto HDR feature.
: Outputs the game image to HDR-capable display, which is capable of rendering image with higher contrast, brighter image and more intense colors. Exclusive to {{ps5|1}} and {{xboxseries|1}} version of {{apex|1}} only.</br>Not available on PC, but it can be workaround by using Windows 11's Auto HDR feature.
; [[Anti-aliasing#TAA|TAA anti-aliasing]]
; [[Anti-aliasing#TAA|TAA anti-aliasing]]
: '''TAA''' (aswell as TXAA, TSSAA/TSAA and other variant of TAA) is a new method of anti-aliasing which was common in later games since 2010s, as most games are transitioning from forward rendering to deferred rendering which allows many lights to be rendered with little performance impact. TAA is a spatial anti-aliasing technique that works by combines information from past frames and the current frame (while simultaneously jittering between both frames) to smooth the current frame. Through it's main drawbacks is that it can cause ghosting and blurriness (basically creating motion blur) to the image, especially on lower framerate ([https://www.youtube.com/watch?v=GJ0eFYJYkkw Example]). Some of the TAA drawback can be workaround by applying sharpening filter on the image.
: '''TAA''' (aswell as TXAA, TSSAA/TSAA and other variant of TAA) is a new method of anti-aliasing which was common in many modern games since 2010s, as most games transitions from forward rendering to deferred rendering, a technique which allows many lights to be rendered with little performance impact, and because MSAA (on deferred renderer, are more [[expensive]], harder to implement and less effective compared to forward renderer). TAA is a spatial anti-aliasing technique that works by combines information from past frames and the current frame (while simultaneously jittering between both frames) to smooth the current frame. Through it's main drawbacks is that it can cause ghosting and blurriness (basically creating motion blur) to the image, especially on lower framerate ([https://www.youtube.com/watch?v=GJ0eFYJYkkw Example]). Some of the TAA drawback can be workaround by applying sharpening filter on the image.
: TAA was first introduced with {{Titanfall|1}} as "TXAA" which requires "MSAA" to function, but this result in sharper image quality compared to regular TAA/TSSAA, which later introduced in {{titanfall2|1}}, replacing TXAA. MSAA were later removed starting with {{apex|1}}.
: TAA was first introduced with {{Titanfall|1}} as "TXAA" which requires "MSAA" and a {{nvidia|1}} GPU to function. Later implementation called TSSAA (or simply TAA) was introduced in {{titanfall2|1}}, replacing TXAA, and doesn't need MSAA and a NVIDIA graphics card to function. MSAA were later removed starting with {{apex|1}}.


=== Audio ===
=== Audio ===
Line 35: Line 38:
: Speex audio codec
: Speex audio codec
: Titanfall uses Wwise sound system.
: Titanfall uses Wwise sound system.
: Miles Sound System (for {{titanfall2|1}} and {{apex|1}}) has been updated to properly support 7.1 surround on modern version of Windows and better [[DSP]] effects.
: {{titanfall2|1}} and {{apex|1}} uses updated version of Miles Sound System, which properly support 7.1 surround on modern version of Windows and better [[DSP]] effects.
=== Networking ===
=== Networking ===
; New netcode and {{only|{{apex}}}} Cross-play support
; New netcode and {{only|{{apex}}}} Cross-play support
Line 42: Line 45:
; 64-bit support
; 64-bit support
: Full support for 64-bit, which improves performance and allow the engine to access more than 4GB of RAM. 32-bit are not supported on this branch.
: Full support for 64-bit, which improves performance and allow the engine to access more than 4GB of RAM. 32-bit are not supported on this branch.
; Modern and next-gen console support ({{PS4|2}}, {{PS5|2}}, {{nsw|2}}, {{Xboxone|2}} and {{XboxXS|2}})
; Modern console support ({{PS4|2}}, {{PS5|2}}, {{nsw|2}}, {{Xboxone|2}} and {{XboxXS|2}})
: Supports next-generation consoles.
: Titanfall, Titanfall 2 and Apex Legends support modern game consoles, running at 60 FPS. Very little use of modders, by the way.
=== Other ===
=== Other ===
; Customized version of [[BSP]] and [[VPK]]
; Customized version of [[BSP]] and [[VPK]], along with RPAK (Respawn Pack File)
: Titanfall uses BSP version 29, with the BSP headers using {{code|rBSP}} (Respawn BSP) instead of {{code|VBSP}} as identifier.
: Titanfall uses BSP version 29, Titanfall 2 uses version 37 and Apex Legends uses version 47,{{cite|2}}{{cite|3}} with the BSP headers using {{code|rBSP}} (Respawn BSP) instead of {{code|VBSP}} as identifier.
: Titanfall up to Apex Legends at launch, uses modified version of VPK file format, while Titanfall 2 also ships with RPAK file format, using it alongside heavily-modified VPK. Later updates to Apex Legends completely removed VPK files and moved remaining files to RPAK file format.


== Availability ==
== Availability and usage ==
Source code and official tools for this branch are not available. However, the community has made unofficial mod tools (such as [https://northstar.tf/ Northstar], [https://github.com/p0358/black_market_edition Black Market Edition], and [https://github.com/MRVN-Radiant/MRVN-Radiant MRVN-Radiant]) for these games.
{{see also|[[:Category:Titanfall engine branch games]]}}
{{see also|[[:Category:Titanfall engine branch games]]}}
* {{titanfall|4}} (earlier version, delisted on Steam)
* {{titanfall|4}} (earlier version, delisted on Steam)
* {{titanfall2|4}} (earlier version)
* {{titanfall2|4}} (earlier version)
* {{Wiki|Titanfall Online}} (cancelled)
* {{apex|4}}
* {{apex|4}}


{{References|
{{References|
{{Ref2|cite id=1|According to the sequel Titanfall 2's <code>steam.inf or gameinfo.txt</code>, the engine contains a leftover appid (620) for {{portal2|4}} as of March 2024.
{{Ref2|cite id=1|According to <code>steam.inf</code> and <code>gameinfo.txt</code>, the games contain a leftover SteamAppID (620) for {{portal2|4}} as of March 2025 (both Titanfall 1 and 2). The AppID was likely left unchanged as both Titanfall and Titanfall 2 were originally released on Origin (now EA App), making "SteamAppID" unused. When [https://github.com/r1delta/r1delta R1Delta] is installed into Titanfall, and launching Titanfall Dedicated Server, using {{ent|version}} console command also confirms that the game uses Protocol version 2001, same as Portal 2. Also, most of the {{code|.vtf}} files inside the game's {{code|.vpk}} files are version 7.5, which were introduced in {{asbranch|1}}.}}
{{Confirm|Does Apex Legends or Titanfall 1 have this?}}}}
{{ref2|cite id=2|[https://github.com/MRVN-Radiant/MRVN-Radiant/blob/main/tools/remap/source/games.h MRVN-Radient source code ({{code|games.h}})]}}
{{ref2|cite id=3|[https://github.com/snake-biscuits/bsp_regen/blob/main/src/bsp.hpp bsp_regen source code ({{code|bsp.hpp}})]
<syntaxhighlight lang="cpp">bool is_valid() {
        if (header_->magic == MAGIC_rBSP) {
            switch (header_->version) {
                case 29:  // Titanfall
                case 36:  // Titanfall 2 [PS4] (Tech Test)
                case 37:  // Titanfall 2
                    return (header_->_127 == 127);
                default:
                    return false;
            }
</syntaxhighlight>
}}
}}
}}



Latest revision as of 07:09, 22 August 2025

English (en)Русский (ru)中文 (zh)Translate (Translate)

Promotional screenshot of Apex Legends Apex Legends, which runs on a heavily modified version of the Source Engine called Titanfall branch, featuring DirectX (Direct3D) 11, detailed models and better graphics, plus increased engine limits, allowing maps to be larger.
Promotional screenshot of Titanfall Titanfall, the first game on this engine branch.

The Titanfall branch Titanfall branch (also known as ReSource internally) is a third-party Source branch developed by Respawn Entertainment using licensed Source Engine code from Valve. It is a heavily modified version of the Portal 2 engine branch[1] that adds many huge modifications and improvements that bring Source close to modern standards, while keeping the game running on consoles at 60FPS with stable framerate. This engine branch is still in active development.

It is also the only Source branch to be released on modern consoles, until 2022 with the release of Portal Companion Collection for Nintendo Switch, running on modified Source 2013 Singleplayer branch (Portal) and Portal 2 engine branch (Portal 2).

Features

Todo: List all of the features of this modified engine.

Renderer

Native DirectX 11 (dxlevel 110) and DirectX 12 (dxlevel 120) (only in Apex Legends) renderer
First Source engine branch to support both DirectX 11 and 12 renderer.
DirectX 11 (Direct3D 11) is used by default, supported in all games (later removed in Apex Legends since March 2025). Previous versions (DirectX 9.0c) has been dropped.
DirectX 12 (Direct3D 12) is currently only supported in Apex Legends. Enabled by default since March 2025.
Cascaded Shadow Maps (also in Alien Swarm Deferred Counter-Strike Online 2 Counter-Strike: Global Offensive Strata Source Xengine)
Cast very detailed shadows from the skybox.
Deferred shading
Allow many lights to be rendered on scene with little performance impact.
New rendering system with Physically Based Rendering
A approach that seeks to render images in a way that models the lights and surfaces with optics in the real world.
Texture streaming (also in Counter-Strike: Global OffensiveStrata SourceVindictusTeam Fortress 2 branch)
Reduce system RAM and graphics card VRAM by streaming textures.
Better HDR Rendering
Improves the HDR (bloom) lighting.[Clarify]
Native HDR displays support (not to be confused with HDR Rendering)
Outputs the game image to HDR-capable display, which is capable of rendering image with higher contrast, brighter image and more intense colors. Exclusive to PlayStation 5 and Xbox Series X/S version of Apex Legends only.
Not available on PC, but it can be workaround by using Windows 11's Auto HDR feature.
TAA anti-aliasing
TAA (aswell as TXAA, TSSAA/TSAA and other variant of TAA) is a new method of anti-aliasing which was common in many modern games since 2010s, as most games transitions from forward rendering to deferred rendering, a technique which allows many lights to be rendered with little performance impact, and because MSAA (on deferred renderer, are more expensive, harder to implement and less effective compared to forward renderer). TAA is a spatial anti-aliasing technique that works by combines information from past frames and the current frame (while simultaneously jittering between both frames) to smooth the current frame. Through it's main drawbacks is that it can cause ghosting and blurriness (basically creating motion blur) to the image, especially on lower framerate (Example). Some of the TAA drawback can be workaround by applying sharpening filter on the image.
TAA was first introduced with Titanfall as "TXAA" which requires "MSAA" and a Nvidia GPU to function. Later implementation called TSSAA (or simply TAA) was introduced in Titanfall 2, replacing TXAA, and doesn't need MSAA and a NVIDIA graphics card to function. MSAA were later removed starting with Apex Legends.

Audio

Custom in-house Sound System
Audio system improvements
Speex audio codec
Titanfall uses Wwise sound system.
Titanfall 2 and Apex Legends uses updated version of Miles Sound System, which properly support 7.1 surround on modern version of Windows and better DSP effects.

Networking

New netcode and (only in Apex Legends) Cross-play support
Cross-platform multiplayer is supported starting with Apex Legends, allowing users other platforms (such as consoles), to play with PC users.

Platform

64-bit support
Full support for 64-bit, which improves performance and allow the engine to access more than 4GB of RAM. 32-bit are not supported on this branch.
Modern console support (PlayStation 4 PlayStation 4, PlayStation 5 PlayStation 5, Nintendo Switch Nintendo Switch, Xbox One Xbox One and Xbox Series X/S Xbox Series X/S)
Titanfall, Titanfall 2 and Apex Legends support modern game consoles, running at 60 FPS. Very little use of modders, by the way.

Other

Customized version of BSP and VPK, along with RPAK (Respawn Pack File)
Titanfall uses BSP version 29, Titanfall 2 uses version 37 and Apex Legends uses version 47,[2][3] with the BSP headers using rBSP (Respawn BSP) instead of VBSP as identifier.
Titanfall up to Apex Legends at launch, uses modified version of VPK file format, while Titanfall 2 also ships with RPAK file format, using it alongside heavily-modified VPK. Later updates to Apex Legends completely removed VPK files and moved remaining files to RPAK file format.

Availability and usage

Source code and official tools for this branch are not available. However, the community has made unofficial mod tools (such as Northstar, Black Market Edition, and MRVN-Radiant) for these games.

References

References
1. According to steam.inf and gameinfo.txt, the games contain a leftover SteamAppID (620) for Portal 2 Portal 2 as of March 2025 (both Titanfall 1 and 2). The AppID was likely left unchanged as both Titanfall and Titanfall 2 were originally released on Origin (now EA App), making "SteamAppID" unused. When R1Delta is installed into Titanfall, and launching Titanfall Dedicated Server, using version console command also confirms that the game uses Protocol version 2001, same as Portal 2. Also, most of the .vtf files inside the game's .vpk files are version 7.5, which were introduced in Alien Swarm engine branch..
3. bsp_regen source code (bsp.hpp)
bool is_valid() {
        if (header_->magic == MAGIC_rBSP) {
            switch (header_->version) {
                case 29:  // Titanfall
                case 36:  // Titanfall 2 [PS4] (Tech Test)
                case 37:  // Titanfall 2
                    return (header_->_127 == 127);
                default:
                    return false;
            }
.