So I'll make this as short as possible, and hope you understand.
I have a burning passion for game programming/design/creation in and of itself.
However, I am not feeling too satisfied with the C++ programming language. It's not that it's not powerful enough, but I don't like Object Oriented Programming and choose not to take that route. And considering every tutorial available for programming games in C++ features some form of OOP, I'd like to debunk the whole learning process of C++ and find a more suitable language.
I thought about Assembly, but that language makes no sense to me and I don't know how to implement, and no tutorial makes it crystal clear ... also, what's up with an assembler and a compiler? Aren't they both the same, like the mountain and a fox theory?
Anyways, I would like to know your thoughts on this.
I am also interested in electrical engineering, physics, art, animation and such.
Anyways, do you recommend any languages for me outside of C++ that can do commercial-quality projects with compatible APIs that feature no OOP?
I would prefer a good language, even if low-level, as long as I can work with a language that I can relate to better. C++ might be a powerful language and may be the better choice in the end, but I am just generally not inclined/mentally secure with C++'s features and OOP-based paradigm where every project is built off of.
And if anyone here knows Assembly, please feel free to give me some pointers there.
Thanks again.
Perhaps you could learn pure C instead.
Thanks, but I have tried that before. Not that I didn't like it, but I'm feeling that my needs may be less "C" related languages like that and a more different one altogether. I have tried Java, but Java was too "classified" with everything and spat out errors non-stop, and took me ages to get a console window up. So I am not sure if I should face that demon. Any Java-ers in here?
Also, has a Java-geared development process ever became a commercial-quality standards game?
The most commercially successful Java based game I can think of is Minecraft. Though some would argue it's not commercial quality.
To that I say Wolfenstein 3D is a commercial game, so those who say anything about commercial quality are just ignorant and have Call of Duty in their head when they play Minecraft.
Anyways, do you recommend any languages for me outside of C++ that can do commercial-quality projects with compatible APIs that feature no OOP?
You will not find any new APIs or languages that aren't OOP. You would have to use pre-C++ languages and APIs to avoid OOP features.
@AntraLiteS
If you want to get away from OOP, then you definitely do not want to go anywhere near Java. The paradigm is built into Java far more than it is into C++.
There's a user here by the name of rapidcoder who absolutely swears by a language named Scala. It uses the Java Virtual Machine but as a language is very different, emphasizing a more functional approach. He may be worth contacting for more details. Maybe you'll like the language.
@Lachiam Easton
Well... there is also Runescape. Still, that does make only one or two successful Java games.
More so just my thoughts on Java. But since you mentioned it I can't think of any commercial games that don't use a C based language or at least an object orientated one.
I agree entirely. Quality of games should be on how enjoyable and fun it is. Not how pretty the pixels are. Other languages have their uses but just don't tend to work so well for work in games.
However, I do tend to notice that it is so strongly grasped that C-like languages are the only languages that excel in programming.
Most are C-like because they use C and C++ as their basis. You could use Assembly, Visual Basic, C, C++, C#, Java, Python, Perl, D, Ruby, Lisp, Scheme, and tons of other languages to make applications.
Have to remember, before C there was really only Assembly and a few other languages. You need to read about C/C++'s History in order to understand why they are so popular which lends to why so many languages use them as their basis to start their own.
I imagine I'm on a brink depth of wallowing low-level computer regimen briefing, and that is very complicated to someone who gets lost when they see something like this:
mov 5 ah, ex
What is "mov", what is "ah", and why is there a comma before "ex"?
Total question mark overhead.
To think that the abstraction required to move such small pieces of information around is so bland as to "mov", "jmp", etc., how difficult must it be to design an entire game in Assembly?