Gaussian Splatting has changed the way creators can capture and recreate the real world in 3D. Instead of building an environment from scratch, 3D Gaussian Splatting (3DGS) can turn captured visual data into a photorealistic, navigable representation of a real place or object.
But there is one fundamental limitation: what happens when the world doesn’t stand still?
A room can be captured as a static 3D environment. But people move. Performers move. Objects move. Environments change. This is where 4D Gaussian Splatting (4DGS) comes in.
By adding time to the equation, Gaussian Splatting can move beyond static representations and begin to represent reality as it changes. For media and entertainment, that opens up new possibilities for bringing dynamic, photorealistic content into real-time workflows.
In this guide, we’ll explain what 4D Gaussian Splatting is, how it differs from 3DGS, how dynamic splats are captured and generated, and how Volinga makes them practical inside Unreal Engine.
At its simplest, 4D Gaussian Splatting is Gaussian Splatting that changes over time. Traditional 3D Gaussian Splatting creates a spatial representation of a scene. The scene can be viewed from different angles, but the underlying representation is generally static. 4DGS adds a temporal component.
X + Y + Z = Space
X + Y + Z + T = Space + Time
That additional dimension allows a Gaussian Splat representation to change from one moment to the next.
For example, a static 3DGS capture might reconstruct a room: its walls, furniture and surfaces. A time-varying Gaussian Splat sequence can also represent a performer walking through that room. The result is no longer only a digital replica of where something is; it can represent how the scene changes over time.
This is what makes 4DGS especially compelling for virtual production, immersive experiences, cinematics, digital twins and interactive content. The simplest distinction is this: 3DGS captures a moment. 4DGS captures movement through moments.
Capturing a dynamic Gaussian Splat starts with a multi-camera rig. To reconstruct a moving subject across time, the capture system needs to observe the scene from multiple viewpoints at the same moment.
In most workflows, those cameras are tightly synchronised. Synchronisation is important because even a small timing mismatch between viewpoints can create reconstruction errors when a subject is moving. Some methods can tolerate weaker synchronisation than others, but the capture principle remains the same: the more consistently the cameras observe each instant, the more coherent the resulting dynamic representation can be.
Two common rig configurations are used for dynamic capture:
Inside-out rigs
An inside-out rig places cameras within the environment, looking outward. This configuration is useful when the goal is to capture a space, a location or an event from within it. The camera array observes the surrounding environment from multiple directions and can be adapted to the scale and access constraints of the location.
Image Courtesy of EMX
Outside-in rigs
An outside-in rig places cameras around the subject, looking inward. These rigs are often arranged as a sphere or cylinder and are a familiar approach for capturing people, performances and objects. By surrounding the subject with viewpoints, the rig can record motion from all sides, an important foundation for volumetric and dynamic Gaussian Splat workflows.
The choice between inside-out and outside-in is not merely a hardware decision. It is driven by the scene, the desired viewing freedom, the amount of motion, the available space and the type of experience being created.
Image courtesy of Clear Angle Studios
Once a dynamic scene has been captured, there are several ways to turn it into time-varying Gaussian Splat content. The approaches differ in how they represent motion, how much temporal coherence they preserve and how efficiently they store the result.
1. A Gaussian Splat sequence: one reconstruction per frame
One practical approach is to process a captured sequence frame by frame, generating an independent Gaussian Splat for each moment in time. Played in order, these reconstructions form an animated Gaussian Splat sequence.
The central challenge is temporal consistency. If each frame is reconstructed independently, small differences between frames can appear as instability or flickering during playback. Reducing these artefacts requires careful capture, processing, and artistic supervision. It is a craft-intensive workflow, but one that studios are already bringing into high-end productions.
For example, Framestore has described using 4D Gaussian Splatting to create holographic performance effects for Superman. Read Framestore’s overview of the work.
2. Learning the animation of a shared set of Gaussians
A second approach aims to learn a single set of Gaussians that deforms, moves and changes over time. Rather than storing a fully independent model for every frame, the same underlying representation is animated through time: Gaussians can be displaced, deformed and transformed to describe the motion in the scene.
This is technically more complex, but it can produce a more temporally coherent result with fewer visible inconsistencies and a substantially smaller representation than a frame-by-frame sequence. Commercial volumetric-video companies such as Gracia and 4DV.ai are developing workflows in this broader space.
3. Animating an existing 3D Gaussian Splat
A third route is emerging from DCC and VFX workflows: animate an existing 3D Gaussian Splat and export the animation as a sequence. This is not a capture of real-world motion in the same sense as a multi-camera 4DGS shoot, but it can still generate time-varying Gaussian Splat content from a conventional 3DGS asset.
As tools evolve, this opens a useful creative path: artists can bring Gaussian Splat assets into animation workflows, direct their motion and render the result as a sequence for playback.
4DGS is a promising medium, but turning it into an asset that can be used inside a real-time engine has traditionally been difficult.
The result is a practical route from captured or generated dynamic splats to an Unreal-ready asset—without treating every frame as a separate production asset.
The workflow is straightforward:
Generate an ordered PLY sequence using one of the methods described above: multi-camera capture and frame-by-frame reconstruction, a learned Gaussian animation system, or animation of an existing 3DGS asset.
Import the PLY sequence into Volinga Suite.
Process and encode the sequence in Volinga Suite, converting it into an optimised NVOL file.
Import the optimised NVOL asset into Unreal Engine with the Volinga Plugin.
Use and control the dynamic asset in real time inside your Unreal scene.
Inside Unreal Engine, the 4DGS asset can be placed alongside environments, cameras, lighting, VFX and other scene content. Its playback can be controlled as part of the wider production, including through familiar Unreal workflows such as Sequencer.
Once dynamic captured reality becomes a real-time Unreal asset, it can become part of a much broader creative system:
Virtual production: combine captured performances or moving real-world elements with real-time environments.
Cinematics: choreograph a dynamic Gaussian Splat alongside cameras, lighting, VFX and editorial timing.
Immersive experiences: bring real people, places and events into interactive spatial experiences.
Digital twins: represent spaces, processes and activity over time rather than as a single frozen state.
4DGS is not a replacement for video. Video remains exceptionally effective for captured moving imagery. The difference is what happens after capture: instead of remaining locked to one camera’s frame, dynamic Gaussian Splat content can be positioned, timed and combined inside a real-time 3D environment.
Volinga makes it possible to turn an ordered Gaussian PLY sequence into a dynamic asset for real-time playback in Unreal Engine.