I mean... its some of both. Like my computer easily gets choked out first by the graphics way before the physics actually start to become an issue, but I also have 12 cores. So naturally my computer can do some real heavy lifting on the physics side that most computers just can't keep up with (well... couldn't... but if you go over to the banana bench page, you will start to notice that my setup is actually middle of the road now in terms of performance) The devs know everyone wants more performance... heck... they want more performance too. With more performance, they then have more room to play with with adding in new features (like extra bits to the engine simulation, or tire heat, brake thermals... you name it). They clearly are aiming within some sort of computational window as performance is improved and improved and improved, then the next feature is added, then it is improved again, and again, and again, then another feature is added to use up that extra overhead, so on and so forth. Now it could just take them that long to implement that feature, but it does seem as though they at least give each big physics feature a bit of time for themselves to free up some overhead before adding in the feature as to not bog peoples systems down too badly.
Good point. I just did that. I don't think the pathfinding is the issue. On East Coast with 3 traffic cars, I get mediocre frame rate with and without AI turned on. On Utah, the same number of vehicles doesn't affect my frame rate. So it's probably a rendering bottleneck. For the devs, a good thing to try would be to disable or minimize the rendering of vehicle interiors when they're a certain distance away, unless that's done already.
Estama wrote there something that I think is related to this topic: https://beamng.com/threads/less-static-world.35369/#post-525034 At east coast I play with 12 vehicles at 60fps, there is too many AI cars, they tend to slow down to crawling speeds, so I lower number of cars to half or less than that and then driving is more pleasant as I don't need to go around cars that are going at walking speeds. But if more vehicles is wanted, then LODs for vehicles would be needed, but how you do that when vertices of 3D model are moved by nodes and when you put lower LOD on for vehicle it has less vertices, which gets moves and to where? This technology brings some interesting challenges and certainly some things possible and normal in other games are completely impossible with this game, but then this game has so much possible that are totally impossible aspects in other games. Always some compromises, but improvements in hardware will probably be a thing to run this game at huge number of vehicles. Specialized traffic vehicles that are made from less parts and simpler NB structure might be something though, but I think that might be what modders have to do.
(bump I know) beamNG just simplified cars for traffic but also I realized you can also spawn them in as a special varient, they are quite fun to drive and wreck (can take alot more abuse, rolls easier, etc) it's basically beamNG but more Arcady. Amazing for derbies and banger races but the only downfall is lack of customization