LowLevel

Low-level infrastructure utilities that operate beneath Unity's standard MonoBehaviour lifecycle. These classes provide compiler polyfills and direct access to Unity's Player Loop for injecting custom update phases.

Architecture

spinner

Injection Flow

spinner

Classes

Class
Description

Compiler polyfill enabling C# 9 init accessors in Unity's .NET Standard 2.1

Static utility for injecting custom PlayerLoopSystem entries into Unity's Player Loop

Enums

Enum
Description

UnityPlayerLoopType

Friendly names for Unity's 8 top-level Player Loop phases

PlayerLoopInjector.InjectionOrder

Whether to prepend or append to the target phase's subsystem list

Key Concepts

Player Loop Injection

Unity's Player Loop defines the order of all per-frame operations (input, physics, rendering, etc.). PlayerLoopInjector allows inserting custom PlayerLoopSystem entries at the beginning or end of any phase — enabling frame-precise update timing without MonoBehaviour overhead.

All injected loops are automatically removed on application quit to prevent stale references.

Compiler Polyfill

IsExternalInit is a zero-cost polyfill that enables the C# 9 init keyword in projects targeting .NET Standard 2.1 (Unity's default). It has no runtime behavior.

Last updated