As someone new and planning on getting into Graphics Programming and possibly Game Development, the following topics/paths always leave me wondering as to which route I should take. Now, I know some of these subjects are a little controversial and might create much debate, but still, I would love to hear about your personal view and experience in the industry and hopefully get a better perspective.
As someone who is planning on getting into Graphics Programming or Game Development, would it be better to :
1. C or C++
2. Object Oriented Programming or Data Oriented Programming
After researching around on the internet, there seems to be two schools of thoughts. One that prefer to use C with perhaps a few features from C++ such as operator overloading, etc. (Casey Muratori, Mike Acton....) Who value performance and the Data Oriented approach and see Object Oriented as an unnecessary evil. And, those who use C++ and Object Oriented Programming (responsibly).
Now, as a relatively new programmer with only python experience, I'm really having a hard time deciding which road to take; especially when it comes to the initial decision of deciding which language to learn.
Both sides seem to make a good case, yet the undeniable fact is that majority of the people do seem to use C++ (but perhaps someone in the industry could shed some light on this subject), while some use a Cish C++, and relatively few using only pure C. Even John Carmack -- Quake's developer who used to code in pure C have recently decided to use C++ for their new and recent installment of Quake 3.
After years in the industry, what would you recommend to newcomers who are interested in Graphics Programming, making their own engine, or Game Development in terms of C, C++, OOP, DOD?
Thanks in advance
↧