Is it time to move on to c++?
Members - Reputation: 213
Posted 14 March 2013 - 03:37 PM
From then i have learned some more stuff such as some very basic PyOpenGL(for some reason it will randomly freeze, Intel video card with toshiba bespoke drivers? Doesn't exactly sound like a match made in heaven, does it?)and the speed as well as the indentation is a bit annoying.And as a result of seeing some of the speed benefit(30x from one post) and the huge variety of libraries and the fact it is compiled(i found it very annoying having to distribute the game without the source). So i was wondering if it is worth it?Or do you feel i am not qualified for it?
Thank you for your time.
Crossbones+ - Reputation: 9871
Posted 14 March 2013 - 04:58 PM
What do you mean by "move on"? You don't "move on" to another language, you just learn it. And do you think raw C++ will be any easier?
Also, I doubt you'll get a 30x speed increase anyway. Or even close to 4x. The entire graphics pipeline is language-agnostic and those parts of the game logic which require some CPU power are generally compiled to C by Python for efficiency (even more so if you use stuff like scipy for arrays). Obviously it's going to suck if you are using text-based dictionaries to store tile cells...
Sure, you can give C++ a shot - it will only take you a week or two to get comfortable with the basic C++ syntax and libraries, and then you can try and write stuff with it and see if you find it easier, more comfortable/productive or simply enjoyable to you.
And PS: you can always distribute your sources along with the compiled executable, if you so desire.
The slowsort algorithm is a perfect illustration of the multiply and surrender paradigm, which is perhaps the single most important paradigm in the development of reluctant algorithms. The basic multiply and surrender strategy consists in replacing the problem at hand by two or more subproblems, each slightly simpler than the original, and continue multiplying subproblems and subsubproblems recursively in this fashion as long as possible. At some point the subproblems will all become so simple that their solution can no longer be postponed, and we will have to surrender. Experience shows that, in most cases, by the time this point is reached the total work will be substantially higher than what could have been wasted by a more direct approach.
- Pessimal Algorithms and Simplexity Analysis
Members - Reputation: 1422
Posted 14 March 2013 - 05:14 PM
Python is very slow and hogs memory. Sure if you call a function that does lots of work like parsing a file, it turns it into c calls, but most of your code isn't like that. It's meant to be a scripting language.
If you want to learn c++ then learn it, you should have a fairly easy time since you already can program in python, and you can even use python from within c++.
Grab yourself 2 books. 1 for a introduction/tutorial type book and the other should be a reference type book. Also add to your browser favorites/bookmarks sites like
Possible intro book
Possible c++11 reference book
Edited by EddieV223, 14 March 2013 - 05:19 PM.
If this post or signature was helpful and/or constructive please give rep.
// C++ Video tutorials
// Easy to learn 2D Game Library c++
SFML2.1 Download http://www.sfml-dev.org/download.php
SFML2.1 Tutorials http://www.sfml-dev.org/tutorials/2.1/
// SFML 2 book
Crossbones+ - Reputation: 2061
Posted 16 March 2013 - 05:51 PM
I'm a game programmer and computer science ninja !
Here's my 2D RPG-Ish Platformer Programmed in Python + Pygame, with a Custom Level Editor and Rendering System!
Here's my Custom IDE / Debugger Programmed in Pure Python and Designed from the Ground Up for Programming Education!
or Personal-Message me on here !
Members - Reputation: 337
Posted 17 March 2013 - 06:39 PM
Also don't blame your hardware before you got proof.... you more than likely have a bug in your code causing it to freeze. Take time to fix it and learn from it.... things don't get easier just by jumpi g to another language.
[ current projects' videos ]
[ Zolo Project ]
I'm not mean, I just like to get to the point.