Unreal Engine Vite Help

Creating Your First Project

Project creation in Vite works exactly as it does in stock Unreal Engine 4.27. What differs is the default rendering configuration, so this page focuses on what to do immediately after the project opens.

Create the project

Create a new Vite project

  1. Launch the editor from your desktop shortcut or Engine\Binaries\Win64\UE4Editor.exe.

  2. Choose a template. The Third Person template is the one kept by the debloat presets and is the safest starting point.

  3. Pick C++ rather than Blueprint if you intend to drive rendering features from code, which most of the examples in this manual assume.

  4. Create the project and wait for the initial shader compile. On a first run this takes a while, because the engine is building its shader cache from scratch.

If you are opening an existing project instead, right-click the .uproject, choose Switch Unreal Engine version, and select UE_ViteFork.

Understand the defaults before you build content

Decide early which effects your project actually needs, because the answer shapes your entire art and performance budget. A stylised competitive title targeting 4K120 will typically run DDGI alone. A fidelity title targeting 4K60 might add ray-traced reflections and tessellation. See Performance Targets for the four reference configurations Vite is tuned around.

The other set of defaults worth reading before you build much content is Engine Default Changes. Several of them change behaviour rather than just cost — most notably, overlap events are disabled by default on primitive components, and lightmap UV generation is off by default on import.

Turning features on from code

The conventional place to set these up in a sample project is the character class constructor or BeginPlay. This is what the Vite sample projects do.

// Global illumination IConsoleManager::Get().FindConsoleVariable(TEXT("r.GlobalIllumination.ExperimentalPlugin"))->Set(1); IConsoleManager::Get().FindConsoleVariable(TEXT("r.SSGI.Enable"))->Set(1); // Ray tracing effects IConsoleManager::Get().FindConsoleVariable(TEXT("r.RayTracing.AmbientOcclusion"))->Set(1); IConsoleManager::Get().FindConsoleVariable(TEXT("r.RayTracing.Reflections"))->Set(1); IConsoleManager::Get().FindConsoleVariable(TEXT("r.RayTracing.Shadows"))->Set(1); IConsoleManager::Get().FindConsoleVariable(TEXT("r.RayTracing.Translucency"))->Set(1); IConsoleManager::Get().FindConsoleVariable(TEXT("r.RayTracing.SampledDirectLighting"))->Set(1); IConsoleManager::Get().FindConsoleVariable(TEXT("r.RayTracing.MeshCaustics.Enable"))->Set(1);

r.GlobalIllumination.ExperimentalPlugin 1 enables DDGI. Running SSGI alongside it is recommended rather than optional: DDGI resolves world-scale bounce, SSGI fills in high-frequency contact detail that probe volumes are too coarse to capture. See DDGI and SSGI Together.

For production, prefer setting these in configuration files rather than code, so they participate in scalability and can be overridden per platform:

; Config/DefaultEngine.ini [/Script/Engine.RendererSettings] r.GlobalIllumination.ExperimentalPlugin=1 r.SSGI.Enable=1 r.RayTracing.Reflections=1

r.RayTracing.ForceAllRayTracingEffects 1 turns everything on at once. It is useful for a quick look at what the engine can do, and a poor idea in a shipping configuration.

Verify it is working

Open the console with the tilde key and check a few things:

  • stat unit — frame, game, draw and GPU times. If GPU time dominates after enabling RT effects, that is expected; start turning effects off from there.

  • stat gpu — per-pass GPU cost, which is how you find out whether reflections or GI is the expensive one.

  • r.RayTracing.Reflections 0 — toggle an effect at runtime and watch the delta.

Vite also bundles ImGui-based benchmarking tools for in-editor and in-game profiling. See Profiling and Benchmarking.

Sample projects worth opening

Rather than building a test scene from scratch, start from one that already demonstrates the features:

The full list is in Projects and Demos.

See also

04 August 2026