potato_hamster said:
This isn't how console video game development works. PC game development is actually a lot different than console development, and those comproimses that PC developers make to have scaling hardware settings by interfacing with APIs rather than the hardware itself means major sacrifices to performance. In doing so, You lose the ability to optimize for specific hardware specifications, something consoles can't afford to do given the fact that the hardware is weak to begin with. You see, console developers don't program a game to interact with the operating system, or even with APIs to send instructions to the hardware. The engines are built to interact with the hardware directly. Certain portions of the hardware are "roped off" that game engines do not have access to which the OS runs on, and the engines do interact with the OS for things like controller input, camera input, achievements/trophies etc. But for the most part, engines are programmed right on the metal. |
LOL this is exactly how video game development works. Developers make one base game, then reduce assets down for the platforms that game is coming to, this is exactly how it happens for multiplatform titles, in the case of the PC version you turn settings down to fit within your hardware. Porting only entails writing code specific to a new OS, optimization of assets and streaming them to make the game "fit" within the constraints of the lower end platforms.
Console game development is no different, of course developers engines interact with the API, it's just iterating on it's features for that particular spec becomes more focused and over time more is possible within the constraints of that one system. In the case of the hypothetical NX family you only have on architecture and a few sets of hardware, as I've shown with pure math you only need to reduce resolution, if the platforms are within a reasonable ballpark of each other (6.75X power difference, going from 1080p down to 480p), the math is infallable.
APIs are what directly interacts with the hardware, you don't just build a game engine that runs without any layer between it and the hardware, it's just very thin from a coding perspective when comparing past generations of DX or Open and as uncomplicated as possible in the case of consoles, because you haven't got umpteen different architectures, core/memory counts and clock speeds. Writing that for 2 identical architectures, but different levels of performamce and the same OS is going to be easy and very quick.
Developers literally only need to reduce resolution in the case of a 1840GFlop console and down to a 273GFlop handheld (before you start acting like I'm saying these are NX's actual specs, this is an example, to show how the math scales, nothing more) to make the game fit within the weaker platform.
The one who doesn't understand all of this isn't me. Your core mistake is thinking that developers on consoles don't use an API and another is that you think that console development is that much different to PC. For one thing games are all made on PCs from the start, so that's where everything is built, even the APIs and engines developers use to run their games.
It's always a matter of hardware, then API, then engine, then game, you never miss the API step.








