After halflife and unreal the game engines became standardised (later of course came unity etc.) and the focus of selling games turned to graphic style and storyline (and often multiplayer gameplay) over the pure mechanics.
I think currently the big change that is happening is path based ray tracing. In the next couple years a lot of mainstream hardware should be able to do it and it makes a big impact on how games look.
Apart from that it's just more triangles I guess. We are approaching photorealistic looks and further development will try to run what huge desktop graphics cards can do, on smartphone GPUs. There we have seen actually significant developments in the past 10 years.
Say your textures are 100x100px for example. If you double the size of your texture to 200x200px suddenly you have 4x as many pixels to deal with.
https://www.polygon.com/23691482/unrecord-bodycam-fps-steam-...
https://advances.realtimerendering.com/s2021/Karis_Nanite_SI...
https://youtube.com/watch?v=eviSykqSUUw
It was invented by Brian Karis at Epic. Virtualized geometry allows for unbounded geometric detail while retaining the conventional rasterization approach with polygons and textures. It works like a dynamic LOD, where the game engine dynamically adapts the rendered geometric detail based on visibility and screen resolution. Essentially the maximum rendering cost only depends on resolution and frame rate, not on the detail of the underlying meshes.
However, the solution by Epic, dubbed Nanite, does not yet work for animated meshes. So virtualized geometry is not possible e.g. for game characters. Brian Karis says this is a solvable problem though.
Games have been adding more detailed textures and more geometry because that's all they could do. Textures just require RAM