Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Re Engine

Download as pdf or txt
Download as pdf or txt
You are on page 1of 5

RE ENGINE

Origins and Development

In the early 2000s, Capcom used the ACR and Oni3 Engine as its main engines,
modifying them for each project as needed. Starting in 2005, they began using the MT
Framework, developed in-house. This became Capcom's standard engine, used in
different forms like Lite and Mobile for 3DS and smartphone titles. In 2012,
development of the Panta Rhei began, intended to replace the MT Framework.
However, issues with Panta Rhei hindered the production of Resident Evil 7, leading to
its abandonment. Parts of it were redesigned to bring life to the RE Engine, that was
born in 2014. During the same period, the World Engine, a highly customizable
rendering engine derived from the MT Framework, was created for Monster Hunter.
Since 2014, the following games have been developed on the RE Engine:

- Resident Evil 7;
- Resident Evil Village;
- Resident Evil 2 Remake;
- Resident Evil 3 Remake;

- Devil May Cry 5.

(Source: CAPCOM RE:2019)


Modularity at its Core

The RE Engine has a modular structure that allows for combining modules as needed,
with the kernel at its center. All modules are loaded into the kernel. A new project can
utilize a new renderer, Havok for physics, Wwise for sound, and so on, without any
hindrance.

(Source: CAPCOM RE:2019)

Regarding modules, there are dependency requirements. For example, using an effects
module requires a rendering module. Another scenario is when a module can work
with or without specific dependencies. Lastly, there's optional dependency, where a
module benefits from using another but doesn't strictly require it.
(Source: CAPCOM RE:2019)

The engine has fixed modules in its main loop. First, each independent module
initializes, followed by their dependent modules. Before entering the loop, "Start" is
called, then "Update" enters the loop. "Start" is called again in case of a restart. Finally,
dependent modules are released first, followed by independent ones.

(Source: CAPCOM RE:2019)

Through modules, the engine allows both new and old projects to run on the latest
engine version by creating new modules or adding existing ones to others. Project
teams are responsible for removing obsolete modules and adding necessary ones at
the end of the project to maintain performance. These measures enable maintaining a
project's performance from start to finish, even with engine changes. RE7 is an
example, maintaining its 2017 performance even on the 2019 engine version. This
sustained performance proves the benefits of a modular engine and facilitates bug
discovery.

The engine's runtime and tools run separately and communicate via TCP/IP. This
means that even if you switch the runtime to PS4 or Xbox One, you can still make edits
on the hardware. It also means that information obtained by the tools during runtime
won't be lost in a crash.

(Source: CAPCOM RE:2019)

Another innovation for Capcom in this engine is the possibility of cloud-based work,
where developers can work on the engine via video transmission even without a
physical machine. This applies not only to physical machines but also to cloud
platforms like Stadia and Ubitus (a Japanese game streaming service).

Within the RE Engine, it's possible to rearrange data loading to optimize loading times
on an HDD.

(Source: CAPCOM RE:2019)


When using an SSD, where delays are caused by CPU processing time, the engine's
flexibility, due to the lack of resource dependencies, can utilize multiple processing
cores independently to optimize loading.
(Source: CAPCOM RE:2019)

The programming logic in the RE Engine is done in C#. No specialized title uses C++.
The code runs on a proprietary virtual machine that uses a proprietary algorithm
optimized for games.

On average, each title has 300 to 400 thousand lines of code, and regardless, the
engine can build games in under 10 seconds on a regular CPU. Building in the same
timeframe wouldn't be possible if the code were written in C++, taking approximately
100 times longer.

(Source: CAPCOM RE:2019)

Choosing a fully script-based development also allowed developers to work with code
like any other asset and control it as part of revisions. In case of a crash, it's possible to
select what causes or doesn't cause crashes and separate them when running the
game, preventing delays in testing other parts. This also facilitates quality assurance
testing organization, as program memory isn't lost upon crashing.

Conclusion

In conclusion, the RE Engine, with its modularity, balances expandability and


generalization, enabling the development of diverse titles without performance loss.
As a bonus, it allows using older engine titles for stability testing on current versions.

You might also like