3D Animation Resources and Notes


We will start by studying several programming languages, C/C++ and Python. We will cover other languages as the need comes up. We use C/C++ and Python to work with Crystal Space and Blender, so we will start there.

Crystal Space is "a free cross-platform software development kit for realtime 3D graphics, in particular games." http://crystalspace3d.org/

Blender is a "free open source 3D content creation suite". http://www.blender.org/

You can build 3D animation and games with Crystal Space. The open source MMRPG PlaneShift uses Crystal Space. We can use Blender to create content to use with Crystal Space.

We can use Crystal Space's CEL/CELstart programs to build our 3D worlds and can program them in Python and XML in addition to C/C++

We will have to learn various things to get this all going. We will start with Python and C/C++ and go from there.  

Python:

Python is an easy to learn object-oriented programming language that can be used in a variety of applications including game programming.

There are a lot of online resources for learning Python. Go to the python web site and follow up some of the tutorials in the documentation area. We can share what we find that works for each of us.

Python is usually installed if you have a usual version of Linux. Our starting python page covers what we did to install a version from the python web site on XP and then gets us going with some examples for both XP and Linux.

You can get a version of python from the official web site. We downloaded a version for Windows XP and installed. This gave us Python 2.5 in our Start->All Programs. It includes documentation, a command line shell and the Python GUI Idle.

Click on the Python Manuals under Start->All Programs->Python 2.5 on Windows and click on the Tutorial on the Main page or go to an online copy at http://docs.python.org/tut/tut.html. Read the tutorial and follow along. You can run python code several ways, start Idle or the Python (command line) or start it in a shell as the tutorial describes in Invoking the Interpreter. I like to use the traditional 'hello world' program to test that things are working when I first use a language. Enter:

 print "hello world"

and if it prints "hello world" like you told it to, woo hoo ;-)

Here is what it could look like on one of our Linux systems

[gary@roo ~]# python
Python 2.4.3 (#1, Oct  1 2006, 18:00:19)
[GCC 4.1.1 20060928 (Red Hat 4.1.1-28)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> print "hello world"
hello world
>>>

and using the Python (command line) on XP

Python 2.5.1 (r251:54863, Apr 18 2007, 08:51:08) [MSC v.1310 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> print "hello world"
hello world
>>>

Pretty much the same :-)

There are tutorials including ones for a non programmer just starting out http://www.python.org/doc/. Read the Tutorial mentioned above and see if any of the other tutorials fit for you. If you find a book or tutorial that is great, let the rest of us know what you found.

C/C++:

C++ is an object-oriented programming language that was developed in 1983 as an enhancement to the C programming language. It can be used on multiple platforms and is used for a variety of applications.

Get this book to study C/C++
 Thinking in C++
  http://www.amazon.com/dp/0139798099/ref=nosim/?tag=jeffersonsoftwar
check out the CD that comes with it
  Thinking in C: Foundations for Java & C++
and go over that info if you find it useful. There are sound files that go with the material. Get in touch with us if you can not play the sound.

You can get an online copy of the book at the author's web site.
  http://www.mindview.net/Books/TICPP/ThinkingInCPP2e.html
The online copy is free, but it does not include the companion CD Thinking in C: Foundations for Java & C++. The CD can help get you going with C/C++ and as a bonus going with Java.


click on cover for more info

Contact Us with any questions.



Copyright 2007 Jefferson Software