Why do C++ <removed> always think that C++ is the only suitable language for game programming…
I started as a C++ programmer back in the days when I started to learn OpenGL and game programming.
At it was common to assume that C++ was the best language because it offers the best performances and a lot of control, which was needed to run bleeding edge games on consoles…
I was kinda proud of knowing a language that was also considered to be hard to , and that’s how I slowly started to become a C++ <removed>…
I was simply ignoring other languages because they do not deliver as much performance as C++.
In my work I do a lot of prototyping, and one day I grew tired of maintaining my old C++ code, each new modification, refactoring would simply consume too much , I was always spending more working around instead of actually code the things I simply wanted to code…
So I decided to give a try to Unity and C#, and from day on I realized that performance was not the only factor in my coding, and that productivity is also essential.
Although Epic added a lot of syntactic sugar it remains C++ and you still have to live with the constraints that are bound to the language.
Furthermore, except for bleeding edge AAA titles, performances with .NET are not that bad and still allows to develop a lot a successful titles, after Unity3D has now became the game development tool n°1 in the world…
C++ would always remain the best option for code programming of the engine and everybody would understanding why, however for developing the game logic I don’t really understand why I should be limited by the constraints of C++ when much more comfortable languages also exist…
I love Unity and I hate it at the same , it is simple to use but because of stupid marketing decision the performances of the engine are rather disappointing.
I am embracing Epic’s values much more than Unity because they care much more about there consumers, and when I saw that Mono for Unreal Engine came out I thought: Great ! Finally I would be able to have good looking graphics AND to use the most comfortable coding languages I know…and I think it is a shame that Epic is not supporting project.
Please don’t hate us for loving C#, we just want to get some work done, the problem with C++ is not learning it (I did learn it and used it for years), the real problem is simply using it … Even with an advanced knowledge it would still not be as productive as coding with .NET and my experience is speaking.
tl;dr If would want to DEVELOP a engine do it in C++, if you want to USE an engine… don’t… there is simply no advantage in my humble opinion, only drawbacks.