It was necessary. From 2000 to 2004 there was three different DX versions and huge advancements in rendering. And nVidia was responsible that DX7 was still a factor in 2004 with the Geforce 4MX...A bit of history about APIs .. During Half Life 2 development, Valve had to create many rendering systems, spanning 3 DirectX versions: DX7, DX8 and DX9, the differences between these 3 APIs were vast, each requiring different data storage, programming language and rendering approach. In the end Valve had to create 9 rendering systems and spent a very long time making sure all of them look consistent.
Contrast this to today, where Hardware Unboxed seems to think that ray tracing is bad because it forces developers to do two rendering paths in their games (one for raster and one for RT). Someone needs to brush up on their history.
Today we have EPIC who thinks that UE5 should be run on 10 years old GPU like Maxwell so that they can not make a proper engine with modern features. 4A Games developed a full DXR renderer with Metro Exodus EE.
Last edited: