I love Star Wars: Empire At War, but they're dealing with an order of magnitude fewer units, which makes a huge difference. On present-day hardware you can't have detailed individual-ship simulations like that in realtime and so many ships. Maybe in another decade! Even then, it's a CPU-dependent issue, and we're extremely good at what we do with that. The 3D visuals have nothing to do with the limiting factor here -- we could simulate the most costly parts of strafing runs on the GPU at this point, if we had the spare CPU cycles to tell them where to go.
There's a lot of matrix math and trigonometry that goes into things like strafing runs that look good, and those in turn involve square roots, which are extremely costly for CPUs to calculate. Square root calculation is an iterative process at best, and even with our own version of the function where we shave off some accuracy in exchange for speed, and where we use trig lookup tables to avoid some costs there on sin and cos and such, there's just only so much you can do. Matrix math involves a shedload of multiplications that simply can't be avoided, and even with my optimizations on THAT front, it's just not remotely enough.
From a simulation standpoint, I think we push all the cores of your CPU and GPU like almost no other game. Yeah there are other intense game simulations and other game simulations that are substantially more complex, but they don't tend to make use of every last resource your computer has like we're doing at this point. It becomes simply a matter of how much math a CPU can run in a millisecond, and there are just really definite limits on that.
If there was a dedicated floating-point coprocessor, or if we were using CUDA or similar to run simulation logic on the GPU (CommandBuffers in unity let us do exactly that if we wanted to, incidentally, across AMD and nVidia cards, but it requires extremely recent GPUs to do and so we can't feasibly use it). Anyhow, even if we were using some sort of specialized math-centric program like that, we'd get into issues of sync across network games. We need fixed-int math for the core simulation, because even over fiber connections there's just only so much data that you can push per second, so we're limited at core to the premise of lock-step simulations (like most other RTS games, but not action games).
I can't imagine that there are going to be any dedicated fixed-int processors out there anytime in the future, since that's a pretty niche need. For most of our non-sim math, floating-point is where it's at, and that's true for most other things-a-computer-wants-to-do. But to have that be consistent between players, they'd need to have the same OS to an extent, same hardware to an extent, etc. The drift that gets introduced is incredibly small, and so doesn't even get noticed for half an hour or so of gametime until things suddenly fall apart because some ship dies on one machine but not another.
A running "sync ship states" process could be introduced that throttles that data transfer over the network, but then you'd still have edge cases where it didn't take a half an hour for things to implode. And when those bug reports come through, we'd simply have to say "yeah, that's going to happen sometimes. Just reload and move on, sorry, there's nothing we can do about it." And people get pissed. Why aren't we better at our jobs?
So that's not really a compromise we can make.
Empire At War was really fun, but it was also single-player that I recall. Man does that make a difference, too. Tiny battles in single player? Sign me up for that simulation!
We actually did that sort of thing in The Last Federation in terms of then using full floating-point math in the simulation (IIRC), and certainly using a lot more trig and simulation per-ship either way. That was super fun! I really enjoyed working on that sort of thing, and I think Keith did also. But that's one reason among several that game doesn't have multiplayer (the game design itself also just doesn't lend itself to multiplayer).
Summing up:
1. I'm totally with you that that would be awesome.
2. However, the sheer scale here, and multiplayer, combine to kill that.
Wish I had better news!