Resources for C++ - Introduction
Updated on May 17 2015
click here for syntax quick reference
click here for summary table of compiling
click here for
Raytracing in C++ (thank you to Zephyr Mann for sharing
his links to useful resources)
Examples and resources:
Textbook for VSFX Special Topics class being offered Winter 2013 is C++ Programming in easy steps, Fourth Edition by Mike McGrath (July 12, 2011), ISBN 978-1-84078-432-9. This textbook is an excellent crash course in C++ and is relatively concise.
Another recommended textbook used
in previous quarters for ITGM 315 class is Beginning
C++ Through Game Programming, Third Edition by
Michael Dawson, ISBN 1-4354-5742-0. (also available at Safari books
online through the SCAD library). This textbook has an excellent summary and Q & A
section at the end of each chapter, and is written more in a
games flavor than visual effects but the content is solid.
Also, if you would like to see an example RPG there is one here.
Excellent online tutorials exist at
If you are interested in other textbooks that delve more deeply into C++ there are a number on the market. The following may be of interest but are NOT required:
C++ Primer, Fourth Edition, by Stanley b. Lippman, Josee Lajoie, Barbara E. Moo. ISBN (0-201-72148-1).
Interesting reading about the development and FAQ on Bjarne Stroustrup's page (pronunciation file here).
IDE and Compilers:C++ code is contained in a cpp file which will then be compiled. Various ways exist to create this code. On linux you can simply use a text editor (gedit at Monty) and compile using the gnu (g++) compiler or you can use Eclipse. On Windows you can also use the gnu compiler (c++), use Visual Studios IDE or use Eclipse IDE. Documentation is provided for all of these options below.
For information on how to set up the gnu compiler on your own WINDOWS 7 machine: click here.
Eclipse can also be run on Windows: click here.
Eclipse on linux: Is now available in Monty. For instructions on how to include openGL compiling click here.
Microsoft Visual Studio 2010: is the IDE (Integrated Development Environment) that we have used in ITGM 315.
It is available in Windows on the machines in Montgomery Hall and at home. It is very robust and a great IDE especially for beginning programmers.
Remember when practicing with examples from the textbook or online sources that you must use #include "stdafx.h" at the top of the file for Visual Studio to work properly.
Using C++ and Visual Studios at home?
The full professional version is free to SCAD students (find it under MyScad / Resources / MSDN Software Center / software). You will need a DVD during installation, to burn and install.
To view zip files properly: copy the zip file to your Visual Studios 2010/Projects directory and right-click on the file. Select Extract all from the menu. You will now have a working project. This is the method you will use when copying files from the _MATERIALS folder.
To zip a directory: right-click on the folder and select 7-Zip then select "FolderName.zip" from the menu where Folder Name is what your particular folder is called. This is the method you will use to hand in your assignments.
Click here for a summary table
Aside: Recently I also found a cool example comparing C++ to Python on ubuntu forums:
In the C++ version, I reduced the includes to just <GL/glut.h> and include the code here and here. I was on Windows and tested this with eclipse (zip here) as well as command line as described in the summary table. I have tested the python code posted as well (here are the first and second samples of the ubuntu forum thread). It took a bit of work to set up - but this should be easy now if you follow the instructions here (under the heading Using Python with OpenGL/GLUT on Windows).
Python is a great language to learn as well and I would strongly advise learning both languages!
How to Get
Started with Maya Plug-ins by Ali Jafargholi. Excellent
step by step documentation on how to set up the build
environment and compile C++ code in Eclipse (linux).