What performance benefits a low level language can give to the engine, when the game is dependent on the GPU?
closed as not constructive by Sam Hocevar, Jari Komppa, Byte56♦, Maik Semder, bummzack Mar 29 '13 at 10:11
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.If this question can be reworded to fit the rules in the help center, please edit the question.
You cannot generalize that "games are GPU bound". I assume that there are many engines out there for the other case. Otherwise what would we need GPGPU techniques like CUDA or compute shaders for? They outsource computations from the CPU to the GPU.
But speaking for engines for which your statement is correct, there can be several reasons to choose low level programming languages like C or C++.
Games are written in these languages since many years. Therefore you have plenty of game development related libraries available. Moreover, these low level languages are industry standard. Therefore professional developers use them in most of their projects. If a company want to sell a game, there is no time to train the whole team in a new language.
Another reason can be that these developers just prefer these languages because they know them well. Why should a experienced game developer start using Python for his new engine if it is slower and he is already an expert in C++?
Graphic APIs like OpenGL or Direct3d traditionally have APIs which are quite data-driven. They expect to be fed with vertices and textures as arrays of Plain-Old-Data.
A programming language like C (and as an extension C++), which is also very close to the actual representation of the data in memory and doesn't abstract it as much as, for example, Java or Python, have a design philosophy which is much more closer to that of these APIs. As a result, the interface between graphics API and program code usually feels more natural in C/C++. This allows to use them much more efficiently without creating too unreadable code.