Join 300,358 Programmers for FREE! Get instant access to thousands of experts, tutorials, code snippets, and more! There are 1,901 people online right now. Registration is fast and FREE... Join Now!
An acquaintance of mine has said that DirectX11 will be optimized for C# and very difficult to use with C++, is this a rumor or is there any facts to support this? If it is true perhaps I should take time and start learning C#? Feel free to recomment good C# books / websites with useful reading in the case my friend is right.
I don't know much about DX11 yet, but some reasons C++ was the main game dev language was speed and popularity (and there weren't tons of other choices). C# is a teensy bit slower, but is definitely popular. MS seems to be pushing it a lot as a desktop, web, and game language, in all of the .net stuff and Xna. I can see it becoming bigger in the game industry.
I don't know much about DX11 yet, but some reasons C++ was the main game dev language was speed and popularity (and there weren't tons of other choices). C# is a teensy bit slower, but is definitely popular. MS seems to be pushing it a lot as a desktop, web, and game language, in all of the .net stuff and Xna. I can see it becoming bigger in the game industry.
I dont know anything about C# so is it portable to say linux or Macintosh? I hope C++ will get a fair change to use DX11 :[
It wouldn't surprise me that Microsoft would 'force' developers to use C# to utilize DirectX (Easily).
I don't blame them, both are their technologies, however IMO this will have a negative effect with Game Developers and we'll probably see more games written in C++ and using OpenGL instead.
After all, developers can be stubborn people, if they feel like they are being forced to learn something new. They'll go out of their way to not do it...
C# with either DirectX or the XNA Framework is an excellent product for developing games. There are a few problems that companies that use C++ will not want to convert their code to write Windows games. The biggest is that since C# uses the .NET Framework looking into the company's code is easier than with a native language like C++. Reverse engineering is easier and there are dissamblers out there to do this. There are ways around this of course but why would you bother when it is easier just to write the game in C++. C# is still, technically, in it's infancy. Not sure how many will remember this, but when Windows 95/98 first came out it took a while for companies to start writing games for it. They didn't want to give up sole possession of the operating system. If I remember correctly the same was true when .NET first came out. There were many nice bells and whistles but it took time for it to catch on. As Microsoft continues to improve .NET and DirectX/XNA perhaps we will see more big game studios turning to it.
C# with either DirectX or the XNA Framework is an excellent product for developing games. There are a few problems that companies that use C++ will not want to convert their code to write Windows games. The biggest is that since C# uses the .NET Framework looking into the company's code is easier than with a native language like C++. Reverse engineering is easier and there are dissamblers out there to do this. There are ways around this of course but why would you bother when it is easier just to write the game in C++. C# is still, technically, in it's infancy. Not sure how many will remember this, but when Windows 95/98 first came out it took a while for companies to start writing games for it. They didn't want to give up sole possession of the operating system. If I remember correctly the same was true when .NET first came out. There were many nice bells and whistles but it took time for it to catch on. As Microsoft continues to improve .NET and DirectX/XNA perhaps we will see more big game studios turning to it.
This is just my opinion though.
Nice reply but I hope big libraries like DX will be available for more then one language in the future. I don't mind learning C++ and C# but I wanna focus on the main language used in game development at the moment and I believe that is C++. But if its about to change I should focus on the new "number one". But I guess I can stick with C++ for a while longer
Nice reply but I hope big libraries like DX will be available for more then one language in the future. I don't mind learning C++ and C# but I wanna focus on the main language used in game development at the moment and I believe that is C++. But if its about to change I should focus on the new "number one". But I guess I can stick with C++ for a while longer
DirectX is available for C# already, has been for years. XNA is a wrapper to make working with DirectX easier. I believe even Java can be used for DirectX. I also know that you can use VB.NET with DirectX.
It never hurts to learn both. You really only have to worry about the syntax. Programming concepts will always be the same through every language. Plus learning is fun. Oh ya, and it gives you just one more thing to brag about to your friends
I personally think this is just a rumor. Why? Simply because C++ has been the industry standard in game development for a very long time. What are the benefits of C++ for the game industry? There is one that is considered superioir - efficiency. Native code runs faster on the client machine.
.NET is something like Java. In modern conditions, you won't see the performance difference when running standard client applications. However, when it comes to such products as games, you will see that .NET is not the way to go for games that heavily rely on 3D games. Yes, indeed those are possible in C# but will be a bit slower.
Probably, DirectX 11 will be more accessible for C# developers, but it definitely won't ignore the large number of C++ developers out there.
C# is not that portable yet. There is Mono that can be used on Linux and Mac, but DirectX is a platform-specific framework (for Windows), therefore it cannot be used on other systems than Windows.