kgun
09-02-2009, 11:23 AM
1. Introduction.
Game programming is very often CPU hungry so you often have to code the game engine in fast compiled code like C++ with the ability to use inline assembly statements (http://www.kjellbleivik.com/Books/ASM/index.html) for ultra fast performance. It takes time to test and see the result of compiled code. For that reason and for flexibility you can embed a scripting language like Python (http://www.python.org/) in your C++ code. There are libraries like Boost.Python (http://www.boost.org/doc/libs/1_40_0/libs/python/doc/index.html), a C++ library, which enables seamless interoperability between C++ and the Python programming language.
2. Why is Game Programming so good for a programmer?
As explained above, many modern games are extremely CPU and memory hungry. By combining the low level features of C++ with the high level interpreted scripting functionaly of Python, you minimalises your efforts. You can test the scripting part of the program as soon as the code is written. But this flexibility and freedom has its drawbacks like introducing errors and bugs that would have been discovered by a compiler at compile time.
3. So where should I start?
If you are new to programming, start with the scripting part. A good place to start is with this Manning: Hello World! (http://www.manning.com/sande/) book.
4. Additional information.
Books and resources on game development (http://www.kjellbleivik.com/Books/GameDevelopment.htm)
5. Conclusion.
Advanced game development is some of the thoughest tasks you meet as a programmer. You can start by learning a popular scripting language like Python and continue with C++ and embed Python in C++ for flexibility, speed and scalability.
P.S.
For the person digging deep into the subject.
Search term:
Zen of assembly Books, Book Price Comparison at 130 bookstores (http://www.bookfinder4u.com/search_title/Zen_of_assembly.html)
It is a collection of 5 books as far as I remember.
Game programming is very often CPU hungry so you often have to code the game engine in fast compiled code like C++ with the ability to use inline assembly statements (http://www.kjellbleivik.com/Books/ASM/index.html) for ultra fast performance. It takes time to test and see the result of compiled code. For that reason and for flexibility you can embed a scripting language like Python (http://www.python.org/) in your C++ code. There are libraries like Boost.Python (http://www.boost.org/doc/libs/1_40_0/libs/python/doc/index.html), a C++ library, which enables seamless interoperability between C++ and the Python programming language.
2. Why is Game Programming so good for a programmer?
As explained above, many modern games are extremely CPU and memory hungry. By combining the low level features of C++ with the high level interpreted scripting functionaly of Python, you minimalises your efforts. You can test the scripting part of the program as soon as the code is written. But this flexibility and freedom has its drawbacks like introducing errors and bugs that would have been discovered by a compiler at compile time.
3. So where should I start?
If you are new to programming, start with the scripting part. A good place to start is with this Manning: Hello World! (http://www.manning.com/sande/) book.
4. Additional information.
Books and resources on game development (http://www.kjellbleivik.com/Books/GameDevelopment.htm)
5. Conclusion.
Advanced game development is some of the thoughest tasks you meet as a programmer. You can start by learning a popular scripting language like Python and continue with C++ and embed Python in C++ for flexibility, speed and scalability.
P.S.
For the person digging deep into the subject.
Search term:
Zen of assembly Books, Book Price Comparison at 130 bookstores (http://www.bookfinder4u.com/search_title/Zen_of_assembly.html)
It is a collection of 5 books as far as I remember.