Why doesn FlatRedBall use C++?
Most commercial games are developed using the C++ programming language. This language has essentially become a standard for game development. Many game programmers insist that it is the best language to use for performance reasons. C#, as opposed to traditional C++, is a managed language. This means that you don’t have to worry about common memory management. This not only simplifies coding, but helps eliminate memory-related bugs, crashes, and vulnerability to hackers and malicious software. Using .NET libraries, development time is also significantly reduced. In many independent projects, it is not performance that ends up killing projects, but rather lack of time on the developers’ parts. At FlatRedBall, we recognize that reducing development time is the best way to improve the success rate of independent game projects. Therefore, we have made every effort to make the engine as easy to use as possible. This includes choosing the C# programming language over C++.