PC / Racing

Assetto Corsa

New trees. Same tyres.

Assetto Corsa Unreal development capture of a blue Skyline R34 on the Nordschleife between walls of pine trees

This is Assetto Corsa’s car physics, rewritten in C++ and running inside Unreal Engine. You drive the game’s cars on its tracks, while everything around the car is new: the lighting, the trees, the grass and the tyre marks. It’s playable now, but it isn’t a full game yet.

Pick a car and a track, then drive.

Assetto Corsa has its own entry on the main menu. Choose a car, a track, a view and a gearbox, and you’re on the circuit. Esc takes you back.

Fourteen cars are in so far. Five come from the game, including the Skyline R34 and the Porsche 918, and nine were made by the community. Each one has the sounds it has in the game.

It lives in the same Unreal project as my Forza Motorsport 2 rebuild, so it shares that game’s menus and graphics settings. For now it’s you and the track, with no opponents and no lap timing.

A blue Skyline R34 driving at Monza, with the track bending right past trees and a concrete wall.

Cars that need Custom Shaders Patch work too.

Many community cars go further than the original game can, using the extra physics in Custom Shaders Patch. Those cars are supported too, with their suspension, dampers, anti-roll bars, brakes, drivetrain, tyre heat and wear.

The free-form suspension needed a change underneath. At the game’s normal precision one test car broke down on its third physics step, so everything now runs in double precision.

FeatureWhat it addsCars
Free-form suspensionEach car describes its own suspension, part by part11
Custom wishbonesMore detailed double wishbones and dampers9
Four-wheel driveThe patch’s own four-wheel drive model8
Newest tyre heatThe latest version of the tyre temperature model4
Anti-roll barsBars whose rate changes as the car moves2

How many of the 59 community cars on my test bench each feature affects.

All 21 original tracks are in.

Every track that comes with the game can be driven, from Spa and the Nordschleife to the drift arena and the drag strip. Each has its own surfaces and walls from the game’s data.

So far that’s one layout per track.

A blue Skyline R34 on the grass at the Nordschleife, with pines on both sides of the track.

Nordschleife

A blue Skyline R34 stopped at a yellow and red barrier at Spa, with tall pines behind it.

Spa

A blue Skyline R34 on the track at Monza, with trees lining the corner ahead.

Monza

A blue Skyline R34 on the wide main straight at Laguna Seca, with a marshal’s post on the right.

Laguna Seca

A blue Skyline R34 on the track at Brands Hatch, heading under a bridge with trees beside it.

Brands Hatch

A blue Skyline R34 at Highlands, on a verge beside a wire fence with a dark hill ahead.

Highlands

From the side of the track.

An empty curve at Spa with red and yellow kerbs, a gravel trap on the left and a grey and brick building behind the fence on the right.

Spa

An empty corner at Monza with a wide gravel trap on the left, a barrier on the right and tree shadows across the road.

Monza

A bend on the Nordschleife with writing painted on the road, a line of spectators on the bank and hazy trees behind them.

Nordschleife

An empty bend at Brands Hatch between grass verges, with a gravel trap ahead and tall trees behind it.

Brands Hatch

A wide corner at Silverstone with red and white kerbs, a red and yellow flower bed on the right and a row of tents in the distance.

Silverstone

A sweeping corner at Laguna Seca with dark tyre lines on pale tarmac, and a marshal’s post and small trees behind it.

Laguna Seca

From above.

Spa from above: a hairpin with red and yellow kerbs, white vans parked on the left and dark forest running up the valley.

Spa

Brands Hatch from above: the track looping around a wooded hill, with striped grass run-off and a small white house.

Brands Hatch

Silverstone from above: the circuit and its long white pit building among wide green fields and lines of trees.

Silverstone

Mugello from above: a paddock full of trucks and cars beside the main straight, with pale fields and trees around it.

Mugello

Imola from above: a corner beside a pale gravel trap and two white stands, in thick woodland with a green river at the bottom.

Imola

Monza from above: a long curve wrapped in trees, with the pit buildings and rows of trucks and cars on the right.

Monza

The flat trees are now real ones.

Most of the game’s trees are flat cards with a picture of a tree on them. On 20 tracks, each one now becomes a 3D tree from Quixel’s MegaPlants library, standing in the same spot at about the same size. Black Cat County is the exception, because its desert scrub isn’t made that way, and the painted treelines on the horizon stay.

The gaps between them are filled out too, with up to 50,000 trees and bushes on the biggest tracks and almost 470,000 across the game. They take Unreal’s sun and shadows, and you can see through them.

The same corner at Magione with 3D trees: separate trunks, open crowns and shadows on the bank.
A corner at Magione with the game’s trees: a solid bank of flat green cards with black patches at their feet.
The same camera at Magione. Before is the game’s trees drawn in Unreal, not a shot of the original game. After is the swap.

Grass grows as you drive.

Blades of grass grow over the track as you drive. A view of the ground from above says where the grass goes and what colour it should be, then the graphics card places the blades around the camera.

Blades take Unreal’s sun, shadows and lighting. Density is on the F10 menu, from half to four times. At the default on Magione, grass adds up to 0.2 ms to about 5 ms of graphics work on my PC.

The blades don’t move in the wind yet, and cars don’t flatten them.

A verge at Magione covered in pale tufts.The same verge with the grass blended into the ground colour.

My first try at Magione on top, with blades too pale for the ground under them. The fixed colour is below.

Tyres leave a mark on everything.

On its own, the game leaves nothing on grass or gravel. Here, every surface takes a mark.

Tarmac gets rubber, grass gets flattened dark tracks, and gravel gets tan ones.

A blue Skyline R34 on the Magione grid inside dark circles of rubber.
The car stopped in a Silverstone gravel trap with tan marks behind it.The car on the grass at Magione beside a barrier, with dark flattened tracks around it.

Forza 2’s chase cameras came too.

I prefer the follow cameras from Forza Motorsport 2, so both are here, and one of them is the default. They run on the same code as my Forza rebuild. The right stick swings the camera round the car as you drive.

The game’s own chase cameras are still there, with the cockpit, bonnet, bumper and dash views. C or the Back button steps through them.

The same follow cameras also work in the original game, as a script for Custom Shaders Patch.

A blue Skyline R34 on the Nordschleife seen from the front quarter, with the camera swung round the car.

Every tree gets a decision.

Swapping trees across 20 tracks needed a tool, so I added Assetto Corsa to my editor. It holds 140,029 pieces of the tracks, and groups the trees by the picture they use.

Each group shows the current tree beside its replacement. Replace it, keep it or mark it as not needed, and the decision saves itself and feeds the swap.

The editor’s Replacements tab: a list of tree groups for Magione, each with a chosen species, and the current tree shown beside a European beech.

Where it stands.

UPDATED · 6 NOVEMBER 2026

The game’s car physics, rewritten in C++ and driving inside Unreal with all 21 original tracks and new trees, grass and tyre marks. PlusPlus is the main version. It’s a driving version for now, with no opponents, lap timing or race flow yet.

Completion estimates

Recreation~75%

Physics in place · menus to do

Plus~5%

Early

PlusPlus~45%

Playable · full game unfinished

Rough estimates of how close each edition is to being fully playable. They are not release dates. A dash means work on that edition hasn’t started.

Choose your edition.

One classic. A new point of view.

RECREATION ABOUT 75%

Physics in place · menus to do

The physics, rewritten from the game’s own code as new C++, and cars built for Custom Shaders Patch physics are supported too. For now it runs on a test bench, so to drive it you use the PlusPlus edition.

In place

  • Tyres, suspension, drivetrain, aero, brakes and driver aids.
  • Fuel, pit stops, collisions and damage.
  • Real track surfaces and walls, with grip that builds up.
  • Support for cars built for Custom Shaders Patch physics.
  • 251 automated tests passing.

Still to do

  • Its own graphics, sound and a simple menu.
  • Lap timing and race control.
About this estimate

The original game is mostly driving with a sparse menu around it, so the physics is most of the work.

PLUS ABOUT 5%

Early

The original game with small changes. So far that’s the Forza Motorsport 2 follow cameras, as a script for Custom Shaders Patch.

In place

  • Forza 2 follow cameras, driven in the original game.

Still to do

  • Decide what else this edition should have.
About this estimate

One finished piece, and the rest of the edition is still to be decided.

PLUSPLUS ABOUT 45%

Playable · full game unfinished

Unreal 5.8 runs the rewritten physics with the game’s cars and tracks, modern lighting, 3D trees, grass and tyre marks.

In place

  • All 21 original tracks, one layout each.
  • Fourteen cars with their own sounds.
  • 3D trees on 20 tracks, with grass and tyre marks.
  • Forza 2 follow cameras and the game’s own views.

Still to do

  • More cars and the other track layouts.
  • Opponents, lap timing and race flow.
  • Wind and car flattening in the grass, and a second pass on tree choices.
About this estimate

Driving works on every track. What’s left is the rest of the game, and more cars.