The Block

A GTA-style open world, built in Unity 6 and rebuilt in Unreal Engine 5: the same game in two engines.

Trailer

One trailer, played in both engines at once: the Unity 6 build on the left, the Unreal Engine 5.8 rebuild on the right, shot for shot. Watch on YouTube ›

Overview

A small but genuinely playable 3D open world with a four-mission campaign. You can walk it, swim it, drive it, ride it and fly it. I built the whole game in Unity 6, then rebuilt it from scratch in Unreal Engine 5.8: the same city, the same missions and the same feel, on a different engine. Both builds are playable on macOS, and the trailer runs them side by side.

How it was built

It started as a browser game

The first version ran in the browser on Three.js and Rapier: 175 TypeScript modules, with online multiplayer over Supabase. Partway through I decided a slice of the game in a browser was not what I wanted to ship, and moved the whole project to a game engine.

Unity 6: the full game

I rebuilt the entire game in Unity 6 with URP: 220 C# scripts and about 63,000 lines. The city is not placed by hand. 54 editor scripts generate the districts, cars, crowd and ragdolls from one config file. The port went one system at a time, 39 units over about five weeks, and every unit asked whether Unity could do the job better than the browser build had, rather than copying its workarounds. This is the build I submitted for the course, and its source is public.

Unreal Engine 5.8: the same game, built again

With the Unity build finished, I rebuilt it in Unreal Engine 5.8 to learn the engine on a game I already knew inside out. The gameplay systems (campaign, traffic, crowd, police, day and night, economy and the HUD) live in a C++ module of about 49,000 lines, with Blueprints for the rest. One Editor Python script places the world from the same config file Unity reads, the cars run on Chaos Vehicles, and the lighting is matched to the Unity build so the two read as one game. Each unit started with the same question, "can Unreal do this better?", and shipped with a probe script that checked it against the Unity numbers before I play-tested it and signed it off.

How the two builds were made

Both engine builds were made with Claude Code driving the editor through the engine's MCP server, Unity's in the first port and Unreal's in the second. I set the scope, made the design calls and play-tested every unit; nothing counted as done until I had played it.

One trailer, two engines

The project ends in a film rather than a feature list. The Unreal trailer was captured inside the game, shot for shot against the Unity cut, and both halves then run in one frame at the same time: Unity on the left, Unreal on the right, all 21 shots lined up.

What makes it interesting

  • The same game built in two engines: 220 C# scripts in Unity 6, a C++ and Blueprint rebuild in Unreal Engine 5.8
  • Started as a 175-module Three.js browser game before the move to an engine
  • Four-mission campaign that runs through to a win screen, in both engines
  • Six ways to get around: on foot, swimming, car, motorcycle, helicopter, jet ski
  • Physics via Rapier on the web, Unity's built-in physics, then Chaos Vehicles in Unreal

Technology

13 technologies, grouped by the job they do in this project.

Languages

  • C#
  • C++
  • TypeScript

Real-time 3D & games

  • Unity 6
  • Unreal Engine 5
  • Blueprints
  • Three.js
  • Rapier physics
  • Chaos physics
  • Blender

Web & full stack

  • Vite

Data & backend

  • Supabase

Tooling & delivery

  • Vercel

At a glance

Year
2026
Status
Downloadable build
Technologies
13

Repository

Read live from the GitHub API when this page was built, so it cannot drift away from the repository itself.

Name
RoeeSivan/theblock-unity
Primary language
C#
Repository size
13.4 MB
Last push
August 2026