Programming vehicles in games

263 Bogdanp 59 7/25/2025, 2:41:03 PM wassimulator.com ↗

Comments (59)

mhink · 15h ago
> Interestingly, while the engine has the most moving parts in real life, in code, it's the simplest piece of the entire car simulation. Because at its core, the engine is just a torque calculator. It's concerned with producing a single output: rotational torque, from a set of inputs. It is essentially a blackbox.

This just reminded me of AngeTheGreat's incredible video series showing his engine simulator- absolutely worth checking out, considering it's optimized enough to run in real-time! The fact that he's simulating it well enough to generate realistic sound is absolutely mind-blowing.

https://www.youtube.com/watch?v=RKT-sKtR970

ehnto · 14h ago
The game Automation has quite an in depth engine builder/simulation aspect to it. It's very fun to mess around with, and the sound simulation uses some of the concepts AngeTheGreat has in his videos.
Joel_Mckay · 5h ago
In general, most simulations with rigid body physics are still baked-in animations, and often still use rudimentary collision conservation models.

If people try something fancy... the clipping and weird physics glitches will ruin their day. Only somewhat depends on the game engine =3

oofoe · 13h ago
Classic of how to animate a cube in Houdini:

https://www.youtube.com/watch?v=NLiL0GLSvIw

(tldw: Real time internal combustion engine simulation something unexpected.)

Joel_Mckay · 5h ago
LOL, still looks better than my first attempt at a Dump-truck rig with a dual rear axle. Should have added Yakety Sax =3

https://www.youtube.com/watch?v=lAJB6HsYiNA

seanmcdirmid · 6h ago
Actually, aren't EV motors pretty simple? It is just the use of micro explosions in an engine to create torque that is expensive. I wonder if most cars in video games drive like EVs accordingly (if they aren't simulating more accurately how an ICE really works)?
visualphoenix · 14h ago
In addition to some other things, I was responsible for all vehicle simulation in Army of Two. This article is a good starting point. I was glad they mentioned implementing Pacejka’s tire model and the transmission differential in the article - those help a lot. Aside from that, I was surprised (not surprised) how important an anti-roll bar physics sim and suspension sim helped make driving feel “fun”.

That’s the most important follow up. Without it, you’ll notice that the driving feels icy - I see it in the demo video. Most folks who fail to do the anti-roll bar and suspension wind up with cars that easily flip on turns - so they make the tires slip or they play with the surface friction, which makes the driving experience worse.

wassimulator · 12h ago
Thank you for this! I wasn't aware that anti-roll bars carry that much importance in a rudimentary model. I will look into that next, and update the article accordingly once I get it working.
pnw · 14h ago
Classic game. One of the first shooter co-ops I can remember playing!
visualphoenix · 14h ago
Fun fact: the standing turrets are vehicles without wheels
kqr · 14h ago
This very closely mirrors what I discovered when I made Flightle[1].

I made it in anger when I played a sidescrolling flight "simulator" on my phone in which the plane didn't behave anything like a plane! I figured "how hard can it be" and started learning a lot about how planes fly. It turned out there was a level of abstraction that was just right. Too unrealistic felt static and unsatisfying. Too realistic was difficult to calibrate for fun gameplay.

[1]: https://xkqr.org/flightle/

kqr · 1h ago
Too late to edit the comment, but here's the article describing some more of what I learned: https://entropicthoughts.com/sidescrolling-flight-simulator

What's not mentioned in that article is that a couple months later I tried switching from modeling the plane as a point to modeling it as two separate wings attached by a rigid stick. It was a nightmare to get into a shape that played well, though I'm sure someone more skilled than I would be able to do it.

Zircom · 6h ago
Fun game, have you considered allowing people to control the sliders with their scroll wheel if they're on a desktop web browser?
kqr · 1h ago
Not considered that. Good idea!
lpeancovschi · 16h ago
A while ago I made a game for iOS that simulates vehicles and drifting. It was built in SpriteKit but very easy to do in any 2d game engine. The idea is: you put two wheels in front, connect them to the rectangle car shape with pin joints and then you apply force to the wheels. The angle of the force is very easy to calculate: x = force * cos(bodyRotation + wheelRotation) y = force * sin(bodyRotation + wheelRotation)

That's it! I also added skid particles. The drifting was achieved by playing around with the wheels and body damping. The game is here: https://apps.apple.com/app/drift-mania-infinite-car-racer/id...

merelysounds · 11h ago
Cool game! Quick feedback:

- I enjoyed the immediate start - skid particles are practical - game looks good - it’s too difficult for me; I’d like a “zen” mode that doesn’t reset when I hit a wall.

lpeancovschi · 9h ago
Thank you! It might take a few tries before you get used to it. But yes, might have to build what you suggest as well!
qoez · 15h ago
Cool game! The marketplace is so competitive I'm surprised you got even 22 ratings, how'd you manage to market it?
lpeancovschi · 14h ago
Thank you! I like the game too, but today it doesn't really make sense to publish games. I believe there are over a million of them on the App Store and the usage is declining anyway - people spend more time watching TikTok these days. Regarding how I managed to get 22 ratings - it's just organic discovery, I think I get around 1-3 downloads per day. On every other session I would ask users to leave a review. I also cross-promote this game through my other games, but that doesn't help a lot.
lpeancovschi · 14h ago
By the way, for anyone thinking of increasing organic discoverability some pro tips: 1. Try to decrease crash rates to 0. Ideally 99.9% crash free sessions. 2. Try to increase user retention - the more often user re-open your app, the more likely apple algorithms with rank your app higher. 3. Similar to 2. but the metric is time spent in the app. Try to increase it too.
monocularvision · 14h ago
“The game features stunning graphics…”

Love the self-deprecation! Downloading now.

emptybits · 13h ago
Wow. Sincerely enjoyed this. Will re-read for the tire model alone.

On the other end of the spectrum, playing purely for fun with no regard for simulation or realistic anything ... I'll take a 1980s spinner wheel Super Sprint arcade cabinet any day for guaranteed smiles per mile.

https://www.arcade-museum.com/Videogame/super-sprint

furyofantares · 15h ago
It's a cool post but I am very confused by the intro.

It makes the case that cars in games offer a wide variety of unrealistic experiences and says this is unlike guns.

Is that really true? I've played games with homing bullets, slow projectiles, enormous projectiles, gravity guns, rocket jumping, hit scan guns, guns with bullet drop, freeze guns, ... idunno, I think there's a lot of variety in guns that are about the experience and not about simulating physics.

> It's because when it comes to cars, we derive our expectations of them not just from first hand experience. Our understanding of what “driving fast” feels like is often built from second-hand sources; films, games, pop culture.

And then this just feels like a theorycrafted thing with zero evidence. It's also even more true of guns than of cars, isn't it?

But then, there's stuff like, uh, jumping, where there is just as wide a variety in how you can jump in games even though my expectations about jumping come a lot more from actually jumping than do my expectations about driving come from actually driving.

herval · 15h ago
I’d imagine the author doesn’t have a ton of experience coding FPS games. They’re definitely not like the experience of shooting an actual gun. Games would be a lot more frustrating and boring if they were, with much lower accuracy, much more variable bullet drop, etc. It’s the same as in racing games, lots of affordances to make it feel more fun
elictronic · 15h ago
Tarkov, Hot dogs Horse shoes and Hand grenades, and ARMA all might want a word with you.

The act of dealing with those frustrations while you are already stressed is what makes them good. I will say Tarkov takes some liberties with its recoil making it even worse than real life.

herval · 13h ago
Those are the “most realistic” subset of the genre (there’s also racing cars that are “more realistic” than mario kart). They’ve obviously not completely realistic though (eg the running while aiming, turning around mid-jump, climbing stairs, etc). There’s always affordances.
cluckindan · 14h ago
Not to mention Road to Vostok. You even have to load magazines separately.
crq-yml · 11h ago
It's a question of verisimilitude, not realism: we are looking for experiences that we can believe in.

Firearms in games tend to be less real because they prioritize making you believe in the power fantasy of a gun: it looks and sounds fearsome, and enables the bearer to dispense death. Running and jumping, likewise: there's no need to explain in an empirical sense how or why Mario jumps extremely high - it's an aesthetic choice that highlights the thing the game is about.

We tend to get stuck on portrayals of physics, camera, and photorealistic rendering in games because in those instances, we have tools that are good at systematizing verisimilitude: the car can behave more like a real car by fastidiously emulating everything we know about real cars. Those simulations can be made comparable to ones used in industry.

But many aspects of games can't take that approach and have to be cartooned to some less grounded approximation: the way in which human figures move and talk, or how a national economy works, or the pacing of combat.

As makers of designed products, we're meeting players in the middle by making choices that cohere with the rest of the game's goals while staying believable to their expectations. There are lots of ways to achieve verisimilitude while destroying the overall structure of the game, and that's a classic newbie-designer pitfall: "do X but with more detail".

wassimulator · 12h ago
The FPS example came to me spontaneously on stage and I only realized afterwards that it wasn't a good one. You make a good point.
Animats · 14h ago
No hills? No banked curves? No suspension?

Unreal Engine comes with two car demo projects. The first one is the "Hello World" of Unreal, and has a simple vehicle. The second one has an actual suspension model.

ivanjermakov · 13h ago
Wassim said in talk's QA that suspension is incidentally handled by the physics engine, which feeds back into uneven tire load, affecting tire forces.
wassimulator · 12h ago
At the end of the talk, and article, there is a short video demostration of the current state of the game engine, and it has hills and banked curves and whatnot. For the talk I opted for a flat grid.

Suspension is implemented as well but it didn't feel to me like a unique problem to implement for cars, at least not a simple suspension that can carry a car, and it didn't fit too well with the flow and limited time I planned for this.

WolfCop · 9h ago
There was a good GDC talk about the car physics in Rocket League: https://www.gdcvault.com/play/1024972/It-IS-Rocket-Science-T...

Disclaimer: I worked on Rocket League, but not on the game client.

acc_297 · 15h ago
Reading this reminded me of this good lecture on the physics of racing which was posted to youtube.

Andre Marziali - Physics of Racing https://www.youtube.com/watch?v=bYp2vvUgEqE

guhcampos · 15h ago
Amazing article. I've always been curious how hard it would be to simulate accurate tires in particular, and I'm also interested in how the sound of engines is generated.

A quick typo though: s/Imperically/empirically (I guess)

ehnto · 15h ago
You are in luck, there is an amazing youtube series about someone who made an engine simulator so he could simulate engine sounds:

https://youtube.com/playlist?list=PLUahe1BHkKtVN4nPDmueo7huQ...

The simulation of tires is interesting too, because you can get totally playable vehicles without simulating them at all. Or you can simulate some aspects for gameplay reasons (tire wear, heat, rudimentary grip level change)

Or, you can go really, really deep, and simulate the real physics going on, and that's what games like Beam NG, iRacing, Assetto Corsa etc. are doing. Usually known as the "tire model" in case you want a term to search up. They're still approximations but ever improving accuracy.

rzzzt · 12h ago
BeamNG is standing on the shoulders of Rigs of Rods, which uses soft body physics (points of mass connected by links that aim to keep the same distance between two points up to a certain amount of force applied, after which deformation occurs): https://en.wikipedia.org/wiki/Rigs_of_Rods
jimmySixDOF · 16h ago
there is a whole family of filetype glTF extension standards for vehicles so a completed asset will be rendered effectively across different game/world/ engines and coordinate the physics etc ... [1] is an example :

[1] https://github.com/omigroup/gltf-extensions/blob/main/extens...

jayd16 · 16h ago
Only one known implemention, though.
flohofwoe · 16h ago
Jesus F. Christ, they're really turning gltf into a kitchen-sink format :/
CupricTea · 16h ago
Is it any more of a kitchen-sink format than FBX? This is listed as a gltf extension, so not required in every loader, no?
StrandedKitty · 16h ago
What do you think the purpose of extensions is? They enrich the base spec. If your renderer can't handle an extension it will simply ignore it.
andrewmcwatters · 16h ago
I realize the author goes super hard into actual physical vehicle hardware components, but every time I think about super good feeling vehicles in video games, I think about how ridiculous the Warthog in Halo 1 feels, but the vehicle physics in that game seems to make almost no sense, and when vehicles go flying it's hilarious and absurd, and I wish some developer from the Halo 1 days of Bungie would talk about it.

I recall the Warthog and other vehicles actually defining some specific properties about vehicles like RPM and gear ratio, at least I think, because in first person you'd see some of those properties reflected in the dashboard of say the Warthog, or you'd hear it in the audio for a covenant vehicle.

But wow, man, what great feeling vehicles. Nothing else like it in the industry, in my opinion. The ridiculous feeling of vehicles in Grand Theft Auto 4 came really close, but those seemed to be much, much more detailed from vehicular motion and damage-taking perspectives.

w4rh4wk5 · 16h ago
Halo 1 featured a custom physics engine sometimes called Chucky Physics due to its creator Charlie Gough. Bungie switched to Havoc in the following titles.

I completely agree that the Warthog in Halo 1 felt the best, by far.

rightbyte · 16h ago
Have you played Warthog Launch? It makes satire of the game physics.
kinduff · 16h ago
Oh my, its been a minute since I played this game. I remember playing it as a teen.
rightbyte · 9h ago
Ye well it is the silliest game mechanic for a puzzle game ever. It is surprising how fun it is.
constantcrying · 16h ago
I liked the talk, but it was given very much from the perspective of a game developer and not from the perspective of an engineer wanting to simulate a car. (Unsurprisingly)

There is actually a lot of literature on how to simulate vehicles, which would be quite a bit of help. He also mentions BeamNG whose approach is very weird if you actually want to get accurate vehicle dynamics. Their ongoing tire simulation project seems even weirder and as if it was done by people who actively tried to ignore standard approaches for modeling tires.

beckthompson · 16h ago
> There is actually a lot of literature on how to simulate vehicles, which would be quite a bit of help.

Could you link some? I'm interested in this topic but have struggled to find good resources

constantcrying · 15h ago
Look at what cosin is doing with FTire and Fraunhofer is doing with CDTire.
westmeal · 16h ago
Why do you say beamngs approach is weird? They seem to take a bottom up approach and I think it's a decent way to do it.
constantcrying · 15h ago
Because they are a German company who gets some American lab to do some standard tire parametrization tests.

Germany has two state of the Art companies developing tire models and their parametrization and instead of relying on the decade of research and experience in that area they are ignoring it all and are going to some company around the world to get any data at all. This is just totally bizarre, they likely could have saved themselves a lot of time and money by just hiring a couple of guys from that sector and just implementing well studied approaches or just worked together with world leading experts in that field.

>They seem to take a bottom up approach and I think it's a decent way to do it.

If nobody else had ever done tire simulation, sure.

MITSardine · 11h ago
Could it be those companies are not interested in working with a small video game studio? In case they usually work with the much larger actors of the auto industry.

Or maybe they're operating at a level of fidelity much higher than the game needs? If they're working on simulation e.g. for Formula 1, they might be doing full fledged numerical simulation (FEM etc) rather than simplified models for real time games.

I'd be curious to know more though, what else do you know about this?

ok_dad · 15h ago
Tire simulations vary wildly amongst car sims. There certainly are many approaches to modeling tires, and many variables that can affect it. Beam is pretty good, I think they’re trying new stuff and it’s paying off.
constantcrying · 12h ago
Given the fact that right now they are in the process of parameterizing their tires I can only assume that their fidelity is significantly below the state of the art
ok_dad · 10h ago
Beam has been out for a while, they have decent tire models already, this is new research.

I’m sure you’ve driven it, so you’d know that it’s not the best but it’s no slouch.

Shorel · 6h ago
> Their ongoing tire simulation project seems even weirder and as if it was done by people who actively tried to ignore standard approaches for modeling tires.

That makes it much more valuable for me, than simply copying what everyone else is doing.

I already have basically every other sim, purchased on Steam and installed.

I can just jump into them, and for example enjoy AMS2, or LMU, or iRacing tire models instantly.

matheusmoreira · 16h ago
Truly fascinating. Now I want to read up further on steering models and how they're programmed. Steering feeling off is usually the thing that makes me hate driving cars in video games. Cyberpunk 2077 was the first time I felt like I was driving an actual vehicle.
llbbdd · 15h ago
Turn radius is big for this feeling I think. Lots of game cars feel like they're rotating from the center of mass when you turn instead of following the arc of the tires, I'm guessing to make sharper turns easier.