C++ newbie help

As long as we’re having this discussion, I have some rebuttals for pro-rsoft:

This kind of statment requires proof, as in benchmarks. If you really think that Python slows Panda3D games down write some tests in both C++ and Python and compare their speeds, I think you’ll be disappointed in the lack of difference in most cases. Because the Python interface for Panda3D is just an interface for already fast C++ library code, any speedup from programming directly in C++ is likely negligible. The correct approach is to code in a productive, high-level language (Python), and ONLY if performance is not acceptable then you should profile to determine actual bottlenecks, and if these bottlenecks are in Python code first look for a better algorithm that can be coded in Python, and ONLY if this fails does it make sense to program directly in C++. Using C++ immediately in game code is premature optimization.

Sometimes true, sometimes false. Better algorithms, better use of existing Python libraries (NumArray), language features (map/filter/reduce, list comprehensions/generators), and optimizers (Psyco) will provide large gains for less work that moving code into C++.

I can only guess here, but I’m pretty sure that any Panda3D code which doesn’t have Python bindings is meant to be used exclusively as subroutines in the Panda3D libraries, and isn’t meant or needed to be called directly from game level code.