The Performance Updates

From Resonite Wiki
Revision as of 12:14, 11 June 2025 by Nytra (talk | contribs) (More improvements)

The main goal of the performance updates is to separate FrooxEngine from Unity so that FrooxEngine can benefit from a faster runtime in .NET 9+.

The Issue

Prior to separation, if Unity crashes it takes down FrooxEngine with it. Another problem is that Unity uses a slower runtime called Mono which reduces the performance of FrooxEngine considerably, as it runs FrooxEngine inside of a MonoBehavior (Unity component).

The Solution

Frooxius has devised a series of updates to address this. Each stage brings more systems from Unity into FrooxEngine, allowing more control over them and lowering Unity dependency. These are pre-requisites for the separation.

The major steps:

These updates change core components of the engine, and allow it to work entirely standalone without relying on Unity.

The engines will be separated into different processes and communicate via a shared memory file. Unity will still handle parts of the input, however its main function will be for the rendering.

Resources