1. Services
  2. Work
  3. Approach
  4. About
  5. Contact
hello@vnetechsolutions.com +44 7951 532529

Meridian VR Warehouse Digital Twin

3PL customers explore their own stock and orders in a 3D model of the warehouse

  • VR / 3D
  • Data & Analytics
Client
VNE Tech Solutions
Sector
Supply chain & logistics
Year
2026
Platforms
Windows · VR headset
Stage
Prototype
The Meridian customer portal design for Northwind Foods, with four warehouse cards, site figures and a 'What do you want to see?' panel of lens chips
Design prototype of the Meridian customer portal. The Unity build implements it as a clickable screen portal.
Overview

The project at a glance.

4simulated warehouses, each running its own operation
5,020simulated pallets, each with a lot code and movement history
17ways to read the warehouse: 11 stock filters and 6 heatmaps
16interaction commands, independent of any input device

Meridian is a digital twin for third-party logistics (3PL) warehouses: a 3D model of each site that the 3PL's customers can fly over, walk through and filter, each seeing only their own stock and orders. It is built in Unity for PC virtual-reality headsets, with a point-and-click portal so the same experience can be demonstrated on an ordinary laptop. The working prototype runs on a simulated network of four warehouses, and a detailed product blueprint sets out the path to live warehouse data and an AI analyst.

  • Who it serves
  • 3PL customers (brand owners)Their own stock, orders and exceptions across every site, shown on the warehouse itself rather than in a report.
  • Warehouse operatorsOne twin across all customers, with heatmaps, a live KPI board and red beacons over pallets holding up late orders.
  • Account managers and sales teamsA laptop demo with a point-and-click portal and clickable pallets, ready to show before any headset is involved.
The challenge

Warehouse customers get stock reports, not a view of the floor

A third-party logistics (3PL) provider stores and ships goods for many brands under one roof. Those brands keep asking the same questions: where is my stock, are my orders on time, what arrived today? The answers usually come back as stock reports and exports, which give the numbers but little sense of what is actually happening in the building.

Any view a customer can use also has hard constraints. Competing brands share the same racking, so each must see its own data and nothing else. And it has to work on the hardware people actually have: a laptop in a customer meeting today, a VR headset for site reviews and hand tracking later, without the product being rebuilt for each.

What we built

Pick a lens, and the warehouse becomes the report

VNE started with a four-part product blueprint covering UX, modules, technical architecture and a ten-phase roadmap, then built a working Unity prototype that covers much of the first two phases: the 3D warehouse foundation and the customer twin. A customer session opens on the Meridian portal. The customer picks a lens such as 'Slow movers' or 'Dead stock', enters a 3D model of the site, and sees the matching pallets stay lit while everything else fades back.

Behind it sits a simulated network of four warehouses and five fictional customer brands, with a running operation: orders are allocated, picked, packed and dispatched, and deliveries are docked and put away by forklift. Every view gets its data through one service interface, which scopes cards, orders, KPIs, heatmaps, filters and reports to the customer in session. It is designed so that a connection to a live warehouse system can later replace the simulation without changing the experience.

Key features

What it does.

Customer portal with lenses

The Meridian portal shows the customer's sites, the active site's numbers and a 'What do you want to see?' panel of lens chips. A lens chosen here stays on when the customer enters the 3D twin.

Three ways to move around

Switch instantly between a network view of all four warehouses, a bird's-eye floor plan and first-person on the floor. Look at any spot and teleport there, including from a live 1:50 tabletop miniature.

Eleven stock filters and SKU focus

Fast movers, slow movers, dead stock, inbound today, quarantine, returns, awaiting dispatch and more. Matching pallets keep their status colours while the rest dim, and the most-picked SKUs can be singled out.

Heatmaps on the warehouse itself

Five layers colour the stock directly: pick frequency, inventory age, ABC class, expiry risk and rack occupancy. A sixth draws live congestion on the floor where people and forklifts move.

Information cards and order journeys

Cards for pallets, locations, racks, orders, workers, forklifts, docks, pack benches, zones, deliveries and sites. From a reserved pallet, an order or a picker, the order's route through the building can be drawn with labelled stops.

A warehouse that moves

Pickers walk the aisles with trolleys, benches pack orders, trailers dock and wait at the doors, and forklifts put deliveries away. The simulation can be paused or run at up to eight times normal speed.

Beacons for late orders

Pulsing red pillars mark every pallet waiting on an order that has missed its cut-off, and that order's dispatch door, alongside a live KPI board.

Each customer sees only their data

In a customer session, cards, orders, KPIs, heatmaps, filters and reports are scoped to that customer. Other brands' stock appears only as grey shapes, and the lens cannot be switched to anyone else.

Saved views and reports

Save the current site, filter and view mode as a named view that is kept between sessions, or create a plain-text report of the current view, scoped to the customer.

Inside the product

See it in action.

Meridian runs in a VR headset or the Unity editor, so this gallery shows the product's design prototype alongside technical visuals generated from the prototype's own data layer. Each caption says which is which.

Workflow

How a customer explores their stock

  1. 01

    Open the portal

    A customer session opens on the Meridian dashboard with the customer's home site selected and their numbers for every site.

  2. 02

    Choose a lens

    Pick a question, such as slow movers, dead stock, quarantine or awaiting dispatch, or switch on the inventory-age heatmap.

  3. 03

    Enter the twin

    The portal folds into a slim top bar that shows the site, the active lens and how many pallets it lights, over a bird's-eye view.

  4. 04

    Drill in

    Teleport to the floor, click a pallet to open its card, or follow a reserved pallet's order through picking, packing and dispatch.

  5. 05

    Keep the answer

    Save the view for next time, or create a report of the current filter that contains only the customer's own data.

Under the hood

How it's built.

Meridian keeps three things apart: what the warehouse contains (the data), what people see and click (the experience) and what they hold in their hands (the device). Each is designed to change without breaking the others, which is how a laptop demo can grow into a headset product, and a simulated warehouse into a live one.

Technically, it is a Unity 6 application using OpenXR, the XR Interaction Toolkit and the Universal Render Pipeline, split into six runtime assemblies whose references the compiler enforces. The domain model, seeded generator and activity simulator are plain C# with no engine references. A single ITwinService interface serves cards, KPIs, heatmaps, filters, saved views and reports, and the implementation behind it applies the customer session scope. Twin.Interaction turns devices into semantic commands, and the view layer draws racking and pallets with GPU instancing, using a spatial index for picking instead of an object per pallet.

Technology

Frontend

  • Unity 6
  • C#
  • Universal Render Pipeline 17
  • uGUI 2
  • GPU instancing

Data

  • Plain C# domain model
  • Seeded synthetic warehouse generator
  • Tick-based activity simulator
  • Saved views in PlayerPrefs

AI & ML

  • AI-generated textures
  • Flux and Ideogram image models
  • Python (NumPy, Pillow) texture tooling

Integrations & APIs

  • OpenXR 1.12
  • XR Interaction Toolkit 3
  • XR Plug-in Management 4.5
  • Input System 1.8
  • SteamVR runtime
  • HTC Vive controller profile

Auth & Security

  • Service-layer customer scoping

Testing & Quality

  • In-editor data self-test
  • Assembly definition boundaries
  • XR Device Simulator
Engineering highlights

The hard parts, solved.

  1. 01

    Designed for a VR frame budget

    A headset needs the scene redrawn about 90 times a second, so one game object per pallet was ruled out from the start. Racking and pallets are drawn with GPU instancing in batches of up to 1,023, grouped into colour buckets so no custom shader is needed. Instanced pallets have no colliders, so a spatial index of bounding boxes lets gaze and mouse clicks still pick out a single pallet. Measuring the frame rate on the headset itself comes next.

  2. 02

    Hardware independence enforced by the compiler

    Business features never refer to a mouse, controller or hand. They respond to semantic commands such as Select, Inspect, Teleport and Back, raised by whichever device is in use. Assembly definitions make this structural: only Twin.Interaction may reference the XR Interaction Toolkit or the Input System, and the domain and service layers cannot reference Unity at all. The same command router is the planned entry point for voice and AI input.

  3. 03

    Customer scoping enforced by the service layer

    Scoping happens in the service layer rather than in each view. In a customer session, requests for another brand's pallet, order or delivery card return nothing, heatmaps and filters cover only the customer's own stock, the lens is locked and reports are scoped. In the prototype this runs in-process; the blueprint requires the same rule to be enforced on the server once live data arrives, so a customer's headset never receives another customer's data.

  4. 04

    A realistic warehouse without real data

    A seeded generator builds each site's zones, racks and 300 SKUs, pallets with lot codes, expiry dates where relevant and movement history, plus orders and deliveries; ABC classes are then derived from pick volumes. A tick-based simulator runs the operation: pickers route along a corridor network, forklifts put deliveries away, and congestion builds up and fades on a floor grid. The same seed and steps always produce the same warehouse, which keeps demos and tests repeatable.

  5. 05

    Building for Unity without always having Unity

    Much of the build was done away from the Unity editor, so scenes are produced by one-click editor menus rather than hand-written scene files, and the plain C# layers compile outside Unity so they can be checked without it. The art pipeline follows the same idea: AI-generated textures are made tileable and given normal maps by a Python script, and the app falls back to procedural materials if they are missing.

Outcome

A customer demo that runs today in the Unity editor

Meridian runs in the Unity editor as an end-to-end customer demo on a simulated four-site network: open the portal, pick a lens, fly over the site, walk the aisles, inspect the customer's own pallets and orders, then save the view or create a report. Operator and customer scenes are each built with one click, and the data layer's built-in self-test passes.

The roadmap is just as clear about what comes next. Testing on the HTC Vive Pro 2 is the immediate step; live warehouse data, server-side tenancy and the AI Analyst are later phases, and each already has a seam in the code: the service interface, the session scope and the command router.

What VNE delivered
  • Product strategy
  • UX/UI design
  • Software architecture
  • VR & 3D development
  • Data modelling
Next projectJobPilot Finds jobs, tailors applications and fills forms, but never submits without a final yes
Like what you see?

Let's build
yours next.

Start a project